mardi 27 mars 2018

La raison secrète des mauvaises performances des bases de données – 2ème partie


Comme nous l'avons évoqué dans un précédent billet, les entreprises constatent que leurs applications d'analyse ralentissent à mesure que leurs données augmentent.
Elles ont tenté de résoudre ce problème de performances en remplaçant leurs hôtes par des systèmes modernes, multi-processeurs/multi-cœurs et dotés d'une mémoire vive conséquente. Pour autant, les performances ne se sont pas améliorées.  Le problème suivant est le fossé des E/S.  La plupart des E/S sont traitées en série. Or, puisque la fréquence d'horloge n'augmente pas, la différence de capacité de travail entre l'étage de calcul et celui du stockage s'est considérablement aggravée.
Les services informatiques ont tenté de combler ce fossé des E/S en utilisant des supports de stockage plus rapides sur les hôtes, à savoir des dispositifs Flash.  Le raisonnement était le suivant : puisque les lecteurs de disques magnétiques classiques sont beaucoup trop lents par rapport aux processeurs modernes, le recours au stockage Flash permet de combler ce fossé.
Les disques SSD ont été les premiers à être utilisés, puis ce fut le tour de la technologie PCIe et, maintenant, du NVMe, la technologie la plus récente et la plus performante.  Bien que toutes ces technologies soient loin d'être aussi rapides que la mémoire RAM, elles le sont bien plus (de plusieurs ordres de grandeur) que les lecteurs de disques magnétiques classiques.
Cela n'empêche toujours pas les applications d'être trop lentes.
Beaucoup d'entreprises se penchent sur les investissements consentis dans les hôtes, à la fois en puissance de calcul et en stockage, et se demandent si elles en ont pour leur argent.  Quand elles regardent ensuite les processeurs de ces hôtes, elles constatent qu'ils ne sont pas utilisés au maximum de leurs capacités.
Où se trouve donc ce goulot d'étranglement ? Le secret est qu'il se situe au niveau du système d'exploitation de l'hôte.  Cela peut sembler étrange si l'on songe que les systèmes d'exploitation modernes sont conçus pour gérer des applications complexes, fonctionner en multitâche sur plusieurs applications et tirer parti des nouvelles technologies des hôtes.
Dans un prochain article sur ce blog, nous parlerons des goulots d'étranglement qui se cachent dans le système d'exploitation.

mercredi 21 mars 2018

La raison secrète des mauvaises performances des bases de données (1ère partie)



À mesure que les entreprises se transforment grâce à un ensemble diversifié de technologies numériques, elles doivent faire face à une quantité croissante de données.  Qu'elles ajoutent de nouvelles sources de données (les réseaux sociaux pour des entreprises orientées client ou des données de capteurs pour les entreprises de fabrication par exemple) ou qu'elles exploitent davantage de données historiques (pour déterminer les tendances saisonnières des prix), le résultat est qu'elles injectent un plus grand nombre de données dans leurs analyses.
Or, elles constatent à présent que cette augmentation du volume de données finit par ralentir leurs analyses et les empêche d'obtenir à temps les résultats qu'elles attendent de leurs applications.  Les conséquences sur leur activité sont directes.  Par exemple, une entreprise qui doit évaluer son stock pour déterminer ses promotions du jour risque de ne pas pouvoir fixer ses prix avant l'ouverture de ses magasins.
Quel est donc le goulot d'étranglement qui ralentit ces applications ?  Le premier endroit que vérifie le service informatique est l'hôte.  Si le serveur commence à dater un peu, les entreprises mettent souvent l'hôte à niveau en le remplaçant par un système moderne, multi-processeur/multi-cœur, avec beaucoup de mémoire RAM.  Les serveurs d'aujourd'hui possèdent une grande puissance de calcul car l'augmentation du nombre des transistors, prédite par la loi de Moore, fait que les processeurs intègrent de plus en plus de cœurs.
Le problème est que cette multiplication des cœurs s'est faite au détriment de la fréquence d'horloge.  Celle-ci n'a en effet que peu évolué par rapport à la multiplication des transistors.  Cela a entraîné un deuxième problème, à savoir, le fossé des E/S.  La plupart des E/S sont traitées en série. Or, puisque la fréquence d'horloge n'augmente pas, la différence de capacité de travail entre l'étage de calcul et celui du stockage s'est considérablement aggravée.
Dans un prochain article, nous aborderons ce fossé des E/S et nous verrons comment les entreprises tentent de le combler.

