Wikipedia para siempre
Proyectos::TreeWeb::R4::Investigación::003 - Modelo de árbol basado en conjuntos anidados
Permalink: http://www.treeweb.es/u/877/ 27/11/2010

003 - Modelo de árbol basado en conjuntos anidados

Descripcion

El modelo de árbol basado en conjuntos anidados ha sido propuesto por Mike Hillyer en http://dev.mysql.com/tech-resources/articles/hierarchical-data.html.
Aunque pueda parecer que el modelo pueda ser:
  • Muy rápido en lectura
  • Muy lento en inserción
  • Muy potente, (con una única consulta se puede conseguir todo el árbol)
Es un modelo teórico para manipular árboles mediante el lenguaje de consulta SQL. El concepto se adapta muy bien al lenguaje declarativo SQL aunque no es, ni de lejos, tan rápido como parece:
  • Extremadamente lento en inserción. Para cada inserción necesita hacer cuatro consultas, dos de ellas son actualizaciones de un 50% de los registros, por lo que el tiempo de inserción está en el orden exacto O(n) siendo n el número de registros actuales.
  • Lento en lectura. El procesamiento de registros 'todos con todos' es tan elegante como lento.
  • Es potente en cuanto al número de consultas y la precisión con la que se ejecutan las operaciones pero no está pensado para cálculos muy rápidos.

Implementación

Véanse algunas notas sobre implementación en los siguientes enlaces:

Pruebas

Véanse en la comparativa 004 Árboles: Lista de adyacencia vs. Conjuntos anidados.