Logo Studenta

EnsayoReflexivoEquipo4 - Fernando Cesar Sandoval Padilla

¡Estudia con miles de materiales!

Vista previa del material en texto

UNIVERSIDAD DE GUADALAJARA 
SISTEMA DE EDUCACION SUPERIOR 
CENTRO UNIVERSITARIO DE CIENCIAS EXACTAS E 
INGENIERIAS 
ESTRUCTURAS DE DATOS II 
( I5888) SECCIÓN D12 
 
ENSAYO REFLEXIVO 
 EQUIPO N° 4 
 
DELGADILLO GUTIERREZ, JONATAN ESAÚ 
CODIGO: 214798404 
ESQUEDA ORTIZ, ANDREA GUADALUPE 
CODIGO: 215407581 
GARIBAY GUERRA, LUIS ANGEL 
CODIGO: 215565993 
GÓMEZ GUTIÉRREZ, HUGO 
CODIGO: 218744538 
HERNANDEZ BARAJAS, DANIELA ESTEFANIA 
CODIGO: 215507977 
NAVARRO SÁNCHEZ, JORGE 
CODIGO: 218744341 
PANDURO PARTIDA, MARIA ELIZABETH 
CODIGO: 215511303 
 
MTRA. LARA LOPEZ, GRACIELA 
2020-A GUADALAJARA, 07 DE MAYO DEL 2020 
Ensayo Reflexivo 
La familia de los árboles B+ y el acceso a los archivos secuenciales indizados. 
Se trata de una forma de almacenar y procesar la información de manera tal que los 
registros se almacenan en bloques que contienen los registros, esto en lugar de 
simplemente enlistar todos los registros. Esto es bastante útil en unidades de 
almacenamiento tradicionales, ya que facilita el manejo de los datos de manera tal que 
estos tengan mayor adyacencia física (cada bloque tiene un conjunto de registros y un 
espacio físico contiguo) lo cual resulta en una mayor velocidad de transferencia de datos 
al esperar menos tiempo en búsqueda de dirección. Un beneficio adicional debido al 
funcionamiento que los discos duros, que es que tienen cúmulos con tamaños 
establecidos, los cuales normalmente no se pueden usar para almacenar datos de más 
de un archivo, es que, si se asigna un tamaño de bloque de acuerdo con el tamaño de los 
cúmulos, se evita reservar espacios en el disco que no podrán ser aprovechados (negando 
en estos casos algunos de los problemas del método). Sin embargo, esto también resulta 
en que en consultas pequeñas se puede perder algo de tiempo transfiriendo mayor 
cantidad de información a RAM que a su vez también requieren una mayor cantidad de 
RAM. 
►Parece ser un método con relevancia en su uso en unidades de disco duro, ya que en 
la actualidad es ahí donde se almacenan grandes bases de datos, que en varios contextos 
requieren del análisis de grandes cantidades de información. Vemos potencial en la forma 
de que se puede procesar una mayor cantidad de datos, ya que los tiempos de búsqueda 
tienden a representar un mayor impacto en el rendimiento que la lectura misma de todas 
maneras, y que en la actualidad los equipos de cómputo tienden a contar con cantidades 
generosas de memoria RAM que podrían almacenar bloques de tamaño considerable. 
Las operaciones con esta técnica se efectúan con una unidad mínima de tipo bloque, esto 
quiere decir que, aunque solo se busque un registro, se tomara un bloque completo, y si 
solo se desea escribir un registro, a menos que existan bloques incompletos adecuados 
para su inserción, será escrito en un nuevo bloque completo. Esto quiere decir que en un 
archivo donde se realizan muchas modificaciones comenzaran a aparecer huecos, pero 
estos mismos también facilitaran inserciones futuras sin necesidad de reconstruir el 
archivo. Esto quiere decir que, a cambio de perder un poco de efectividad en el manejo 
del espacio de memoria, se gana capacidad para manejar en archivo sin necesidad de 
tanto procesamiento del mismo a lo largo del tiempo. Como consecuencia de esto se 
reduce la cantidad de información necesaria para el procesamiento, como cantidad de 
encabezados, lo cual por otro lado ahorra un poco de espacio. 
►Respecto a este punto se tiene una perspectiva mixta. Por un lado, se vuelve más 
sencillo manejar el archivo a largo plazo cuando se transforma de manera considerable, y 
evita tener que reconstruirlo por completo (Lo cual puede no ser viable). Por el otro, en 
muchos casos se desea almacenar la información por mucho tiempo únicamente para ser 
consultada y con poca frecuencia, escenario en el cual parece tener más sentido solo 
almacenar toda la información de manera más simple, ya que los beneficios que ofrece la 
técnica se vuelven negligibles en comparación a la simple necesidad de almacenar la 
mayor cantidad de datos posible. El resto de los aspectos se pueden simplificar al balance 
que se genera al cambiar el tamaño de los bloques, si son muy grandes aumenta el tiempo 
requerido para cada consulta, disminuyendo la practicidad para consultas pequeñas, pero 
si son muy pequeñas no se obtienen tantos beneficios de optar por el método en primer 
lugar. 
El método de tener un índice de registros de longitud fija que contenga la llave del último 
registro de cada bloque y en lugar de apuntar a direcciones de registros específicas, el 
índice apunte a una dirección de bloque, combinado con el conjunto de secuencias de 
bloques, proporciona acceso secuencial indizado completo, así al buscar un registro en 
particular se consulta el índice y después se extrae el bloque correcto. Si se logra 
almacenar el índice completo en memoria RAM, aumenta considerablemente su 
desempeño, ya que se pueden usar métodos de búsqueda como el binario de manera 
efectiva y editarse rápidamente (sin necesidad de actualizar continuamente su estado en 
disco) y esto se facilita si el índice para el conjunto de secuencias se organiza como un 
árbol B, ya que, aunque sea demasiado grande puede caber por completo en la memoria 
RAM, la estructura resultante es lo que se conoce como árbol B+. 
Los índices se pueden estructurar de varias maneras, pero se aconseja utilizar 
separadores de longitud variable que busquen ser lo más funcionales posible, para 
denotar los distintos bloques y poder diferenciar las respectivas llaves que contiene cada 
uno. 
La estructura de archivos denominada árbol B+ de prefijos simples, es el índice en forma 
de árbol, para el conjunto de secuencias de bloques, como el nombre lo dice, prefijos 
simples hace referencia a que el conjunto de índice contiene prefijos de las llaves, es decir, 
las letras iniciales de las llaves o los separadores más cortos. 
►En estos sentidos se notan muchas similitudes con un índice ordinario, aunque se 
incrementa su complejidad respecto a los índices simples, ya que anteriormente habíamos 
analizado el acceso indizado o secuencial a través del orden de la llave, y no la forma de 
tener ambos tipos de acceso, como respuesta a esto se vio el uso del conjunto de 
secuencias en bloques y con un índice asociado, de manera que sea compatible con el 
almacenamiento en bloques. 
En conclusión, este método para manejo de archivos no es una mejora absoluta sobre los 
índices simples, pero hay una variedad importante de escenarios donde sus 
contribuciones representan una utilidad significativa, lo cual los vuelve una opción a tomar 
en cuenta para almacenar información en diversas aplicaciones que lo requieran.

Continuar navegando