SequoiaDB es una base de datos NewSQL multimodelo .
SequoiaDB proporciona NewSQL distribuido, sistema de archivos distribuido y almacenamiento de objetos , y modos de almacenamiento NoSQL de alto rendimiento, correspondientes a transacciones en línea distribuidas, gestión de contenido y datos no estructurados , así como gestión masiva de datos y escenarios de acceso de alto rendimiento.
El primer lanzamiento de SequoiaDB fue en 2013 y SequoiaDB se convirtió en código abierto en diciembre de 2014. La última versión de SequoiaDB es la v3.0.
En 2017 y 2018, SequoiaDB aparece en el informe de bases de datos de Gartner y es el primer proveedor de bases de datos chino incluido en la lista. [1]
El motor de base de datos SequoiaDB está bajo la licencia pública general GNU Affero (AGPL V 3.0), y los clientes, controladores y conectores están bajo la licencia Apache V2.0. [2]
SequoiaDB aplica una estructura distribuida. [3] En un terminal de cliente (o un terminal de aplicación), las aplicaciones locales o remotas están vinculadas a la biblioteca de cliente de SequoiaDB. Las aplicaciones locales o remotas se comunican con el nodo de catálogo mediante el protocolo TCP/IP . El nodo de catálogo no almacena ningún dato de usuario. Es solo un nodo que recibe solicitudes y las distribuye a los nodos de datos de destino. El nodo de coordenadas almacena información de metadatos del sistema. Los nodos de coordenadas obtienen la ubicación de los datos en los nodos de datos comunicándose con los nodos de catálogo. Los nodos de datos se utilizan para almacenar la información de datos de los usuarios.
SequoiaDB 3.0 utiliza una arquitectura "Storage-SQL", en la que la capa SQL y la capa del motor de almacenamiento son independientes entre sí; arquitecturas similares también aparecen en muchas bases de datos distribuidas de nueva generación, como Aurora de AWS .
Transacciones y ACID : SequoiaDB ofrece compatibilidad total con ACID y transacciones entre nodos y clústeres. ACID es la base de una base de datos transaccional. SequoiaDB 3.0 es totalmente compatible con ACID y es totalmente compatible con atomicidad, consistencia, aislamiento y durabilidad (ACID).
Compatibilidad con SQL estándar: SequoiaDB proporciona un complemento de motor SQL distribuido llamado SequoiaSQL, que admite SQL-2003 estándar y MySQL/PostgreSQL tanto a nivel de sintaxis como de protocolo.
Modelo múltiple: SequoiaDB admite datos relacionales (estructurados), datos de objetos (no estructurados) y datos JSON (semiestructurados) al mismo tiempo. Como motor de almacenamiento, SequoiaDB utiliza el modelo de almacenamiento de datos JSON orientado a documentos. El almacenamiento basado en JSON es perfecto para integrar los datos heterogéneos dentro de la empresa y proporciona una forma estándar.
HTAP : El DBMS operativo está evolucionando, con nuevos participantes innovadores y operadores existentes que respaldan la capacidad analítica del DBMS. SequoiaDB tiene su conector Spark para integrarse con Spark. Puede usarse como fuente de datos de Spark y brindar soporte a Spark SQL.
Recuperación ante desastres: SequoiaDB utiliza la arquitectura MPP para brindar servicios nativos de GDPS. Tiene la flexibilidad de implementarse según los requisitos de alta disponibilidad del cliente. SequoiaDB admite centros de datos activos-activos según la capacidad de la red. La implementación de SequoiaDB para centros de datos duales en la misma ciudad funciona perfectamente. Pero es difícil si los centros de datos están muy lejos, por ejemplo, centros de datos en diferentes ciudades.
SequoiaDB admite muchos lenguajes de programación, incluidos C , C++ , C# , Java , PHP , Python , etc. [4]