stringtranslate.com

Base de datos en memoria

Una base de datos en memoria ( IMDb , o sistema de base de datos de memoria principal ( MMDB ) o base de datos residente en memoria ) es un sistema de gestión de bases de datos que se basa principalmente en la memoria principal para el almacenamiento de datos informáticos . Se contrasta con los sistemas de gestión de bases de datos que emplean un mecanismo de almacenamiento en disco . Las bases de datos en memoria son más rápidas que las bases de datos optimizadas en disco porque el acceso al disco es más lento que el acceso a la memoria y los algoritmos de optimización interna son más simples y ejecutan menos instrucciones de CPU. El acceso a los datos en la memoria elimina el tiempo de búsqueda al consultar los datos, lo que proporciona un rendimiento más rápido y predecible que el disco. [1] [2]

Las aplicaciones en las que el tiempo de respuesta es crítico, como las que ejecutan equipos de redes de telecomunicaciones y redes de publicidad móvil , a menudo utilizan bases de datos de memoria principal. [3] Las IMDB han ganado mucha tracción, especialmente en el espacio de análisis de datos , a partir de mediados de la década de 2000 , principalmente debido a los procesadores de múltiples núcleos que pueden abordar una memoria grande y debido a la RAM menos costosa . [4] [5]

Un posible obstáculo técnico con el almacenamiento de datos en memoria es la volatilidad de la RAM. En particular, en caso de una pérdida de energía, intencional o no, los datos almacenados en la RAM volátil se pierden. [6] Con la introducción de la tecnología de memoria de acceso aleatorio no volátil , las bases de datos en memoria podrán funcionar a toda velocidad y mantener los datos en caso de un corte de energía. [7] [8] [9]

Soporte ACID

En su forma más simple, las bases de datos de la memoria principal almacenan datos en dispositivos de memoria volátil . Estos dispositivos pierden toda la información almacenada cuando se queda sin energía o se reinicia. En este caso, se puede decir que las IMDB carecen de compatibilidad con la parte de "durabilidad" de las propiedades ACID (atomicidad, consistencia, aislamiento, durabilidad). Las IMDB basadas en memoria volátil pueden admitir, y a menudo lo hacen, las otras tres propiedades ACID de atomicidad, consistencia y aislamiento.

Muchos IMDB han añadido durabilidad a través de los siguientes mecanismos:

Algunas IMDB permiten que el esquema de la base de datos especifique diferentes requisitos de durabilidad para áreas seleccionadas de la base de datos; por lo tanto, los datos que cambian más rápido y que se pueden regenerar fácilmente o que no tienen significado después de un apagado del sistema no necesitarían registrarse para su durabilidad (aunque tendrían que replicarse para lograr una alta disponibilidad), mientras que la información de configuración se marcaría como que necesita preservación.

Híbridos con bases de datos en disco

Si bien el almacenamiento de datos en memoria ofrece ventajas de rendimiento, es un método costoso de almacenamiento de datos. Una forma de aprovechar los beneficios del almacenamiento en memoria y limitar sus costos es almacenar los datos a los que se accede con mayor frecuencia en memoria y el resto en disco. Dado que no existe una distinción estricta entre qué datos se deben almacenar en memoria y cuáles en disco, algunos sistemas actualizan dinámicamente dónde se almacenan los datos en función del uso de los mismos. [10] Este enfoque es sutilmente diferente del almacenamiento en caché , en el que se almacenan en caché los datos a los que se accedió más recientemente , en lugar de almacenar en memoria los datos a los que se accede con mayor frecuencia .

La flexibilidad de los enfoques híbridos permite lograr un equilibrio entre:

