La forma más fácil de entender por qué la selección índice de árbol B MongoDB, MySQL y seleccione B + Árbol

El problema es cuando veo el video del profesor mencionado, aunque conocían antes de su estructura de índice, pero la causa no ha sido estudiado. En particular, en una búsqueda de respuestas en línea. Pero es particularmente largo aliento. A continuación, un resumen del artículo.

En primer lugar, la diferencia entre B y B + Árbol

Obviamente, queremos averiguar la razón por la que hay que saber la diferencia entre B y B + árbol árbol. Con el fin de no largo aliento. Les damos en forma de resumir directa sus características.

1, árbol B-

árbol B- es un auto-equilibrio de los árboles de búsqueda, la forma es muy simple:

Se trata de un árbol B-. El núcleo de las características de nuestro problema son los siguientes:

(1) multi-canal, el árbol no binario

(2) Cada nodo no sólo se ahorra indexado, y almacenados datos

(3) Corresponde a la búsqueda binaria cuando se busca

Aquí asumimos que todos ya conocen la estructura de árbol B relacionada.

2, árbol B +

B- B + Tree es una variante del árbol

Las características principales son las siguientes:

(1) múltiples no binario

(2) Sólo el nodo hoja para guardar los datos

(3) Corresponde a la búsqueda binaria cuando se busca

(4) incrementar el puntero a los contactos adyacentes.

De lo anterior se puede ver que el núcleo de la principal diferencia entre los dos, unos datos de posición se guarda, uno se dirige a los nodos adyacentes. Tal vez la diferencia se debe a la MongoDB y Mysql. ¿Por qué?

3, la diferencia entre B y B + Árbol

(1) B + consulta árbol complejidad de tiempo se fija logn, B- árbol de consulta complejidad es preferiblemente O (1).

(2) B + puntero árbol contactos adyacentes pueden aumentar considerablemente la gama de acceso, y similares se pueden usar dentro del alcance de la consulta, y la cada dato de clave de nodo de árbol B- y juntos, no puede encontrar el intervalo.

(3) B + árbol es más adecuado para el almacenamiento externo, almacenamiento en disco es. Dado que no campos de datos dentro de los nodos, cada nodo puede ser más preciso intervalo de índice mayor

(4) Tenga en cuenta que esta distinción es muy importante, se basa en (1) (2) (3) de, B- árbol cada nodo se guarda y almacena índice de datos, por lo que el número de disco IO poco, la única excepción B + nodo de hoja de árbol, S de disco mucho, pero mejor intervalo de acceso.

Después de que ellos tienen diferencias, ahora vamos a explicar el motivo mucho mejor.

En segundo lugar, explicar las razones

Quiero explicar por qué también tenemos que entender los conceptos básicos de MongoDB y Mysql.

1, MongoDB

MongoDB es una base de datos de tipo de documento es un nosql, utiliza el formato JSON clase para guardar datos. Por ejemplo, antes de nuestra mesa podría tener una tabla de usuario, la tabla Pedidos, mesa canasta y así sucesivamente, sino también para establecer una relación de clave externa entre ellos. clase JSON, pero no es lo mismo.

 

 

Podemos ver esto forma más simple, fácil de entender. ¿Por qué utilizar árboles MongoDB B-?

MongoDB usa árbol B-, todos los nodos tienen el campo de datos, acaba de encontrar el índice especificado se puede acceder, sin duda más rápido que el promedio sola consulta MySQL.

2, Mysql

MySQL como base de datos relacional, la asociación de datos es muy fuerte, intervalo de acceso es un caso común, B + árboles porque todos los datos almacenados en el nodo de hoja, y ensartados por el puntero, por lo que es fácil de ser atravesado intervalo incluso la totalidad de recorrido.

La diferencia central si tal vez se puede entender la diferencia entre el árbol árbol B y B + es fácil de entender.

Supongo que te gusta

Origin www.cnblogs.com/matengfei123/p/12459911.html
Recomendado
Clasificación