Question

Intro J'ai tiré cette question de ma précédente question

Après avoir obtenu une réponse très détaillée d'un membre très utile RolandoMySQLDBA et l'apprentissage du fait que plusieurs unités de disque peut aider beaucoup dans certains cas. J'ai commencé à regarder dans plusieurs unités de disque pour ma configuration qui est juste un peu par rapport à ce que je trouve.

Plus d'infos J'ai trouvé tout à fait d'énormes entrepôts comme

http://www.newegg.com/Product/Product.aspx ? article = N82E16811152212

Alors que certaines vidéos montrent même de GBS vitesse d'écriture de ce genre d'équipement

Question réel Pourvu qu'il y ait suffisamment de RAM pour les index de maintien, MySQL ou autres SGBDR open source (non classé entreprise comme Oracle SGBDR parce que sa course sur SAN est assez fréquent) peut fonctionner sur ces bêtes facilement?

car ils contiennent la configuration réelle de plusieurs unités de disque et des dizaines de têtes sont disponibles.

Je suis sûr que ce ne serait pas aussi simple que cela, car si elle aurait facile alors pourquoi la plupart des configurations d'entreprise utilisent des serveurs de matières premières. Alors, quels problèmes sont confrontés à l'utilisation de ces solutions de stockage extrême?

Était-ce utile?

La solution

Tout ce qu'on a à faire est de lancer ces requêtes:

MyISAM

SELECT CONCAT(ROUND(KBS/POWER(1024,
IF(PowerOf1024<0,0,IF(PowerOf1024>3,0,PowerOf1024)))+0.4999),
SUBSTR(' KMG',IF(PowerOf1024<0,0,
IF(PowerOf1024>3,0,PowerOf1024))+1,1))
recommended_key_buffer_size FROM
(SELECT LEAST(POWER(2,32),KBS1) KBS
FROM (SELECT SUM(index_length) KBS1
FROM information_schema.tables
WHERE engine='MyISAM' AND
table_schema NOT IN ('information_schema','mysql')) AA ) A,
(SELECT 2 PowerOf1024) B;

InnoDB

SELECT CONCAT(ROUND(KBS/POWER(1024,
IF(PowerOf1024<0,0,IF(PowerOf1024>3,0,PowerOf1024)))+0.49999),
SUBSTR(' KMG',IF(PowerOf1024<0,0,
IF(PowerOf1024>3,0,PowerOf1024))+1,1)) recommended_innodb_buffer_pool_size
FROM (SELECT SUM(data_length+index_length) KBS FROM information_schema.tables
WHERE engine='InnoDB') A,
(SELECT 2 PowerOf1024) B;

Ces recommandera la bonne taille pour le cache de clé MyISAM pour MyISAM existant et le Pool InnoDB tampon pour les données InnoDB et index.

Lors de l'exécution de ces requêtes SQL recommandent les tailles de tampon, le facteur humain doit encore lancer. Nous devons planifier l'utilisation de données basées sur le matériel et les données fréquemment. Il faut aussi demander: de la quantité de tampon recommandé, combien de mon jeu de travail résidera dans la mémoire

Si vous configurez MySQL pour utiliser 75% de RAM pour InnoDB, même sur un serveur MySQL dédié, le système d'exploitation aura une pagination occupé sur le disque. Tout simplement parce que MySQL peut utiliser un très grand nombre pour les tailles de tampons ne signifie pas qu'il est OK pour repousser les limites. Deux ont deux moteurs de stockage de base à prendre en compte.

L'utilisation du matériel de base démontre simplement MySQL configurabilité avec des résultats notables. À moins que vous utilisez 32 bits RHEL ( si vous êtes, s'il vous plaît cesser d'utiliser dès maintenant, prendre beaucoup de café, aller upgrade ), augmenter la taille des tampons en bêtes de stockage peut être bien fait confiance.

Par exemple, mon employeur a un client avec 3 serveurs DB dédiés à MySQL uniquement. Chacun a 192GB de RAM dont 162GB est le tampon InnoDB Pool. Le jeu de travail est en fait 170GB. Bien qu'il y ait un peu swapping et la pagination en cours, la performance DB est étonnante. OS a environ 30 Go de RAM pour lui-même (16 Go de disque RAM pour les tables temporaires). Je suis sûr que ces serveurs ne sont que de petits lézards par rapport aux serveurs de DB de dragon Komodo taille là. MySQL peut être à la tâche si elle est configurée correctement .

Gardez à l'esprit que InnoDB met ses propres freins et contrepoids en place parce que les limites actuelles du code source InnoDB fichiers journaux à 4 Go. Tel est le cas parce que InnoDB a été conçu à l'origine avec du matériel de base à l'esprit. À la lumière de cette transaction ACID le débit pourrait y goulot d'étranglement indépendamment de la configuration matérielle de la bête de stockage et la version de MySQL vous choisissez d'exécuter.

Conclusion

Il est OK pour les limites de poussée sur les serveurs Big Costaud DB. Vous devriez toujours le faire en tenant compte de l'OS en termes de mémoire, l'espace d'échange, de travail Dataset, et le nombre de transactions attendues.

Licencié sous: CC-BY-SA avec attribution
Non affilié à dba.stackexchange
scroll top