Memorias estáticas y dinámicas y su estructura
María Angélica Sánchez López
Created on September 11, 2024
More creations to inspire you
ALL THE THINGS
Presentation
SANTIAGOVR_EN
Presentation
WWII TIMELINE WITH REVIEW
Presentation
BLENDED LEARNING
Presentation
TAKING A DEEPER DIVE
Presentation
WWII JUNE NEWSPAPER
Presentation
AUSSTELLUNG STORYTELLING
Presentation
Transcript
Estructura de Base de Datos
Memoria estática y dinámica y sus tipos de estructura
Alumna: María Angélica Sánchez López
INTRODUCCIÓN
En el ámbito de la estructura de bases de datos, los conceptos de memorias dinámicas y memorias estáticas están relacionados con la forma en que se gestionan los recursos de almacenamiento durante la ejecución de un programa o la manipulación de datos. Estos conceptos están inspirados en la gestión de memoria de los sistemas operativos y la programación, y se aplican en el contexto de bases de datos para optimizar el rendimiento y la eficiencia de las operaciones de almacenamiento y consulta de datos.
01
MEMORIA ESTÁTICA
Todo sobre la Memoria Estática
¿QUÉ ES LA MEMORIA ESTÁTICA?
La memoria estática se refiere al espacio de almacenamiento que se asigna de manera fija al momento de la creación de una estructura de datos. En bases de datos, esto puede aplicarse a tablas o estructuras que tienen un tamaño definido de antemano, donde el espacio de almacenamiento no cambia durante la vida útil de la base de datos o la aplicación.
+ INFO
+ INFO
+ INFO
+ INFO
TIpo de estructura de una memoria estátiica
Arreglos (Arrays)
Los arreglos son uno de los ejemplos más representativos de estructuras de memoria estática. Un arreglo es un conjunto de elementos del mismo tipo de datos que se almacenan en ubicaciones contiguas de memoria. El tamaño del arreglo debe definirse en el momento de su creación, lo que significa que no puede crecer ni reducirse después de haber sido declarado.
Matrices (Matrices Bidimensionales o Multidimensionales)
Las matrices son una extensión de los arreglos unidimensionales y permiten organizar los datos en más de una dimensión. Son útiles en casos donde los datos tienen una estructura tabular, como una hoja de cálculo.
Structs con Campos de Tamaño Fijo
En lenguajes de programación que permiten la creación de estructuras (structs), es posible definir una estructura con campos de tamaño fijo. Esta estructura puede contener diferentes tipos de datos (enteros, cadenas, etc.), pero el tamaño total de la estructura está predefinido.
+ INFO
+ INFO
+ INFO
+ INFO
+ INFO
CARACTERÍsTICAS
Asignación fija
Eficiencia en tiempo de acceso
Desperdicio de espacio
02
MEMORIA dinámica
Todo sobre la Memoria Dinámica
¿qué es una memoria dinámica?
La memoria dinámica, por otro lado, se asigna y libera durante la ejecución del programa o la operación de la base de datos, lo que permite una gestión más flexible y adaptativa de los recursos.
+ INFO
TIpo de estructura de una memoria DINÁMICA
Listas Enlazadas (Linked Lists)
Una lista enlazada es una colección de nodos donde cada nodo contiene un valor y una referencia (enlace o puntero) al siguiente nodo en la secuencia. A diferencia de los arreglos, no es necesario definir el tamaño de la lista al principio, ya que se puede agregar o eliminar nodos en cualquier momento.
Pilas (Stacks)
Una pila es una estructura de datos dinámica que sigue el principio LIFO (Last In, First Out), donde el último elemento en ser insertado es el primero en salir. En una pila, se pueden agregar elementos en la parte superior (operación push) y eliminar elementos desde la parte superior (operación pop).
Colas (Queues)
Una cola es una estructura de datos dinámica que sigue el principio FIFO (First In, First Out), donde el primer elemento en ser insertado es el primero en salir. Las colas son útiles para procesar tareas en orden secuencial.
+ INFO
+ INFO
Árboles
Un árbol es una estructura de datos jerárquica compuesta por nodos, donde cada nodo contiene un valor y referencias a sus nodos hijos. El tipo más común de árbol es el árbol binario, donde cada nodo tiene un máximo de dos hijos. Los árboles son dinámicos, ya que pueden expandirse o contraerse según sea necesario.
Grafos (Graphs)
Un grafo es una estructura de datos que consta de nodos (también llamados vértices) y conexiones entre ellos (aristas). Los grafos pueden ser dirigidos o no dirigidos, y permiten la representación de relaciones complejas entre datos.
+ INFO
+ INFO
+ INFO
+ INFO
+ INFO
CARACTERÍsTICAS
Asignación en tiempo de ejecución
Flexibilidad
Mayor complejidad de gestión
conclusión
Las estructuras de memoria dinámica son esenciales en situaciones donde el tamaño de los datos es variable o impredecible. Estas estructuras ofrecen una gran flexibilidad para gestionar datos, aunque su uso puede implicar un mayor costo en la administración de la memoria (p. ej., sobrecarga de punteros) y potencialmente un impacto en el rendimiento (p. ej., fragmentación o rehashing). La selección de una estructura dinámica adecuada depende de los requerimientos específicos de la aplicación, como la velocidad de acceso, el costo de inserción/eliminación y el uso eficiente de la memoria.
GRACIAS
Por su atención
Ejemplo
EJEMPLO
El tamaño de la memoria se define en el momento de la creación y no puede cambiar durante la ejecución del programa.
EJEMPLO
Ejemplo
Un ejemplo en el contexto de bases de datos sería una tabla que siempre almacenará un número fijo de registros, como un historial de eventos limitado en tiempo.
Al ser un espacio preasignado, los accesos y las modificaciones son más rápidos y directos.
Si el tamaño estático asignado es demasiado grande para las necesidades reales, puede resultar en un desperdicio de espacio de almacenamiento.
Ejemplo
Un ejemplo en el contexto de bases de datos sería una tabla que siempre almacenará un número fijo de registros, como un historial de eventos limitado en tiempo.
Ejemplo
Un ejemplo en el contexto de bases de datos sería una tabla que siempre almacenará un número fijo de registros, como un historial de eventos limitado en tiempo.
La administración de la memoria dinámica puede ser más compleja debido a la necesidad de manejar la asignación y liberación de memoria, así como evitar problemas como la fragmentación.
Se puede manejar el crecimiento o la reducción de las estructuras de datos de manera eficiente, evitando el desperdicio de memoria.
Ejemplo
EJEMPLO
EJEMPLO
EJEMPLO
EJEMPLO
El espacio de almacenamiento se asigna o libera conforme se necesita, lo que permite adaptarse a cambios en la cantidad de datos que se almacenan.