A nova versión de Apache CouchDB 3.0 xa foi lanzada e estes son os seus cambios

CouchDB-logo-1

O lanzamento de a nova versión de Apache CouchDB 3.0, que é unha base de datos orientada a documentos distribuídos, pertencente á clase de sistemas NoSQL. CouchDB caracterízase por almacenar datos nun formato de lista ordenado e permite a replicación parcial de datos entre varias bases de datos en modo mestre-mestre con detección simultánea e resolución de situacións de conflito.

Cada servidor almacena o seu propio conxunto de datos local, sincronizado con outros servidores, Poden desconectarse e replicar periodicamente os cambios. En particular, esta característica converte a CouchDB nunha atractiva solución para organizar a sincronización da configuración do programa entre diferentes ordenadores.

As solucións baseadas en CouchDB foron implementadas por empresas como BBC, Apple e CERN.

As consultas de CouchDB e a indexación de datos pódense facer segundo o paradigma MapReduce usando JavaScript para xerar a lóxica de mostraxe de datos.

O núcleo do sistema está escrito na lingua Erlang, que está optimizado para crear sistemas distribuídos atendendo a moitas peticións paralelas. O servidor de visualización está escrito en linguaxe C e está baseado no motor JavaScript do proxecto Mozilla.

O acceso á base de datos realízase a través do protocolo HTTP usando a API RESTful JSON, que permite acceder a datos, incluso desde aplicacións web que se executan no navegador.

Un documento que ten un identificador único, unha versión e que contén un conxunto arbitrario de campos nomeados en formato clave / valor actúa como unidade de almacenamento de datos. Páx

Para organizar un conxunto de datos seudoestruturados a partir de documentos arbitrarios (agregación e mostraxe), utilízase o concepto de formar vistas, que se definen mediante JavaScript. En JavaScript, tamén pode definir funcións para validar datos cando se engaden novos documentos nunha vista específica.

Novidades en Apache CouchDB 3.0

Nesta nova versión a protección mellorada resáltase na configuración predeterminada. Ao iniciar, agora debería definirse o usuario administrador, sen o cal o servidor rematará a súa operación cun erro.

Para acceder ás chamadas a «/ _all_dbs» agora ten que ter dereitos de administrador e todas as bases de datos créanse de xeito predeterminado só para o usuario administrador (pódense cambiar a través do obxecto "_security"), ademais está prohibido editar obxectos na base de datos _users por defecto.

Engadido o capacidade de crear bases de datos segmentadas Definido polo usuario (particionado), permítelle definir as súas propias regras para distribuír documentos por segmentos (rango de fragmentos). Engadíronse optimizacións especiais para bases de datos segmentadas a visualizacións e índices.

Tamén podemos atopar o implementación da separación automática durante a segmentación (fragmentación). Na base de datos, agora é posible redistribuír os datos por segmentos, tendo en conta o aumento do factor q usado para determinar o nivel de desagregación.

O subsistema ken engadiuse para a indexación automática en segundo plano e manter actualizados os índices secundarios sen iniciar explícitamente operacións para construílos.

O tamaño máximo do documento redúcese a 8 MB, o que pode provocar problemas de replicación de datos desde servidores máis antigos despois de actualizar a CouchDB 3.0. Para aumentar o límite, pode usar a configuración "[couchdb] max_document_size".

Dos outros cambios que se mencionan:

  • Optimización do rendemento do proceso couch_server.
  • Instalador mellorado significativamente para a plataforma Windows.
  • Reescribiuse completamente o proceso smoosh empregado para o empaquetado automático de bases de datos.
  • Proponse un novo subsistema de cola de E / S que se usa para cambiar a prioridade de E / S para determinadas operacións.
  • Implementouse o sistema de probas de regresión.
  • Engadiuse soporte oficial para as plataformas arm64v8 (aarch64) e ppc64le (ppc64el).
  • Engadiuse soporte para ligar ao motor JavaScript SpiderMonkey 1.8.5 (rama ESR de Firefox 60) con soporte mellorado para ES5, ES6 e ES2016 +.
  • O marco inclúe un motor de busca Dreyfus baseado en Lucene, que pode simplificar moito a implementación dun motor de busca baseado en CouchDB.
  • Engadiuse o backend para iniciar sesión usando systemd-journald.

O contido do artigo adhírese aos nosos principios de ética editorial. Para informar dun erro faga clic en aquí.

Un comentario, deixa o teu

Deixa o teu comentario

Enderezo de correo electrónico non será publicado. Os campos obrigatorios están marcados con *

*

*

  1. Responsable dos datos: Miguel Ángel Gatón
  2. Finalidade dos datos: controlar SPAM, xestión de comentarios.
  3. Lexitimación: o seu consentimento
  4. Comunicación dos datos: os datos non serán comunicados a terceiros salvo obrigación legal.
  5. Almacenamento de datos: base de datos aloxada por Occentus Networks (UE)
  6. Dereitos: en calquera momento pode limitar, recuperar e eliminar a súa información.

  1.   Terry 99 dixo

    Interesante molto. Io gestisco tre server CouchDB and ho appena migrato alla 3.0.
    Para xestionar o automatismo e varias secuencias de comandos, uso powershell, se dá Windows e Linux co módulo PSCouchDB (https://github.com/MatteoGuadrini/PSCouchDB) o que facilita a xestión.
    Úsoo sopprattutto para a función Importar / Exportar para facer unha copia de seguridade da base de datos e tamén para xerar un informe.
    CouchDB é moi espléndido!