eXtremeDB es un sistema de gestión de bases de datos integrado de alto rendimiento y baja latencia, compatible con ACID , que utiliza una arquitectura de sistema de base de datos en memoria (IMDS) y está diseñado para vincularse a programas basados en C / C++ . Se ejecuta en Windows , Linux y otros sistemas operativos integrados y en tiempo real .
eXtremeDB fue presentado en 2001 por McObject LLC, dirigido a sistemas integrados que se ejecutan en entornos con recursos limitados (es decir, con memoria de acceso aleatorio limitada y unidades centrales de procesamiento de potencia relativamente baja ). eXtreme DB tiene un tamaño de código pequeño, solo alrededor de 150 KB. Tiene una interfaz de programación de aplicaciones en lenguaje C nativo y código fuente disponible. eXtremeDB tiene un alto grado de portabilidad para admitir los diversos procesadores y sistemas operativos utilizados en sistemas integrados . Las primeras implementaciones por parte de los clientes incluyeron la integración en decodificadores de TV digital , sistemas de control industrial y de fabricación y dispositivos de telecomunicaciones/redes. eXtremeDB surgió para administrar lo que los analistas de la industria y McObject describen como un crecimiento significativo en la cantidad de datos administrados en dichos dispositivos. [1] [2] [3]
Las ediciones posteriores se dirigieron al mercado de software no integrado de alto rendimiento, incluidas las aplicaciones de mercados de capitales y el almacenamiento en caché en tiempo real para aplicaciones basadas en la Web, incluidas las redes sociales y el comercio electrónico. [4]
eXtremeDB admite las siguientes funciones en toda su familia de productos. [5]
eXtremeDB admite múltiples usuarios simultáneos y ofrece transacciones compatibles con ACID (según lo definido por Jim Gray [6] ) utilizando uno de dos administradores de transacciones: un mecanismo de bloqueo de múltiples lectores y un solo escritor (MURSIW) o un administrador de transacciones de control de concurrencia de múltiples versiones (MVCC) ( modelo optimista sin bloqueo). [7] [8]
eXtremeDB puede trabajar con prácticamente todos los tipos de datos del lenguaje C, incluidos los tipos complejos, como estructuras , matrices , vectores y BLOB . Se admite Unicode .
La edición de alta disponibilidad de eXtremeDB admite la replicación de bases de datos sincrónica (2-safe) y asincrónica (1-safe) , con conmutación por error automática . [9] La edición eXtremeDB Cluster proporciona agrupación de bases de datos sin compartir nada . eXtremeDB también admite el procesamiento de consultas distribuidas, en el que la base de datos se particiona horizontalmente y el DBMS distribuye el procesamiento de consultas entre varios servidores, CPU y núcleos de CPU. [10] eXtremeDB admite plataformas de cliente heterogéneas (por ejemplo, una mezcla de Windows , Linux y RTOS ) con sus funciones de agrupación y alta disponibilidad. Una única base de datos particionada puede incluir fragmentos que se ejecutan en plataformas de hardware y SO.
La edición eXtremeDB Fusion ofrece la opción de almacenamiento persistente ( disco o flash ) para tablas específicas, a través de una notación de esquema de base de datos . [11]
La edición eXtremeDB Transaction Logging registra los cambios realizados en la base de datos y utiliza este registro para recuperarse en caso de falla del dispositivo o del sistema. Esta edición incluye la tecnología eXtremeDB Data Relay que replica los cambios seleccionados en sistemas externos, como aplicaciones empresariales y sistemas de bases de datos.
La edición eXtremeSQL proporciona compatibilidad con SQL ODBC en eXtremeDB y un controlador JDBC de nivel 4, versión 4. [12] [13]
La edición eXtremeDB Kernel Mode implementa el sistema de base de datos dentro de un núcleo de sistema operativo , para proporcionar funciones de base de datos a la lógica de aplicaciones basadas en núcleo. [14]
La edición financiera de eXtremeDB ofrece funciones para gestionar datos de mercado (datos de ticks). [15] Un tipo de datos de “secuencias” admite el diseño de datos en columnas y permite que eXtremeDB ofrezca los beneficios de una base de datos orientada a columnas para gestionar datos de series temporales . La edición financiera también ofrece una biblioteca de funciones estadísticas basadas en vectores para analizar datos en secuencias y un monitor de rendimiento.
McObject publicó informes sobre pruebas de referencia que emplean eXtremeDB. Bases de datos en memoria principal frente a bases de datos en disco RAM: una prueba comparativa basada en Linux examinó el rendimiento de IMDS frente al de un DBMS en disco tradicional implementado en un disco RAM , en tareas de aplicación idénticas. El objetivo declarado de la prueba comparativa era probar la tesis de que una arquitectura optimizada de IMDS ofrece un beneficio de rendimiento más allá del proporcionado por el almacenamiento basado en memoria. [16] Otra prueba comparativa, la prueba comparativa del sistema de base de datos en memoria Terabyte-Plus (IMDS) , documentó la escalabilidad y el rendimiento de IMDS en el rango de tamaño de las bases de datos de aplicaciones empresariales grandes (en comparación con los sistemas integrados). Para la prueba, los ingenieros crearon una base de datos de 1,17 terabytes y 15,54 mil millones de filas con eXtremeDB en un sistema SGI Altix 4700 de 160 núcleos que ejecuta SUSE Linux Enterprise Server 9. [17]
En noviembre de 2012 se publicó un informe de marketing de servidores Dell con Mellanox InfiniBand . [18]
A finales de 2014, se realizaron dos informes de referencia auditados más sobre eXtremeDB Financial Edition. El primero, con fecha del 29 de octubre, evaluó el rendimiento del DBMS de McObject en hardware IBM POWER8, mientras que el segundo, del 18 de noviembre, detalló su aplicación en la computación en la nube. En 2016, se realizó un informe adicional para evaluar las capacidades de eXtremeDB Financial Edition. [19]
{{cite web}}
: CS1 maint: bot: original URL status unknown (link)Forrester Research, 13 de noviembre de 2009