Susana Beltrn
Integrantes: Diego Alberto Taracena Morales 0901-12-782 Dylan Isaac Corado Urizar 0901-12-9290 Xavier Aaron Gribble Arredondo 0901-12-4346 Bryant Steve Flores 0901-08-14198
Contenido
Introduccin .................................................................................................................................................. 3 Arboles Multicamino..................................................................................................................................... 4 Arboles-B ....................................................................................................................................................... 4 Caractersticas de un rbol-B .................................................................................................................... 6 Ejemplo. ................................................................................................................................................ 6 Proceso de Eliminacin de un rbol-B .......................................................................................................... 6 Conclusiones ................................................................................................................................................. 8 Bibliografa .................................................................................................................................................... 9
Introduccin
Para almacenar muchos datos disco, es necesario una estructura de datos eficiente. Los accesos al disco son costosos en tiempo por lo que se debe evitar realizar muchos accesos a los datos. AVL es la mejor estructura para memoria principal, pero es ineficiente si se utiliza para almacenamiento secundario. Esto se debe a la cantidad de accesos necesarios para efectuar las rotaciones. Otro problema es que se requieren tantos accesos como niveles se recorran en el rbol para efectuar la bsqueda.
Arboles Multicamino
Los diferentes tipos de rboles estudiados hasta ahora fueron desarrollados para funcionar en la memoria principal de la computadora. Sin embrago, existen muchas aplicaciones en las que el volumen de informacin es tal, que los datos no caben en la memoria principal y es necesario almacenarlos, organizados en archivos en dispositivos de almacenamiento secundario. Esta organizacin de archivos de debe ser suficientemente adecuada como para recuperar los datos en forma eficiente. Es importante recordar que el tiempo necesario para localizar un registro en la memoria principal de la computadora se mide en microsegundos, mientras que el tiempo necesario para localizarlo en una pgina (contiene varios registros) en memoria secundaria. Por ejemplo disco se mide en milisegundos. El tiempo de acceso, claro est, es miles de veces ms rpido en la memoria principal que en la memoria segundaria. Considere el cado de almacenar un rbol binario en disco. Se necesitara en promedio, para localizar algunos de los nodos, log n de acceso a disco, donde n presenta el nmero de nodos del rbol y el orden del mismo, que en este caso es igual a 2. Por ejemplo si el rbol contiene 1000000 de elementos, se necesitara aproximadamente 20 accesos a disco. Ahora bien, si el rbol est organizado en pginas, de tal manera que cada pgina contenga como mnimo 100 elementos, entonces se necesitaran como mximo 3 accesos al disco. Note que los accesos a disco disminuyen de manera considerable. Existen diferentes tcnicas para la organizacin de archivos indizados, sin embargo la organizacin en arboles-B y especficamente su variante, la organizacin en arboles-B+, es la ms utilizada.
Arboles-B
Son una generalizacin de los arboles balanceados. Estos representan bsicamente un mtodo para almacenar y recuperar informacin en medios externos. Su nombre arboles-B nunca fue explicado por los autores, aunque muchos sostienen que B proviene de Bayer (Bayer y McCreight), uno de sus inventores. Este tipo de rboles, un grupo de nodos recibe el nombre de pgina. En cada pgina se almacena la informacin de un grupo de nodos y se identifica por medio de una clave o llave. En general cada pgina de un rbol B contiene de orden d contiene 2d claves como mximo y d claves como mnimo. Con esto se garantiza que cada pgina este llena como mnimo hasta la mitad. Respecto al nmero de descendientes, cada pgina de un rbol B de orden d tiene 2d+1 hijos como mximo y d+1 hijos como mnimo. Excepto la pgina raz que puede contener como mnimo 1 datos y por consiguiente solamente 2 hijos. Las pginas en general son almacenadas en dispositivos de almacenamiento secundario, a excepcin de la pgina raz que es conveniente mantenerla en la memoria principal. Son rboles 100% balanceados en su estructura, lo cual repercute en bsquedas eficientes y en accesos mnimos a disco.
Caractersticas de un rbol-B
Un rbol B de orden n es aquel que: Todas las hojas del rbol estn en el nivel inferior. Cada nodo contiene entre n y 2n elementos, excepto el nodo raz, que puede tener entre 1 y 2n elementos. Si un nodo tiene m elementos, el nodo siempre contendr m + 1 hijos si no es un nodo hoja. Un rbol B de orden n es aqul en que: Los elementos de un nodo estn ordenados linealmente. Los elementos estn organizados de tal forma que se cumple la regla de la bsqueda: a la izquierda menor, a la derecha mayor.
Ejemplo.
Para un rbol B de orden 3: Cuntos elementos mximos pueden guardar cada nodo del rbol? 6 Cuntos elementos mnimos pueden guardar cada nodo del rbol? 1 si en la raz, 3 cualquier otro nodo. Cuntos hijos mximos pueden tener un nodo? 7 Cuntos hijos mnimos pueden tener un nodo? 0 si es hoja, 2 si es raz, 4 cualquier otro nodo.
1. Si la clave a eliminar se encuentra en una pgina hoja entonces simplemente se suprimir 1.1 Si (m>=d) Se verifica que el nmero de elementos en la pgina sea valido Entonces Termina la operacin de borrado Si no Se debe bajar la clave lexicogrficamente adyacente de la pgina antecesora y sustituir esta clave por la que se encuentre ms a la derecha en el subrbol derecho o por la que se encuentre ms a la izquierda en el subrbol derecho Con este paso se logra que m, en esta pgina, siga siendo >=d Si esto no es posible, por las m de las pginas involucradas, se deben fusionar las pginas que son descendientes directas de la clave que se baja Fin 1.1 Fin 1 2. Si la clave a eliminar no se encuentra en una pgina hoja entonces Se debe sustituir por la clave que se encuentra ms a la izquierda en el subrbol derecho o por la clave que se encuentra ms a la derecha en el subrbol izquierdo 2.1 Si (m >=d) Se verifica que el nmero de elementos en la pgina sea valido Entonces Termina la operacin de borrado Si no Se debe bajar la clave lexicogrficamente adyacente de la pgina antecesora y fusionar las pginas que son descendientes directas de dicha clave Fin 2.1 Fin 2 Cabe aclarar que el proceso de fusin de pginas se puede propagar incluso hasta la raz, en cuyo caso la altura del rbol disminuye en una unidad.
Conclusiones
Cuando se tienen arboles con demasiados datos es ms eficiente usar arboles multicamino que se almacenan en la memoria secundaria y que el proceso de bsqueda resulta siendo ms rpido que en un rbol que esta almacenada en la memoria principal. Para cuando deseamos eliminar un dato que se encuentra en las hojas simplemente se elimina y se termina el proceso. Los arboles multicamino son muy eficientes al momento de trabajar con problemas de la vida real ya que usando el ejemplo de sistema de archivos se ajusta perfectamente al modelo del rbol multicamino
Bibliografa
castaeda, c. (21 de septiembre de 2012). xcodigoinformatico.blogspot.com. Obtenido de http://xcodigoinformatico.blogspot.com/2012/09/arbol-b-codigo-c-btree-code.html slideshare. (03 de febrero de 2013). slideshare.com. Obtenido de http://www.slideshare.net/r3n3sm33/estructuras-de-datos-osvaldo-cairo virux. (05 de abril de 2005). latindevelopers.com. Obtenido de http://www.latindevelopers.com/forum/arbol-b-con-c-t342.html wikipedia. (enero de 2014). wikipedia.org. Obtenido de http://es.wikipedia.org/wiki/%C3%81rbol_multicamino