eXtremeDB es un sistema de gestión de bases de datos integrado de alto rendimiento, baja latencia y 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 ++ . Funciona en Windows , Linux y otros sistemas operativos integrados y en tiempo real.
Desarrollador (es) | McObject LLC. |
---|---|
Lanzamiento estable | 8.0 / mayo de 2018 |
Sistema operativo | Multiplataforma |
Tipo | DBMS |
Licencia | Licencia comercial |
Sitio web | www |
Historia
McObject LLC introdujo eXtremeDB en 2001, 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 relativamente baja potencia ). Las características de eXtremeDB que atraen a este mercado incluyen un tamaño de código pequeño (aproximadamente 150 KB), una interfaz de programación de aplicaciones en lenguaje C nativo , código fuente disponible y un alto grado de portabilidad (para admitir los diversos procesadores y sistemas operativos utilizados en los sistemas integrados ). Las primeras implementaciones de los clientes incluyen la integración en la televisión digital set-top boxes , y la fabricación de sistemas de control industrial y de telecomunicaciones / dispositivos de red. 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 los mercados de capital ( comercio algorítmico , motores de búsqueda de pedidos ) 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 funciones en toda su familia de productos. [5]
Interfaces de programación de aplicaciones
- Una API C / C ++ de navegación nativa y segura para los tipos
- API SQL ODBC / JDBC (incluida en la edición eXtremeSQL)
- API nativa de C # ( .NET )
- Interfaz nativa de Java (JNI)
- Pitón
Índices de base de datos
- Árbol B
- Árbol R
- Radix tree o Patricia trie
- árbol kd
- Tabla de picadillo
- Índice de trigram
- Índices personalizados
Mecanismos de concurrencia
eXtremeDB soporta múltiples usuarios concurrentes, ofreciendo transacciones que cumplen con ACID (como lo define Jim Gray [6] ) usando cualquiera de dos administradores de transacciones: un mecanismo de bloqueo de múltiples lectores, un solo escritor (MURSIW) o un administrador de transacciones de control de concurrencia de múltiples versiones (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, que incluyen estructuras , matrices , vectores y BLOB . Se admite Unicode .
Seguridad
- Comprobación de redundancia cíclica a nivel de página (CRC)
- Cifrado AES
- Capa de enchufes seguros
Características opcionales
Habilidades de gestión de bases de datos distribuidas
La edición de alta disponibilidad de eXtremeDB admite la replicación de bases de datos síncrona (2 segura) y asíncrona (1 segura) , con conmutación por error automática . [9] La edición eXtremeDB Cluster proporciona la agrupación en clústeres de bases de datos sin compartir . 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 / o 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 agrupación en clúster y alta disponibilidad. Una sola base de datos particionada puede incluir fragmentos que se ejecutan en una combinación de plataformas de hardware y sistema operativo
Almacenamiento híbrido
La edición eXtremeDB Fusion brinda 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]
Registro de transacciones
La edición eXtremeDB Transaction Logging mantiene un registro de los cambios realizados en la base de datos y utiliza este registro para proporcionar recuperación en caso de falla del dispositivo o del sistema. Esta edición incluye la tecnología eXtremeDB Data Relay que replica cambios seleccionados en sistemas externos como aplicaciones empresariales y sistemas de bases de datos.
SQL ODBC / JDBC
La edición eXtremeSQL proporciona soporte de SQL ODBC en eXtremeDB y un controlador JDBC de versión 4, nivel 4 . [12] [13]
Implementación en modo kernel
La edición eXtremeDB Kernel Mode despliega el sistema de base de datos dentro de un kernel del sistema operativo , para proporcionar funciones de base de datos a la lógica de las aplicaciones basadas en el kernel. [14]
Funciones para la gestión de datos de mercado
eXtremeDB Financial Edition proporciona funciones para administrar datos de mercado ( datos de ticks) en aplicaciones como negociación algorítmica y comparación de órdenes . [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 en el manejo de datos de series de tiempo . Financial Edition también proporciona una biblioteca de funciones estadísticas basadas en vectores para analizar datos en secuencias y un monitor de rendimiento.
Benchmarks
McObject publicó informes sobre pruebas comparativas que emplean eXtremeDB. Bases de datos de memoria principal frente a disco RAM: un punto de referencia basado en Linux examinó el rendimiento de IMDS en comparación con el de un DBMS en disco tradicional implementado en un disco RAM , en tareas de aplicación idénticas. El objetivo declarado del punto de referencia era probar la tesis de que una arquitectura optimizada de IMDS ofrece un beneficio de rendimiento más allá del que proporciona el almacenamiento basado en memoria. [16] Otro punto de referencia, el 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 de grandes empresas (frente a 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 para servidores Dell con Mellanox InfiniBand . [18]
A finales de 2014, dos informes comparativos auditados adicionales se centraron en eXtremeDB Financial Edition. Un informe del 29 de octubre evaluó el DBMS de McObject en hardware IBM POWER8. Un informe del 18 de noviembre documentó el uso de la computación en la nube . En 2016, otro informe midió eXtremeDB Financial Edition. [19]
Ver también
- Bases de datos integradas
- Bases de datos en memoria
- NoSQL : otro término de marketing
Referencias
- ^ Datos fríos y duros que son profundos , eeProductCenter (EE Times) 28/02/05
- ^ "Copia archivada" . Archivado desde el original el 29 de octubre de 2013 . Consultado el 26 de enero de 2012 .CS1 maint: copia archivada como título ( enlace ) CS1 maint: bot: estado de URL original desconocido ( enlace ) Forrester Research, 13/11/2009
- ^ Reinventar la tecnología de bases de datos integradas para sistemas integrados y dispositivos inteligentes . Informe técnico de McObject alojado en Scribd.com, 2009
- ^ El nuevo negocio de McObject se parece a cualquier cosa , blog de software integrado, investigación de VDC, 30/6/2010
- ^ Funciones clave de eXtremeDB , 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, 9/11/2009
- ^ Gerhard Weikum; Gottfried Vossen (2002). "5 Control de concurrencia multiversión". Sistemas de información transaccional. Morgan Kaufmann. págs. 211–213. ISBN 1-55860-508-8
- ^ La base de datos sirve a sistemas integrados de cinco nueves , eWeek, 12/03/2003
- ^ "Base de datos en memoria lanzada en versión de agrupación" . Archivado desde el original el 3 de septiembre de 2012 . Consultado el 26 de enero de 2012 ., LinuxDevices.com, 20/7/2011
- ^ McObject lanza la base de datos incorporada eXtremeDB Fusion , Electronic Product News, 5/3/2007 Archivado 2013-01-22 en archive.today
- ^ McObject agrega la API de ODBC a eXtremeDB , EE Times, 8/8/2007 [ enlace muerto ]
- ^ "DBMS en memoria impulsa Java" . Archivado desde el original el 9 de septiembre de 2012 . Consultado el 26 de enero de 2012 ., SQL y HA. LinuxDevices.com, 16/11/2011 [ enlace muerto ]
- ^ El modo Kernel obtiene datos más rápido . Diseño de Computación Integrada, 4/3/2008 [ enlace muerto ]
- ^ "Página de inicio de eXtremeDB Financial Edition" . Consultado el 26 de diciembre de 2012 .
- ^ Examinando las bases de datos de la memoria principal archivadas el 10 demarzo de 2012en Wayback Machine , iApplianceWeb, 1/4/2002
- ^ Punto de referencia de la base de datos en memoria Terabyte-Plus , www.mcobject.com
- ^ "Sitio web del Centro de análisis de tecnología de valores" . Archivado desde el original el 3 de febrero de 2013 . Consultado el 26 de diciembre de 2012 .
- ^ "Informe STAC: eXtremeDB e IBM a escala bajo STAC-M3" . Sitio web de STAC . 9 de mayo de 2016 . Consultado el 17 de marzo de 2017 .
enlaces externos
- Página web oficial , McObject