Question du test Architecture Infrastructure

Quelle base de données stocke le plus de données?

Intermédiaire

MEME SUJET POUR PLUSIEURS QUESTIONS

Vous disposez d'une base de données en documents lourds (1 document/row contient 1Mo de données). Vous remarquez que le goulot d’étranglement de votre base de données n'est pas le nombre de requêtes de lecture/écriture mais la quantité de données transitant pour chacune des requêtes (1Mo).

Votre base de données permet d'effectuer des opérations atomiques sur plusieurs tables/collections.

L'écriture de documents/rows se fait en 1 write. La lecture quant à elle est partielle (les utilisateurs n'ont besoin que de sous ensembles des informations des documents/rows en même temps). Vous identifiez 3 sous ensembles, de taille respectives 0.2Mo 0.6Mo 0.5Mo. Le ratio lecture / écriture étant de 5, vous décidez de différentier les canaux utilisés à l'écriture de ceux de lecture pour profiter du fait que les lectures font moins transiter de données.

L'idée A est la redondance physique. Vous attachez une base de données esclave à votre base de données actuelle. Cette dernière recevra les opérations d'écriture, qui seront répliquées sur la base esclave. Les opérations de lecture seront dirigées directement sur les tables esclaves.

L'idée B est de conserver des tables pour chacun des sous ensembles (en plus de la table principale). Ces tables sont donc des caches persistants, en base de données. 1 opération d'écriture écrit donc le document/row principal + 1 petit document/row prêt à l'emploi pour chacune des opérations de lecture (3).

L'idée C est d'écrire des requêtes SQL/mapReduce sur mesure pour chacune des opérations de lecture afin de ne retourner que les sous ensembles nécessaires à chacune des lectures. Votre base de donnée n'est donc pas modifiée et vous disposez de trois interfaces sur mesures pour chacun des sous ensembles.

EN TERMES DE DONNEES STOCKEES :

Auteur: Kevin LefevreStatut : PubliéeQuestion passée 222 fois
Modifier
0
Évaluations de la communautéPersonne n'a encore évalué cette question, soyez le premier !