eXtremeDB es un sistema de gestión de bases de datos embebidas compatible con ACID que utiliza una arquitectura en memoria. Se ejecuta en Windows , Linux y otros sistemas operativos embebidos y en tiempo real .
Historia
eXtremeDB fue presentado en 2001 por McObject LLC, dirigido a sistemas embebidos que operan en entornos con recursos limitados (es decir, con memoria RAM limitada y unidades centrales de procesamiento de potencia relativamente baja ). El tamaño del código de eXtremeDB es de aproximadamente 150 KB. Cuenta con una interfaz de programación de aplicaciones (API) nativa en lenguaje C y código fuente disponible. eXtremeDB es compatible con diversos procesadores y sistemas operativos utilizados en sistemas embebidos . Las primeras implementaciones por parte de los clientes incluyeron la integración en decodificadores de televisión digital , sistemas de control industrial y de fabricación, y dispositivos de telecomunicaciones/redes. eXtremeDB surgió para gestionar lo que los analistas de la industria, y McObject, describen como un crecimiento significativo en la cantidad de datos gestionados en dichos dispositivos. [ 1 ] [ 2 ] [ 3 ]
Las ediciones posteriores se dirigieron al mercado de software empresarial, incluidas las aplicaciones para 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 ]
Características del producto
Motor Core eXtremeDB
eXtremeDB admite las siguientes características en toda su familia de productos. [ 5 ]
Interfaces de programación de aplicaciones
- Una API C / C++ nativa, segura en cuanto a tipos y con navegación.
- API SQL ODBC / JDBC (incluida en la edición eXtremeSQL)
- API nativa de C# ( .NET )
- Interfaz nativa de Java (JNI)
- Pitón
Índices de bases de datos
- Árbol B
- Árbol R
- Árbol de raíz o árbol de Patricia
- árbol kd
- Tabla hash
- Índice de trigramas
- Índices personalizados
Mecanismos de concurrencia
eXtremeDB admite múltiples usuarios concurrentes y ofrece transacciones compatibles con ACID (según la definición de Jim Gray [ 6 ] ) mediante dos gestores de transacciones: un mecanismo de bloqueo de múltiples lectores y un solo escritor (MURSIW) o un gestor de transacciones de control de concurrencia multiversión (MVCC) ( modelo optimista sin bloqueo). [ 7 ] [ 8 ]
Tipos de datos admitidos
eXtremeDB puede trabajar con prácticamente todos los tipos de datos del lenguaje C, incluidos los tipos complejos como estructuras , matrices , vectores y BLOBs . Admite Unicode .
Seguridad
- Verificación de redundancia cíclica (CRC) a nivel de página
- cifrado AES
- Capa de sockets seguros
Características opcionales
Capacidades de gestión de bases de datos distribuidas
La edición de alta disponibilidad de eXtremeDB admite replicación de base de datos síncrona (2-safe) y asíncrona (1-safe) , con conmutación por error automática . [ 9 ] La edición Cluster de eXtremeDB proporciona agrupamiento de bases de datos sin recursos compartidos . eXtremeDB también admite 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 combinación de Windows , Linux y RTOS ) con sus funciones de agrupamiento y alta disponibilidad. Una única base de datos particionada puede incluir fragmentos que se ejecutan en plataformas de hardware y sistemas operativos.
Almacenamiento híbrido
La edición eXtremeDB Fusion ofrece la opción de almacenamiento persistente ( disco o memoria flash ) para tablas específicas, a través de una notación de esquema de base de datos . [ 11 ]
Registro de transacciones
La edición eXtremeDB Transaction Logging registra los cambios realizados en la base de datos y utiliza este registro para recuperarse en caso de fallo 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.
SQL ODBC/JDBC
La edición eXtremeSQL proporciona soporte para SQL ODBC en eXtremeDB y un controlador JDBC de nivel 4 versión 4. [ 12 ] [ 13 ]
Implementación en modo kernel
La edición eXtremeDB Kernel Mode implementa el sistema de base de datos dentro del núcleo del sistema operativo para proporcionar funciones de base de datos a la lógica de las aplicaciones basadas en el núcleo. [ 14 ]
Funcionalidades para la gestión de datos de mercado
La edición financiera de eXtremeDB proporciona funciones para la gestión de datos de mercado (datos de ticks). [ 15 ] Un tipo de datos de "secuencias" admite la disposición de datos en columnas y permite que eXtremeDB ofrezca las ventajas de una base de datos orientada a columnas para el manejo de datos de series temporales . La edición financiera también proporciona una biblioteca de funciones estadísticas basadas en vectores para analizar datos en secuencias y un monitor de rendimiento.
Puntos de referencia
McObject publicó informes sobre pruebas de rendimiento que empleaban eXtremeDB. El informe Main-Memory vs. RAM-Disk Databases: a Linux-Based Benchmark examinó el rendimiento de IMDS frente al de un DBMS tradicional en disco implementado en un disco RAM , en tareas de aplicación idénticas. El objetivo declarado de la prueba era comprobar la tesis de que una arquitectura optimizada de IMDS ofrece una ventaja de rendimiento superior a la proporcionada por el almacenamiento basado en memoria. [ 16 ] Otra prueba, la Terabyte-Plus In-Memory Database System (IMDS) Benchmark , documentó la escalabilidad y el rendimiento de IMDS en el rango de tamaño de las bases de datos de aplicaciones empresariales grandes (frente a los sistemas embebidos). Para la prueba, los ingenieros crearon una base de datos de 1,17 terabytes y 15.540 millones de filas con eXtremeDB en un sistema SGI Altix 4700 de 160 núcleos que ejecutaba SUSE Linux Enterprise Server 9. [ 17 ]
En noviembre de 2012 se publicó un informe de marketing sobre los servidores Dell con Mellanox InfiniBand . [ 18 ]
A finales de 2014, se publicaron dos informes de evaluación comparativa auditados adicionales dedicados a eXtremeDB Financial Edition. El primero, con fecha del 29 de octubre, evaluó el rendimiento del sistema de gestión de bases de datos (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 ]
Véase también
Referencias
- ↑ Datos fríos y duros que son profundos , eeProductCenter (EE Times) 28/2/05
- ↑ "¿Recuerdas el principio KISS? | Blogs de Forrester" . Archivado del original el 29/10/2013 . Consultado el 26/01/2012 .
{{cite web}}: CS1 maint: bot: estado de la URL original desconocido ( enlace ) Forrester Research, 13/11/2009 - ↑ Reinventando la tecnología de bases de datos integradas para sistemas embebidos y dispositivos inteligentes . Documento técnico de McObject alojado en Scribd.com, 2009.
- ↑ El nuevo negocio de McObject no se parece en nada a Embedded , Blog de software embebido, VDC Research, 30/06/2010
- ↑ Características principales de eXtremeDB , http://www.mcobject.com
- ↑ Gray, Jim y Reuter, Andreas (1993), Procesamiento de transacciones distribuidas: conceptos y técnicas, Morgan Kaufmann, ISBN 1-55860-190-2
- ↑ McObject actualiza el sistema de base de datos en tiempo real eXtremeDB , Dr. Dobb's Journal, 11/9/2009
- ↑ Gerhard Weikum; Gottfried Vossen (2002). "5 Control de concurrencia multiversión". Sistemas de Información Transaccional. Morgan Kaufman. págs. 211-213. ISBN 1-55860-508-8
- ↑ Base de datos que sirve a sistemas embebidos con una disponibilidad del 99,9
- ↑ "Base de datos en memoria lanzada en versión clustering" . Consultado el 26 de enero de 2012 .
{{cite web}}: CS1 maint: servicio de archivado obsoleto ( enlace ) , LinuxDevices.com, 20/07/2011 - ↑ McObject lanza la base de datos integrada eXtremeDB Fusion , Noticias de productos electrónicos, 3/5/2007. Enlace obsoleto archivado el 22/1/2013 en archive.today.
- ↑ McObject añade la API ODBC a eXtremeDB , EE Times, 8/8/2007
- ↑ "Los sistemas de gestión de bases de datos en memoria impulsan Java" . Consultado el 26 de enero de 2012 .
{{cite web}}Mantenimiento de CS1: se deshabilitaron el servicio de archivado ( enlace ) , SQL y las capacidades de alta disponibilidad. LinuxDevices.com, 16/11/2011 - ↑ El modo kernel obtiene datos más rápido . Embedded Computing Design, 4/3/2008
- ↑ "Página principal de eXtremeDB Financial Edition" . Archivado del original el 15 de enero de 2013. Consultado el 26 de diciembre de 2012 .
- ↑ Examinando las bases de datos de la memoria principal. Archivado el 10/03/2012 en Wayback Machine , iApplianceWeb, 04/01/2002
- ↑ Prueba de rendimiento de la base de datos en memoria Terabyte-Plus , http://www.mcobject.com
- ↑ "Sitio web del Centro de Análisis de Tecnología de Valores" . Consultado el 26 de diciembre de 2012 .
{{cite web}}: CS1 maint: servicio de archivado obsoleto ( enlace ) - ↑ "Informe de STAC: eXtremeDB e IBM a gran escala bajo STAC-M3" . Sitio web de STAC . 9 de mayo de 2016. Consultado el 17 de marzo de 2017 .
Enlaces externos
- Sistemas de gestión de bases de datos propietarios
- Bases de datos integradas
- Software relacionado con bases de datos para Linux