OVH Cloud OVH Cloud

un appercu de la puissance d'un sgbdr mv

91 réponses
Avatar
helios
voici un test sur un duron700 (une machine la plus faible que j'ai
trouvé avec HD déplorable 128mo ram .....) de openqm

GLOBAL FILE STATISTICS 11:55:17

....System .....Total .......... ...Average
.....Total ..this run ...Per sec ...per sec
Period 00:02:37 00:02:28
Opens 92 86 0 0.6
Reads 535310 535289 0 3616.8
Writes 2 1 0 0.0
Deletes 4 2 0 0.0
Clears 0 0 0 0.0
Selects 1 1 0 0.0
Splits 0 0 0 0.0
Merges 0 0 0 0.0
AK Reads 0 0 0 0.0
AK Writes 0 0 0 0.0
AK Deletes 0 0 0 0.0

Press any key to quit

la requête lancé pour le test contient la gestion de 90 items et
l'équivalent de 58 jointures en SQL le tout sur 5 fichiers multivalué
(en SQL il aurait fallu 63 tables)


Dr Thierry HOLZ
helios services
180 rue de la croix du chene
60250 HEILLES
www.openqm.com02.net
www.pick.com02.net

10 réponses

Avatar
Gilles TOURREAU

Et quel serait alors les tables/rubriques dans SGBDR classique ?



pour faire simple et court pratiquement tout les champs multivalué (et ils le
sont presque tous) seraient une table avec une jointure dans un sgbr
classique

exemple :
DATE.ACTE A 1 D2- DATE.ACTE 9R

car il peut y avoir plusieurs actes et plusieurs dates pour une parcelle

NOM.NOTAIRE A 3 NOM.NOTAIRE

car plusieurs notaire peuvent intervenir sur un même acte



Qu'appelez vous par "une table avec une jointure" ?

Pour ce genre d'implémentation j'aurais fait avec un SGBDR classique :

Une table
NOTAIRE :
- IdNot
- Nom
PARCELLE :
- IdParcelle
- Libellé
ACTE :
- IdActe
- Date
PARCELLE_ACTE_NOT
- IdParcelle
- IdActe
- IdNotaire

Et le tour est joué ! pas besoin de 58 jointures...

Cordialement

--
Gilles TOURREAU
Responsable Informatique


Société P.O.S
Spécialiste en motoculture depuis + de 30 ans !
http://www.pos.fr
Avatar
helios
Gilles TOURREAU a écrit :

Et quel serait alors les tables/rubriques dans SGBDR classique ?



pour faire simple et court pratiquement tout les champs multivalué (et
ils le sont presque tous) seraient une table avec une jointure dans un
sgbr classique

exemple :
DATE.ACTE A 1 D2- DATE.ACTE 9R

car il peut y avoir plusieurs actes et plusieurs dates pour une parcelle

NOM.NOTAIRE A 3 NOM.NOTAIRE

car plusieurs notaire peuvent intervenir sur un même acte



Qu'appelez vous par "une table avec une jointure" ?

Pour ce genre d'implémentation j'aurais fait avec un SGBDR classique :

Une table
NOTAIRE :
- IdNot
- Nom
PARCELLE :
- IdParcelle
- Libellé
ACTE :
- IdActe
- Date
PARCELLE_ACTE_NOT
- IdParcelle
- IdActe
- IdNotaire

Et le tour est joué ! pas besoin de 58 jointures...

Cordialement



la tu as seulement sortie 2 champs alors que tu en as 90 a sortir donc
58 multivalué (chaque champs multivalué nécessite en SQL une table et
donc une jointures vers cette table)

Dr Thierry HOLZ
helios services
180 rue de la croix du chene
60250 HEILLES
www.openqm.com02.net
www.pick.com02.net
Avatar
Gilles TOURREAU
Le Fri, 26 Jan 2007 21:14:58 +0100, helios a écrit:




la tu as seulement sortie 2 champs alors que tu en as 90 a sortir donc
58 multivalué (chaque champs multivalué nécessite en SQL une table et
donc une jointures vers cette table)

Dr Thierry HOLZ
helios services
180 rue de la croix du chene
60250 HEILLES
www.openqm.com02.net
www.pick.com02.net




OK, juste par curiosité qu'est ce qu'un champ multivalué ?

--
Gilles TOURREAU
Responsable Informatique


Société P.O.S
Spécialiste en motoculture depuis + de 30 ans !
http://www.pos.fr
Avatar
|-| /-\\ |_ \(\)7 [°¿°]
Bonsoir !


est quoi une jointure ?







