Nueva versión del SGBD ArangoDB 3.6

publicado lanzamiento de un DBMS multipropósito ArangoDB 3.6, que proporciona modelos flexibles para almacenar documentos, gráficos y datos de valores clave. El trabajo con la base de datos se realiza a través de un lenguaje de consulta similar a SQL. AQL o mediante extensiones especiales en JavaScript. Los métodos de almacenamiento de datos cumplen con ACID (Atomicidad, Consistencia, Aislamiento, Durabilidad), admiten transacciones y brindan escalabilidad tanto horizontal como vertical. El DBMS se puede administrar a través de una interfaz web o un cliente de consola. Arango SH. Código ArangoDB distribuido por con licencia Apache 2. El proyecto está escrito en C y JavaScript.

Características clave de ArangoDB:

  • La capacidad de prescindir de definir un esquema de almacenamiento de datos (sin esquema): los datos se estructuran en forma de documentos en los que los metadatos y la información sobre la estructura están separados de los datos del usuario;
  • Soporte para usar ArangoDB como servidor para aplicaciones web en JavaScript con la capacidad de acceder a la base de datos a través de REST/Web API;
  • Usar JavaScript para aplicaciones de navegador que acceden a la base de datos y para controladores ejecutados en el lado DBMS;
  • Arquitectura multiproceso que distribuye la carga entre todos los núcleos de la CPU;
  • Un modelo de almacenamiento de datos flexible que puede combinar pares clave-valor, documentos y parámetros que definen las relaciones entre registros (proporciona herramientas para atravesar los vértices del gráfico);
  • Se pueden combinar diferentes modelos de representación de datos (documentos, gráficos y pares clave-valor) en una consulta, lo que simplifica la agregación de datos heterogéneos;
  • Soporte para consultas de fusión (JOIN);
  • La capacidad de seleccionar el tipo de índice que corresponde a las tareas que se están resolviendo (por ejemplo, puede utilizar el índice para búsqueda de texto completo);
  • Fiabilidad personalizable: la propia aplicación puede determinar qué es más importante para ella: mayor fiabilidad o mayor rendimiento;
  • Almacenamiento eficiente que aprovecha al máximo el hardware moderno (como los SSD) y puede utilizar cachés de gran tamaño;
  • Transacciones: la capacidad de ejecutar consultas en múltiples documentos o colecciones a la vez con coherencia y aislamiento de transacciones opcionales;
  • Soporte para replicación y fragmentación: la capacidad de crear configuraciones maestro-esclavo y distribuir conjuntos de datos a diferentes servidores según una determinada característica;
  • Se proporciona un marco de JavaScript para crear microservicios. Foxx, ejecutado dentro de un servidor DBMS con acceso directo a los datos.

Cambiospropuesto en la versión ArangoDB 3.6:

  • Se ha optimizado el rendimiento de las subconsultas, así como las operaciones ACTUALIZAR y REEMPLAZAR;
  • Se ha implementado la capacidad de paralelizar la ejecución de consultas AQL, lo que permite reducir el tiempo de recolección de datos distribuidos en diferentes nodos del cluster;
  • Se implementó la materialización retrasada de documentos, lo que permite en algunas situaciones eliminar la necesidad de recuperar por completo documentos irrelevantes;
  • Al escanear documentos, se garantiza el descarte temprano de los documentos que no coinciden con el filtro especificado;
  • Se ha mejorado el motor de búsqueda de texto completo ArangoSearch, lo que admite clasificaciones basadas en la similitud de datos. Se agregó soporte de analizador para autocompletar consultas, funciones TOKENS() y PHRASE() implementadas para generar consultas de búsqueda dinámicamente;
  • Se agregó la configuración maxRuntime para limitar selectivamente el tiempo de ejecución de la consulta;
  • Se agregó la opción “—query.optimizer-rules” para controlar la activación de ciertas optimizaciones al procesar consultas;
  • Se han ampliado las posibilidades de organizar el funcionamiento del cluster. Se agregó la opción “—cluster.upgrade” para seleccionar el modo de actualización de los nodos en el clúster;
  • Se agregó soporte para TLS 1.3 para cifrar el canal de comunicación entre el cliente y el servidor (de forma predeterminada, el cliente continúa usando TLS 1.2).

Fuente: opennet.ru

Añadir un comentario