En la industria de la computación en la nube , han surgido los términos "temperatura de los datos" o "datos calientes" y "datos fríos" para describir cómo se almacenan los datos en este sentido. [11] Los datos calientes se utilizan para describir datos de misión crítica a los que se debe acceder con frecuencia, mientras que los datos fríos describen datos que se necesitan con menos frecuencia y con menos urgencia, como los datos guardados para fines de archivo o auditoría. Los datos calientes deben almacenarse de manera que ofrezcan una recuperación y modificación rápidas, lo que a menudo se logra mediante almacenamiento en memoria, pero no siempre. Los datos fríos, por otro lado, se pueden almacenar de una manera más rentable y se acepta que el acceso a los datos probablemente será más lento en comparación con los datos calientes. Si bien estas descripciones son útiles, "caliente" y "frío" carecen de definiciones concretas. [11]

La eficiencia de fabricación es otro motivo para seleccionar un sistema de base de datos combinado en memoria y en disco. Algunas líneas de productos de dispositivos, especialmente en electrónica de consumo , incluyen algunas unidades con almacenamiento permanente y otras que dependen de la memoria para el almacenamiento ( por ejemplo, los decodificadores ). Si dichos dispositivos requieren un sistema de base de datos, un fabricante puede adoptar un sistema de base de datos híbrido a un coste más bajo y más alto , y con menos personalización del código, en lugar de utilizar bases de datos independientes en memoria y en disco, respectivamente, para sus productos sin disco y con disco.

El primer motor de base de datos que admitía tablas en memoria y en disco en una única base de datos, WebDNA , se lanzó en 1995.

Memoria de almacenamiento

Otra variante implica grandes cantidades de memoria no volátil en el servidor, por ejemplo, chips de memoria flash como memoria direccionable en lugar de estructurada como matrices de discos. Una base de datos en esta forma de memoria combina una velocidad de acceso muy rápida con persistencia a pesar de reinicios y cortes de energía. [12]

Bases de datos en memoria notables

Véase también

Notas

  1. ^ "Definición: base de datos en memoria". WhatIs.com . Consultado el 19 de enero de 2013 .
  2. ^ Michael Vizard. "El auge de las bases de datos en memoria". Slashdot. Archivado desde el original el 1 de febrero de 2013. Consultado el 19 de enero de 2013 .
  3. ^ "TeleCommunication Systems se une como revendedor de TimesTen; los operadores móviles y las compañías telefónicas obtienen una plataforma en tiempo real para servicios basados ​​en la ubicación". Business Wire . 24 de junio de 2002.
  4. ^ "La caída de los precios de la memoria RAM impulsa el aumento de las bases de datos en memoria". SAP. Archivado desde el original el 4 de noviembre de 2013. Consultado el 19 de enero de 2013 .
  5. ^ "El auge de las bases de datos en memoria afecta a una amplia gama de trabajos". Dice.com . 13 de julio de 2012.
  6. ^ "Computación en memoria: ¿qué ocurre cuando se corta la energía?". 18 de febrero de 2015. Consultado el 10 de marzo de 2017 .
  7. ^ Históricamente, la RAM no se utilizaba como un almacén de datos persistente y, por lo tanto, la pérdida de datos en estos casos no era un problema. Persistencia de todo el sistema con memorias no volátiles http://research.microsoft.com/apps/pubs/default.aspx?id=160853
  8. ^ El sombrío futuro de la memoria flash NAND http://research.microsoft.com/apps/pubs/default.aspx?id=162804
  9. ^ AGIGARAM NVDIMM guarda datos en caso de falla del sistema https://www.embedded.com/electronics-products/electronic-product-reviews/real-time-and-performance/4422291/AGIGARAM-NVDIMM-saves-data-through-system-failure
  10. ^ "Teradata entra en la batalla de la memoria de forma inteligente ZDNet". ZDNet . Consultado el 28 de julio de 2017 .
  11. ^ ab "Cuál es la diferencia: almacenamiento de datos en caliente y en frío" . Consultado el 28 de julio de 2017 .
  12. ^ "Verdaderamente estos son los AÑOS DORADOS del almacenamiento".
  13. ^ "¿Qué es SAP HANA?". SAP . Consultado el 1 de agosto de 2024 .
  14. ^ "Base de datos en memoria Oracle TimesTen".{{cite web}}: CS1 maint: estado de la URL ( enlace )

Referencias