J'espère que beaucoup d'entre vous travaillent avec des sites Web basés sur une base de données à fort trafic, et il est probable que vos principaux problèmes d'évolutivité se trouvent dans la base de données. J'ai remarqué deux ou trois choses récemment:
La plupart des grandes bases de données nécessitent une équipe de DBA pour évoluer. Ils luttent constamment avec les limitations des disques durs et se retrouvent avec des solutions très coûteuses (SAN ou grands RAID, fenêtres de maintenance fréquentes pour la défragmentation et la répartition, etc.). trop raide pour moi :)
Enfin, plusieurs sociétés comme Intel, Samsung, FusionIO, etc. viennent de commencer à vendre des disques durs SSD extrêmement rapides mais abordables basés sur la technologie Flash SLC. Ces disques sont 100 fois plus rapides en lecture / écriture aléatoire que les meilleurs disques durs en rotation du marché (jusqu'à 50 000 écritures aléatoires par seconde). Leur temps de recherche est à peu près nul, donc le coût des E / S aléatoires est le même que celui des E / S séquentielles, ce qui est génial pour les bases de données. Ces disques SSD coûtent environ 10 à 20 dollars par gigaoctet et ils sont relativement petits (64 Go).
Ainsi, il semble y avoir une opportunité d'éviter les coûts ÉNORMES de la mise à l'échelle des bases de données de la manière traditionnelle en construisant simplement une matrice RAID 5 suffisamment grande de disques SSD (qui ne coûterait que quelques milliers de dollars). Ensuite, peu nous importe que le fichier de base de données soit fragmenté, et nous pouvons nous permettre 100 fois plus d'écritures sur disque par seconde sans avoir à répartir la base de données sur 100 broches. .
Quelqu'un d'autre est-il intéressé par cela? J'ai testé quelques disques SSD et je peux partager mes résultats. Si quelqu'un sur ce site a déjà résolu son goulot d'étranglement d'E / S avec des SSD, j'aimerais entendre vos histoires de guerre!
PS. Je sais qu'il existe de nombreuses solutions coûteuses qui contribuent à l'évolutivité, par exemple les SAN basés sur la RAM éprouvés. Je veux être clair que même 50 000 $ sont trop chers pour mon projet. Je dois trouver une solution qui ne coûte pas plus de 10 000 $ et ne prend pas beaucoup de temps à mettre en œuvre.
Dave, NXC et Burly,
Merci pour vos réponses! Je voudrais préciser que le mot «bon marché» est très important dans ma situation. Donc, je dois utiliser des serveurs Dell bon marché (2950 $ 4K qui n'ont que 8 banques de mémoire). J'ai déjà 32 Go de RAM installés, donc je ne peux pas continuer à évoluer de cette façon. De plus, l'ajout de RAM ne vous évite pas les goulots d'étranglement sur le disque, ce qui est mon principal problème en ce moment.
J'étais préoccupé par la durée de vie des SSD, mais après avoir lu sur les algorithmes modernes de nivellement de l'usure, je suis presque sûr que ces disques dureront assez longtemps. Ma base de données écrit 300 Go par jour et devrait dépasser 1 To par jour en 2009. Les disques SSD d'entreprise sont conçus pour gérer environ 10 To d'écritures par jour sur plusieurs années.
Je ne suis pas d'accord avec le point de Burly selon lequel il faut trop de travail pour migrer de SAS vers SSD. Ma base de données est un miroir synchrone, donc je peux mettre à niveau un côté du miroir, puis le regarder pendant quelques mois, et s'il saute, je peux basculer vers le deuxième serveur qui a toujours les vieux bons disques durs SAS ...