Si j'ai bien suivi :
1) une jointure héliotropique est à la jointure SQL la même chose que la
bravitude est au vocabulaire politique....
ou bien
2) une jointure, c'est la façon de fumer un joint, le c.. entre deux
tables données.


@-salutations

Michel Claveau
Avatar
François Girault
helios a écrit :
François Girault a écrit :
Si on vous demande une définition, ce n'est pas par ignorance mais pour
se mettre d'accord sur le sujet et vous répondre avec consistance, car
vous avez vos propres définitions à tout.

Exactement comme je vous l'avais demandé avec vos processus intégrés
spécifiques externes à couche propre d'accès direct aux données.




je n'ai pas mes propres définitions mais d'appels :
un chat un chat



j'ai mieux : "Le chat est un mammifère carnivore de la famille des félidés."

un processus un processus



cf plus loin

une jointure une jointure



Ah dans ce cas vous pouvez la définir, non ?


après si tu ne connais pas le sens de processus c'est pas de ma faute



Que si. Vous, par contre ... "intégré, externe, spécifique, sale couche,
accès direct" n'existent dans aucune littérature de système
d'exploitation. C'est de votre faute car vous n'avez jamais donné un
lien pour démontrer les accès directs sans sales couches de vos
processus intégrés.

Je peux vous montrer ce qu'est un processus unix :

http://fr.wikipedia.org/wiki/UNIX#Processus

http://www.admin-sys.com/base/index.php?file=chap7.htm

Et quand un processus (un script php par exemple) veut communiquer une
requête au sgbd (un postgresql) et recevoir un résultat, il utilise un
mécanisme IPC. Comme les autres, et comme peut-être les processus coyote
et openqm auquels vous garantissez un "accès direct sans sale couche".

si tu confonds SGBD et DOS ce n'est pas ma faute



DOS ? je n'en ai jamais parlé. Vous confondez DOS et UNIX. C'est pas ma
faute, j'ai mis des liens pourtant.

si tu confonds couches DOS et couches applicatives ce n'est pas ma faute



Maintenant on est fixé : un OS pour vous, c'est DOS. On comprend mieux
votre inculture du multiprocessus et parfaitement votre ignorance des IPC.

Vous confondez persistance et présentation.

--
FG
Avatar
helios
Gilles TOURREAU a écrit :
Le Fri, 26 Jan 2007 21:14:58 +0100, helios a écrit:




la tu as seulement sortie 2 champs alors que tu en as 90 a sortir donc
58 multivalué (chaque champs multivalué nécessite en SQL une table et
donc une jointures vers cette table)

Dr Thierry HOLZ
helios services
180 rue de la croix du chene
60250 HEILLES
www.openqm.com02.net
www.pick.com02.net




OK, juste par curiosité qu'est ce qu'un champ multivalué ?






c'est un champ qui contient des valeurs multiples par exemples les
prénoms , ou les numéros de téléphone ou toute information ayant
plusieurs occurrences
en SQL si une personne à plusieurs prénom il faut créer une jointure
vers une table prénom tandis que en SGBDRMV on met tout les prénom dans
le champ prénom sans jointure ni table supplémentaire ainsi certain
fichier multivalué ont jusque a l'équivalent de 8000 table SQL donc
remplace 8000 table SQL et 8000 jointure

Dr Thierry HOLZ
helios services
180 rue de la croix du chene
60250 HEILLES
www.openqm.com02.net
www.pick.com02.net
Avatar
helios
François Girault a écrit :
helios a écrit :
François Girault a écrit :
Si on vous demande une définition, ce n'est pas par ignorance mais pour
se mettre d'accord sur le sujet et vous répondre avec consistance, car
vous avez vos propres définitions à tout.

Exactement comme je vous l'avais demandé avec vos processus intégrés
spécifiques externes à couche propre d'accès direct aux données.



je n'ai pas mes propres définitions mais d'appels :
un chat un chat



j'ai mieux : "Le chat est un mammifère carnivore de la famille des félidés."





non

c'est une messagerie instantanée soit dispositif informatique qui permet
l'échange instantané de messages entre plusieurs ordinateurs connectés
au même réseau informatique, le plus communément celui de l'Internet.
Contrairement au courrier électronique, ce moyen de communication est
caractérisé par le fait que les messages externes s'affichent en temps
réel et permettent un dialogue actif.


http://fr.wikipedia.org/wiki/Chat_%28informatique%29


on est sur internet pas dans zoologie :-)


un processus un processus


cf plus loin




en informatique, un processus est une tâche en train de s'exécuter. On
appelle processus l'image de l'état du processeur et de la mémoire au
cours de l'exécution d'un programme.

une jointure une jointure



Ah dans ce cas vous pouvez la définir, non ?




