2010-04-29 27 views

Respuesta

2

me gusta mucho This explicación (incluir gráficos;)

Esta es la conclusión artcicle:

Conclusión

Index example http://mattfleming.com/files/images/example.gif

Los índices de árbol B se crean para disminuir la cantidad de E/S necesaria para encontrar y cargar un conjunto de datos. Un índice altamente selectivo de utiliza la cantidad mínima de E/S necesaria, los índices poco selectivos no son mucho mejores que una exploración de tabla.

8

Una respuesta completa es el tema de numerosos libros y disertaciones ;-)

Sin embargo, la respuesta básica es que todos los RDBMS modernos tienen un par de características: primer lugar, tienen un optimizador de consulta que es muy eficiente. Este encuentra un buen camino (no siempre el mejor) para responder a la consulta provista. Por supuesto, esto puede hacer más para ayudar a las preguntas complicadas que a las simples.

En segundo lugar, almacenan los datos en un formato estructurado que es fácil de buscar. Los datos sin un índice agrupado se llaman un montón, y esto generalmente es menos eficiente para buscar, pero sigue siendo datos estructurados. Los datos generalmente tendrán un índice agrupado que lógicamente ordena los datos. (Algunas personas creen que físicamente ordena los datos. Hay algo de verdad en esto, pero no es absolutamente cierto. Itzik Ben Gan, entre otros, tiene un excelente artículo desacreditando esta creencia).

Además del índice agrupado, generalmente se usan índices no agrupados. Estos son como los índices de un libro que pueden ayudar a decirle al optimizador de consultas dónde buscar los datos solicitados o, en algunos casos específicos, el índice puede tener todos los datos necesarios.

Esto es, por supuesto, una simplificación excesiva y horrible. Si desea un nivel profundo, prepárese para obtener un doctorado en teoría de bases de datos. Para una comprensión de nivel general, puede echar un vistazo a los libros sobre las partes internas de la base de datos. Para SQL Server en particular, SQL Server 2008 Internals tiene mucha información sobre este tema.

+0

Estoy interesado en leer el artículo que hace referencia en el segundo (tercero?) Párrafo – RCIX

+0

Mire la Id. De InstantDoc de la Revista de SQL Server # 92886 – TimothyAWiseman

Cuestiones relacionadas