TokuDB


TokuDB es un motor de almacenamiento de código abierto y alto rendimiento para MySQL y MariaDB . Esto se logra mediante el uso de un índice de árbol fractal . Es escalable , compatible con ACID y MVCC , proporciona mejoras de consulta basadas en indexación , ofrece modificaciones de esquema en línea y reduce el retraso de replicación tanto para las unidades de disco duro como para la memoria flash .

TokuDB está incluido en Opmon basado en Percona Server , MariaDB y Nagios . Sin embargo, está en desuso en Percona Server 8 y MariaDB 10.5.

TokuDB utiliza una estructura de datos de árbol de índice de árbol Fractal que mantiene los datos ordenados y permite búsquedas y acceso secuencial al mismo tiempo que un árbol B pero con inserciones y eliminaciones que son asintóticamente más rápidas que un árbol B. Los árboles fractales también permiten inyectar mensajes en el árbol de tal manera que los cambios de esquema (como agregar o eliminar una columna , o agregar un índice) se pueden realizar en línea y en segundo plano. [3] Como resultado, se pueden mantener más índices sin que disminuya el rendimiento. Esto se debe a que agregar datos a los índices tiende a estresar el rendimiento de los árboles B, pero funciona bien en los índices de árboles fractales. [4]

Los índices de árbol fractal se pueden aplicar a una serie de aplicaciones caracterizadas por el análisis casi en tiempo real de los datos de transmisión. Se pueden utilizar como capa de almacenamiento de una base de datos o como capa de almacenamiento de un sistema de archivos. Cuando se utilizan en una base de datos, se pueden utilizar en cualquier entorno en el que se utilice un árbol B, con un rendimiento mejorado. Los ejemplos incluyen: gestión de eventos de red, redes de publicidad en línea, análisis de flujo de clics y gestión de control de tráfico aéreo. [5] Otros usos incluyen el rendimiento acelerado del rastreador para motores de búsqueda para redes socialessitios También se puede utilizar para crear índices y columnas en línea, lo que permite flexibilidad de consulta para la personalización del comercio electrónico. También es adecuado para mejorar el rendimiento y reducir las cargas existentes en los sitios web transaccionales. En general, funciona bien en aplicaciones que deben almacenar simultáneamente datos de archivos de registro y ejecutar consultas ad hoc .

Este enfoque para construir sistemas eficientes en memoria fue originalmente desarrollado conjuntamente por investigadores del Instituto de Tecnología de Massachusetts , [6] [7] Universidad de Rutgers, [8] y la Universidad de Stony Brook . [9]

TokuDB se nombra como una de las tecnologías que permiten grandes datos en MySQL. [10] Tokutek fue finalista de Startup Showcase en la Conferencia O'Reilly Strata 2012 sobre big data. [11]