En gestion de base de données relationnelle, une jointure est un lien
combinant les enregistrements de deux tables disposant de valeurs
correspondantes dans un champ commun.


après si tu ne connais pas le sens de processus c'est pas de ma faute






en informatique, un processus est une tâche en train de s'exécuter. On
appelle processus l'image de l'état du processeur et de la mémoire au
cours de l'exécution d'un programme.



Que si. Vous, par contre ... "intégré, externe, spécifique, sale couche,
accès direct" n'existent dans aucune littérature de système
d'exploitation. C'est de votre faute car vous n'avez jamais donné un
lien pour démontrer les accès directs sans sales couches de vos
processus intégrés.

Je peux vous montrer ce qu'est un processus unix :



je le peut aussi mais qui t'a parler de processus UNIX ont est dans les
SGBD donc je parle de processus de SGBR sinon pourquoi ne pas parler de
processus anatomique

(en anatomie, un processus est une partie du corps étant décrite comme
proéminente )

ou d'un processus stochastique
http://fr.wikipedia.org/wiki/Propri%C3%A9t%C3%A9_markovienne


Et quand un processus (un script php par exemple) veut communiquer une
requête au sgbd (un postgresql) et recevoir un résultat, il utilise un
mécanisme IPC. Comme les autres, et comme peut-être les processus coyote
et openqm auquels vous garantissez un "accès direct sans sale couche".

si tu confonds SGBD et DOS ce n'est pas ma faute



DOS ? je n'en ai jamais parlé. Vous confondez DOS et UNIX. C'est pas ma
faute, j'ai mis des liens pourtant.




UNIX est un DOS mais un ignorant ne voit que MSDOS comme DOS

Un Disk Operating System ou DOS (littéralement système d'exploitation de
disque) est un système d'exploitation relativement basique, constitué
d'interfaces destinés à simplifier l'utilisation des ordinateurs. En
particulier, il permet d'unifier les systèmes d'accès aux périphériques
de stockage sur disque tels que les disquettes et disques durs.

http://fr.wikipedia.org/wiki/DOS


si tu confonds couches DOS et couches applicatives ce n'est pas ma faute



Maintenant on est fixé : un OS pour vous, c'est DOS. On comprend mieux
votre inculture du multiprocessus et parfaitement votre ignorance des IPC.

Vous confondez persistance et présentation.




oui un OS est un DOS et ton inculture est évidente

Un Disk Operating System ou DOS (littéralement système d'exploitation de
disque) est un système d'exploitation relativement basique, constitué
d'interfaces destinés à simplifier l'utilisation des ordinateurs. En
particulier, il permet d'unifier les systèmes d'accès aux périphériques
de stockage sur disque tels que les disquettes et disques durs.

http://fr.wikipedia.org/wiki/DOS

pour info je suis Administrateur PICK depuis 1985 Administrateur MOS
depuis 1987 administrateur UNIX depuis 1997 et j'ai deja utilisé aussi
CPM86 et prologue ainsi que DPS6 DPS7 DPS8 sans parler des divers
compatible MSDOS (msdos,opendos,freedos ......) et divers unix


Dr Thierry HOLZ
helios services
180 rue de la croix du chene
60250 HEILLES
www.openqm.com02.net
www.pick.com02.net
Avatar
Jerome PAULIN
h
c'est un champ qui contient des valeurs multiples par exemples les
prénoms , ou les numéros de téléphone ou toute information ayant
plusieurs occurrences
en SQL si une personne à plusieurs prénom il faut créer une jointure
vers une table prénom tandis que en SGBDRMV on met tout les prénom dans
le champ prénom sans jointure ni table supplémentaire ainsi certain
fichier multivalué ont jusque a l'équivalent de 8000 table SQL donc
remplace 8000 table SQL et 8000 jointure





Ton exemple se modelise tres bien avec 3 tables, voir l'image
http://www.gg-s.net/helios.png , et on est loin de 8000 tables.

J'utilise courrament ce type de structure quand j'ai besoin de
caractériser des éléments "de base" (une personne dans notre exemple).

gg
Avatar
ALain Montfranc
helios a écrit

c'est un champ qui contient des valeurs multiples par exemples les prénoms ,
ou les numéros de téléphone ou toute information ayant plusieurs occurrences



Dans ton exemple date_acte / notaire sont multivalués ?

Comment se fait la jonction date <=> notaire ? On suppose que date[0]
est associé à notaire[0] et ainsi de suite ?
Avatar
ALain Montfranc
helios a écrit

non

c'est une messagerie instantanée soit dispositif informatique qui permet



Tu vois, c'est important de se synchroniser sur les définitions ;-D