| |||||
| Auteur |  Sujet : MySQL ? PostgreSQL ? Que chosir pour une grosse base ? | 
|---|---|
Publicité  | Posté le 02-06-2005 à 12:12:37   ![]() ![]()  | 
Arjuna Aircraft Ident.: F-MBSD | Quelle est la véritable clé ?  | 
Arjuna Aircraft Ident.: F-MBSD | Bon, les tests que je suis en train de faire sont assez édifiants.
 
 
  | 
DJZiaKLeRetour  | Waw, merci de te donner ce mal pour moi.
 
 
 
 
  | 
DJZiaKLeRetour  | Ah oui au fait précision : bAjouterMesure() ça insère une ligne dans la table mesures, je pense que tu l'auras deviné.
  | 
Arjuna Aircraft Ident.: F-MBSD | OK, je lancerai une initialisation de la base avant d'aller manger (parceque je développe sur cette machine, et vu le processeur, je te laisse imaginer à quel point ça ramme quand j'insère un grand volume de données   | 
Arjuna Aircraft Ident.: F-MBSD | Euh, je viens de regarder ton truc mais... C'est pas super clair ton script.
 Message édité par Arjuna le 03-06-2005 à 12:33:20  | 
Arjuna Aircraft Ident.: F-MBSD | En attendant, je relance le script avec cette nouvelle config :
  | 
Arjuna Aircraft Ident.: F-MBSD | Bon, ben ça insère tranquillement.
  | 
Publicité  | Posté le 03-06-2005 à 12:46:09   ![]() ![]()  | 
Arjuna Aircraft Ident.: F-MBSD | Bon, je reviens.
 Message édité par Arjuna le 03-06-2005 à 14:23:20  | 
DJZiaKLeRetour  | Pour avoir plus de 500 Mo ? C'est simple : utilise ces valeurs : iNbReperes = 100 et iNbMesures = 86400   Message édité par DJZiaKLeRetour le 03-06-2005 à 14:56:56  | 
DJZiaKLeRetour  | Ah j'avais pas vu l'histoire des disques différents. J'y avais pas pensé à ça... Mais c'est vrai que c'est évident ! Mildiou, faut que j'en parle aux autorités supérieures... Au moins sur un autre disque que l'OS quoi... Je pense que c'est le plus important.  | 
DJZiaKLeRetour  | En fait les index "spatial" c'est pour des formes géométriques apparemment.  | 
Arjuna Aircraft Ident.: F-MBSD | Bon, je relance mon script ce soir avec tes valeurs, (et je vais quand même garder la bordélisation de mon index, histoire d'avoir un handicap   | 
DJZiaKLeRetour  | J'ai eu une idée tout à coup, que je vais expérimenter. J'ai décidé d'emmerder les conventions des bases de données (un peu, pas trop) et de fractionner ma table mesures : dès qu'il y a 1000000 de lignes, paf j'en crée une nouvelle. Je crée à côté une table contenant les dates de début et de fin de chaque table (de toute façon, les requetes arrivent dans l'ordre chronologique donc pas de pb).  | 
Arjuna Aircraft Ident.: F-MBSD | Ouais, alors ça c'est goret quand même   | 
DJZiaKLeRetour  | M'en fous, faut que ça marche    | 
Arjuna Aircraft Ident.: F-MBSD | Ben utilise SQL Server  Message édité par Arjuna le 03-06-2005 à 16:45:24  | 
DJZiaKLeRetour  | Le problème est que mon stage touche à sa fin (la semaine prochaine déjà, snif...), donc je ne sais pas si j'aurai réellement le temps de tester SQLServer. Mais il est question de rallonger le stage de deux semaines, donc si ça se fait, pourquoi pas, plutôt que de jouer les porcs avec mon système à 0.02   | 
Arjuna Aircraft Ident.: F-MBSD | Groumpf, ben pour mes tests, ce sera pour "courant de la semaine"   | 
DJZiaKLeRetour  | lol ok, merci en tout cas  | 
DJZiaKLeRetour  | Mais j'y pense, la mémoire virtuelle n'intervient pas là dedans normalement !
  | 