mardi 13 mars 2018


Comment tirer parti de l'hyperconvergence pour les bases de données et les applications d'entreprise de niveau 1

Nous vivons dans un monde où les données sont devenues essentielles. À mesure que leur croissance s'accélère de façon exponentielle, les bases de données, qui aident les entreprises à gérer le chaos, prennent elles aussi de plus en plus d'importance. Dans le même temps, les entreprises cherchent à réduire leurs coûts et à simplifier l'infrastructure sur laquelle reposent ces bases de données. C'est là que les infrastructures hyperconvergées entrent en scène.
Ces solutions se sont avérées précieuses pour les infrastructures de type VDI (virtual desktop infrastructure) ou les petites applications à faible charge. Les entreprises ont bénéficié de leur grande efficacité opérationnelle et des économies qui les accompagnent. Mais qu'en est-il pour les systèmes de bases de données d'entreprise et des applications associées qui exigent des niveaux élevés d'E/S et qui ont du mal à dépasser le stade de l'hôte unique ? Dans de tels cas, comment tirer parti d'une infrastructure hyperconvergée ?
Décupler les performances de l'hyperconvergence
Les systèmes d'infrastructures hyperconvergées présentent des caractéristiques de performances intéressantes imposées par l'architecture : les nœuds qui génèrent les charges d'E/S sont ceux qui doivent gérer ces charges. Or, même si certains éléments peuvent peser sur les performances globales des charges de travail, les goulots d'étranglement qui réduisent les performances des applications viennent en général des E/S.
La façon la plus courante de bénéficier instantanément d'un gain de vitesse consiste à remplacer les disques rotatifs par des périphériques flash flambant neufs. On peut certes opter pour le tout-flash mais, bien souvent, le problème ne tient pas au type de support. N'oublions pas non plus qu'un lecteur SSD de 4 To coûte 10 fois plus cher qu'un disque dur d'entreprise de même taille. Il faut également noter que le support de stockage ne peut pas enregistrer les données plus vite qu'il ne les reçoit du processeur (ou de l'hôte). Si vous êtes victime de goulots d'étranglement qui se situent, non pas sur le périphérique de stockage, mais quelque part ailleurs dans le système, vous devrez quand même trouver le moyen de les éliminer avant de pouvoir bénéficier de tous les avantages attendus, même si vous vous équipez entièrement en technologie flash. Il n'y a probablement rien de pire que d'avoir installé du flash partout et de ne constater qu'une augmentation de performances modeste parce qu'il existe un goulot d'étranglement d'un autre type dans votre environnement.
Remplacer les éléments du système par des modèles plus puissants est également un moyen de surmonter les problèmes de performance des charges de travail, mais cela ne suffit pas en soi. Vous pouvez ajouter toute la mémoire RAM, tous les périphériques flash et tous les processeurs du monde, cela risque d'être encore insuffisant. Toutes les charges de travail ne peuvent pas bénéficier d'une puissance supplémentaire si des goulots d'étranglement subsistent ailleurs dans le système.
Parallel I/O, une solution gagnante
Pour finir, vous devrez régler le problème de la latence, championne toutes catégories de la réduction des performances des charges de travail. Si tous les voyants de votre système semblent être au vert de votre côté, mais que les choses traînent du côté de l'utilisateur final, vous allez avoir un problème. Les conséquences d'une latence médiocre sont assez lourdes et c'est là que les logiciels peuvent vous venir en aide.
DataCore peut vous aider à résoudre certains des problèmes de performances de vos bases de données et des applications associées en transférant les données au périphérique de stockage situé dans le nœud à travers de multiples canaux grâce à sa technologie Parallel I/O, comprise dans notre logiciel Hyperconverged Virtual SAN. Cette technologie contribue à écrire les données beaucoup plus vite et à tirer des performances nettement supérieures de la solution globale.