Révision Du Stockage Des Grandes Données
1 Types d’examen
- Questions de dissertation (30 points) - Discuter de sa compréhension des concepts
- Conception et optimisation des requêtes des bases de données distribuées (20) - Conception des bases de données distribuées, conception de partitionnement, définition, optimisation des requêtes correspondantes
- Optimisation de l’accès distribué (30) - Indicateurs de caractéristiques physiques, calcul du coût de transmission
- Conception de la structure de stockage (10) - Conception de HBase, conception de filtre de Bloom (PPT)
- Transactions distribuées (10) - Cohérence, contrôle de la concurrence Les trois devoirs correspondent respectivement aux points 2, 3, 4
2 Révision des chapitres
2.1 Chapitre 1
- Origine des grandes données (Pourquoi les systèmes de stockage des grandes données ont-ils été créés ? Les besoins d’extension horizontale, de fiabilité et de cohérence du système ne peuvent pas être efficacement résolus par le modèle relationnel traditionnel)
- Caractéristiques des grandes données
- Quel type de système de stockage est nécessaire pour les grandes données
2.2 Chapitre 2
- Architecture client/serveur (Changements des fonctionnalités AP dans différentes architectures)
- Relation entre l’architecture share nothing, l’architecture de partitionnement de base de données, l’architecture de séparation stockage-calcul et l’architecture client/serveur (question ouverte, combiner avec le PPT et sa propre compréhension) article de référence
- Structure de modèle des systèmes de bases de données distribuées relationnelles
- Transparence des données des systèmes de bases de données distribuées (trois types, définition, exemples ; déterminer la transparence d’une instruction d’opération)
- Différences et relations entre les systèmes de bases de données multiples et les systèmes de bases de données distribuées
2.3 Chapitre 3
- Principes de partitionnement de la conception des bases de données distribuées, définition (opération), méthode de représentation
- Stratégies d’optimisation des requêtes des bases de données distribuées et méthodes d’optimisation des requêtes de fragments
- Méthodes d’optimisation de l’accès aux requêtes distribuées, calcul des paramètres caractéristiques (opérations de sélection, de projection, de jointure naturelle, de semi-jointure)
2.4 Chapitre 4
- Quels problèmes HBase résout-il par rapport à HDFS ? Quelles sont ses caractéristiques ?
- Signification et caractéristiques des régions dans la base de données HBase. Les données de lignes différentes d’une même table peuvent être stockées sur des serveurs différents, et les données de mêmes lignes d’une même table peuvent également être stockées sur des serveurs différents. Comment comprendre cette phrase ?
Un serveur est une structure de stockage de région, mais stocker une région ne signifie pas stocker une table ; chaque région contient plusieurs magasins, un magasin est une famille de colonnes, qui est stockée en tant qu’objet de famille de colonnes, pas nécessairement une table, cela peut être des fragments de tables différentes.
- Quel est le véritable contenu des opérations CRUD de HBase ?
- Processus de lecture/écriture de HBase
Avantages de HDFS : (stockage de fichiers volumineux, multiples répliques, fragmentation automatique)
- Si HDFS est utilisé seul pour la gestion des données, il y a quelques problèmes :
- HDFS ne supporte pas la réécriture aléatoire des données
- HDFS n’a pas de concept de table de données
- HDFS ne peut pas effectuer de statistiques sur le nombre de lignes, de filtrage, de balayage, etc. pour les requêtes de données courantes
- Pour réaliser des opérations rapides, il faut généralement passer par Mapreduce.
HBase utilise HDFS pour le stockage sous-jacent, mais maintient sa propre structure de fichiers et métadonnées. Plus précisément, il présente les caractéristiques suivantes :
- Utilise un modèle de stockage orienté colonnes avec des paires clé-valeur
- Peut réaliser une extension horizontale pratique
- Peut réaliser une fragmentation automatique des données
- Réalise une cohérence stricte des lectures/écritures et un basculement automatique
- Réalise la recherche et le filtrage de texte intégral (filtre)
2.5 Chapitre 5
Quel problème chaque structure de données résout-elle principalement (scénarios) ? Principe de mise en œuvre ? Par exemple, les listes chaînées supportent principalement des écritures rapides, supportent les requêtes de plage, et ont un faible coût de mise à jour. Les arbres B+ supportent également, mais ont un coût de mise à jour élevé et ne supportent pas les scénarios de grandes données. Les arbres LSM combinent les listes chaînées (mémoire) et la fusion de fichiers multi-voies, les filtres de Bloom (stockage externe).
(1) Listes chaînées
- Type de problème résolu (écritures rapides, faible coût de mise à jour, support des requêtes de plage)
- Processus de recherche et d’insertion (principe de mise en œuvre) Les listes chaînées sont la structure de mémoire des arbres LSM ; (2) Arbres LSM
- Type de problème résolu (“écritures séquentielles, recherches aléatoires”)
- Qu’est-ce que la compaction ? Quels sont ses deux types ? Avantages et inconvénients.
- Pourquoi dit-on que les arbres LSM sont une structure de données favorable aux écritures ?
(3) Filtres de Bloom
- Type de problème résolu (exclusion efficace de certains objets)
- Méthode de construction et processus de requête (principe de mise en œuvre)
(4) Pourquoi dit-on que HBase est une base de données distribuée “écritures séquentielles, recherches aléatoires” ?
2.6 Chapitre 6
- Concept de transactions imbriquées
- Contenu des niveaux de cohérence des bases de données distribuées, avec exemples
- Théorie CAP et théorie BASE des bases de données distribuées (avec exemples)
- Protocole de soumission des transactions distribuées (Processus d’exécution du protocole de soumission en deux phases, problèmes - blocage, solutions - protocole de terminaison)
- Méthode de mise en œuvre des caractéristiques ACID de cohérence de HBase (comprendre)
- Algorithme de cohérence distribuée Paxos (processus principal)
2.7 Chapitre 7
- Concepts de base du contrôle de la concurrence (problèmes résolus, planification sérialisable)
- Problèmes résolus par le contrôle de la concurrence distribuée (trois scénarios d’application des verrous distribués, idées de solutions)
- Détermination de la sérialisabilité des transactions distribuées (sujet)
- Trois scénarios d’application des verrous distribués et solutions spécifiques