Arjuna Aircraft Ident.: F-MBSD | Ben...
  | 
DJZiaKLeRetour  | Ah wé Ok effectivement ton cas est grave lol.  | 
DJZiaKLeRetour  | arg fait chier j'obtiens plus les memes perfs qu'avant avec mysql ! c'est 10 fois plus lent sur certaines requêtes.
 Message édité par DJZiaKLeRetour le 06-06-2005 à 14:59:12  | 
DJZiaKLeRetour  | Je m'aperçois d'un truc débile : je suis en train de faire les tests avec SQLite là et il ne bouffe quasiment aucune ressource ! Le CPU est même pas à 10% et la ram est très peu utilisée. On dirait qu'il se restreint, c'est bizarre. Quelqu'un connaîtrait pas un truc, un paramètre à régler pour lui dire "vas-y, fais toi plaisir, bouffe tout ce que tu veux" ?  | 
Arjuna Aircraft Ident.: F-MBSD | achète un disque dur 15ktrm ?
  | 
DJZiaKLeRetour  | Ce que je trouve bizarre c'est que Postgres et MySQL occupent le CPU à 100% lors des insertions.  | 
Arjuna Aircraft Ident.: F-MBSD | En effet, c'est un peu bizarre. Ceci dit, un INSERT est infiniment plus lourd à qu'un SELECT (la plupart des SGBD rament à mort lors de l'insertion), ne seraît-ce que parceque l'interface disque demande plus de CPU lors d'une écriture que lors d'une lecture, et surtout, il font plusieurs écritures pour chaque ligne (index + data) sans parler de l'alimentation des index, qui nécessitent rééquilibrage à interval régulier, mais aussi la vérification de l'unicité des clés...
  | 
DJZiaKLeRetour  | ben oui c'est justement à l'insertion dont je parle, pour SQLite. Et quand je dis 10% c'est 10% du CPU pris au total, pas que pour SQLite. SQLite pousse à 4% maximum.
 Message édité par DJZiaKLeRetour le 07-06-2005 à 08:45:00  | 
Arjuna Aircraft Ident.: F-MBSD | c'est chelou   | 
DJZiaKLeRetour  | Ouais ben je crois que j'essaierai ça d'ici peu parce que je commence à en avoir ras le bol de ces SGBD à la noix... Surtout SQLite avec ses transactions à 2 francs, que si tu les laisse par défaut ça ressemble à tout sauf à une transaction, ses performances aléatoires... Pas d'administration, certes, par contre, le programmeur qui s'en sert il en chie   | 
DJZiaKLeRetour  | Vive Oracle et puis c'est tout.  | 
Arjuna Aircraft Ident.: F-MBSD | Ouais, mais Oracle, perso, je le préfère sur un serveur de type Sun. Sur du x86 ça pue   | 
DJZiaKLeRetour  | Nouvel essai avec SQLite : je repousse les limites de la dénormalisation    | 
DJZiaKLeRetour  | Un autre avantage de faire ça c'est qu'on peut supprimer tous les index a priori, ils ne devraient plus trop nous servir, voire même plus du tout.
  | 
DJZiaKLeRetour  | 
 
 Message édité par DJZiaKLeRetour le 10-06-2005 à 11:37:22  | 
DJZiaKLeRetour  | oups j'ai oublié un 0 à la première requete :
  | 
ridaouis  | bonjour,
  | 
ridaouis  | il n y a personne qui peut m'aider?  | 
Publicité  | Posté le    ![]() ![]()  | 

| Sujets relatifs | |
|---|---|
| liste des types retournés avec mysql_fetch_fields | Exporter resultat requete php/mysql a la suite d'un fichier existant | 
| Connecteur mySql avec eclipse | Mise à jour automatique de base Acces à Mysql ?? | 
| [MySQL] erreur 1093 avec update | Avis sur la base de données | 
| modification base de donnée | [MySQL] Réutiliser le nom d'une colonne comme donnée | 
| base embarquée | |
| Plus de sujets relatifs à : MySQL ? PostgreSQL ? Que chosir pour une grosse base ? | |



  

