Pourquoi ne pas b-tree base de données et l'arbre rouge-noir avec b + arbre

Quelques jours avant a été demandé à l'entrevue, pas une bonne réponse, enregistrez-le:

arbre premier noir pas dit pourquoi:

1. L'arbre rouge-noir doit être présent dans la mémoire, la table de base de données est trop grand, le dépôt ne va pas.

2. Même si vous trouvez l'arbre rouge-noir stocké dans la dure, recherchez un nœud de l'arbre rouge-noir pour vérifier jusqu'à couches logN, chaque couche est une page de mémoire (si vous êtes à la recherche d'un nœud, mais le disque dur doit être lu une fois une page ..), puis le temps total logN IO, ne peut pas se permettre des blessures Ah!

 

Nous devons donc envisager de réduire le nombre de couches de l'arbre pour réduire le nombre de IO pour accélérer les requêtes, modifier l'efficacité base de données, b et b + arbres sont conformes à la propriété, ils ont beaucoup d'enfants de chaque nœud (des dizaines de milliers), de sorte que l'arbre entier la pression de la hauteur est très faible.

Les données telles que 100.000.000, chaque nœud enfant 1000, le journal 1000 (100.000.000) <3,3 couche a économisé assez!

 

Parlez de l'arbre b et b + distinction d'arbre:

Tous les nœuds B-arbres sont des noeuds de données, mais seulement b + noeud feuille de l'arbre sont les données de noeud, le noeud non-feuille (interne) sert uniquement à titre indicatif, les données réelles ne sont pas stockées.

Tous les noeuds de données b + arbre dans la couche inférieure (couche d'un noeud de feuille), il est relié à des noeuds adjacents reliés liste.

Note de lecture du disque un octet de données lu et lu et lu 10 octets ou moins du temps (parce que le disque temps de recherche est consacré à la plupart cherchent, la rotation du temps à peine)

Pourquoi mieux dire b-tree b + arbre:

1.b sont des noeuds internes de l'arbre, telles que les données réelles stockées dans un noeud d'une page est de 4096 octets, dans lequel chaque octet de données 128, alors le noeud 32 peut stocker l'élément de données, alors les noeuds enfants correspondant au plus il est 33, ce qui est évidemment pas suffisant. Et b + arbre noeud interne comme une action de guidage, ne peut garder un nombre entier, 4096/4 = 1024 éléments de données. Cet arbre b + pour chaque nœud du nombre d'enfants plus, toute la hauteur de l'arbre est encore plus faible, augmenter considérablement l'efficacité requête.

2.b + nœuds feuilles d'arbres sont liés la liste, pour les requêtes de gamme, comme lire des pages directement adjacentes très bien. Mais b-arbre ne peut le faire.

Il suffit de dire cela.

Je suppose que tu aimes

Origine www.cnblogs.com/FdWzy/p/12578939.html
conseillé
Classement