Si las bases de datos pueden admitir hasta millones de registros, ¿cómo se organizan todos estos datos para que las consultas se puedan ejecutar en un tiempo razonable?¿Cómo son las bases de datos eficientes?
Respuesta
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.
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.
Estoy interesado en leer el artículo que hace referencia en el segundo (tercero?) Párrafo – RCIX
Mire la Id. De InstantDoc de la Revista de SQL Server # 92886 – TimothyAWiseman
- 1. en postgresql, ¿son las particiones o las bases de datos múltiples más eficientes?
- 2. ¿Son las pilas de Bitnami eficientes?
- 3. ¿Cómo hago que las múltiples consultas de bases de datos sean más eficientes en Perl?
- 4. Bases de datos: ¿Son los campos "TEXTO" menos eficientes que "varchar"?
- 5. ¿Son buenas las bases de datos de archivos planos?
- 6. ¿Las vistas de MySql son dinámicas y eficientes?
- 7. ¿Cómo funcionan las bases de datos internamente?
- 8. Struct en C, ¿son eficientes?
- 9. python: ¿cuáles son las técnicas eficientes para tratar datos profundamente anidados de manera flexible?
- 10. ¿Están las bases de datos orientadas a documentos destinadas a reemplazar las bases de datos relacionales?
- 11. ¿Las plantillas de sitios de SharePoint son realmente menos eficientes que las definiciones de sitios?
- 12. ¿Cómo controlar las bases de datos de SQL Server?
- 13. atributos multivalor en las bases de datos
- 14. ¿Cómo puedo encontrar las diferencias entre dos bases de datos?
- 15. ¿Qué son las extensiones .db-shm y .db-wal en las bases de datos Sqlite?
- 16. ¿Son eficientes los estilos CSS totalmente calificados?
- 17. Entender las claves en bases de datos
- 18. ¿Los métodos estáticos son más eficientes?
- 19. En mysql, las bases de datos show; el comando no enumera todas mis bases de datos
- 20. MongoDB soltar todas las bases de datos
- 21. ¿Cuáles son las mejores prácticas para scripts de bases de datos bajo control de código
- 22. ¿Cuáles son los pros y los contras de las bases de datos de objetos?
- 23. Cómo manejar las conexiones de bases de datos en Qt?
- 24. ¿Cómo pruebo las migraciones de bases de datos?
- 25. Cómo mostrar todas las tablas de múltiples bases de datos
- 26. ¿Cómo se ensamblan las bases de datos de geolocalización?
- 27. ¿Dónde debería comenzar con las bases de datos de aprendizaje?
- 28. ¿Cómo habilito las combinaciones entre bases de datos en mysql?
- 29. ¿Cómo crean las personas bases de datos reutilizables?
- 30. ¿Cómo administra las bases de datos durante el desarrollo?
enlace roto, el paréntesis está fuera de lugar – kibibu