EdgeDB 4.0, llega con mejoras de soporte, rangos mĂșltiples y mas

EdgeDB

EdgeDB es una nueva base de datos que viene con un esquema declarativo estrictamente tipificado.

Se ha dado a conocer el lanzamiento de la nueva versiĂłn de EdgeDB 4.0, la cual llega poco menos de 4 meses despuĂ©s del lanzamiento de 3.0 y en esta nueva versiĂłn y rama (4.x) se presentan diversas mejoras entre las que se destaca el trabajo con rangos agregando un tipo de datos de rango mĂșltiple, un servicio de autenticaciĂłn completo, nuevas extensiones y mĂĄs.

Para quienes desconocen de EdgeDB, deben saber que esta es una base de datos de código abierto diseñada como sucesora de SQL y el paradigma relacional, se menciona que su objetivo es resolver problemas difíciles de diseño que hacen que el uso de las bases de datos existentes sea innecesariamente engorrosas.

Impulsado por el motor de consultas Postgres, EdgeDB piensa en el esquema como objetos con propiedades conectadas por enlaces. Es como una base de datos relacional con un modelo de datos orientado a objetos o una base de datos grĂĄfica con un esquema estricto (base de datos relacional de grĂĄficos).

Principales novedades de EdgeDB 4.0

En esta nueva versiĂłn que se presenta de EdgeDB 4.0, una de las novedades mĂĄs importantes del lanzamiento es el soporte para bĂșsqueda de texto completo, implementado a travĂ©s del complemento fts y en el cual se menciona que su aspecto mĂĄs interesante sea el diseño de la API, ya que estĂĄ diseñado para ser flexible y funciona bien no solo con el FTS de PostgreSQL integrado, sino tambiĂ©n con motores externos como Elastic.

Otro de los cambios que se destaca de la nueva versión es el servicio de autenticación, la cual que funciona por separado de la instancia de la base de datos y en la cual ademås se agregó la extensión «auth», que admite OAuth con Apple, Azure (Microsoft), GitHub o Google, todo con una configuración mínima.

Ademås de ello, también se destaca que se ha agregado un nuevo tipo de datos «multirange», que define uno o mås rangos de valores para representar intervalos intermitentes. La normalización de åreas superpuestas dentro de rangos especificados se realiza automåticamente. Todas las funciones y operadores disponibles anteriormente para procesar rangos pueden funcionar con el tipo «multirange».

De los demås cambios que sé destacan de esta nueva versión:

  • Se han realizado optimizaciones para mejorar el rendimiento.
  • El consumo de memoria en el servidor se reduce en un 40%. El cĂłdigo del analizador de consultas EdgeQL se ha reescrito en Rust.
  • EdgeQL ha agregado soporte para una sintaxis mĂĄs familiar de expresiones condicionales (si
 entonces
 si no
)
  • Se proporciona la capacidad de utilizar DML condicional para crear, actualizar y eliminar varios objetos segĂșn condiciones especĂ­ficas.
  • Se agregĂł y habilitĂł soporte de autenticaciĂłn de forma predeterminada para restringir el acceso a GraphQL y EdgeQL a travĂ©s de HTTP.
  • Se agregĂł la extensiĂłn pgcrypto que proporciona funciones hmac, gen_salt y crypt para hash y cifrado.
  • Se agregĂł la extensiĂłn pg_trgm con funciones para determinar la similitud de cadenas.
  • Se agregĂł una nueva forma de pasar valores globales a consultas GraphQL: en lugar de usar un campo separado.

Finalmente para quienes estén interesados en conocer mås al respecto, deben saber que el código estå escrito en Python y Rust y se distribuye bajo la licencia Apache 2.0. Puedes consultar mås al respecto, en el siguiente enlace.

ÂżComo instalar EdgeDB en Linux?

Para los interesados en poder instalar esta base de datos en su sistema, pueden hacerlo de una forma bastante sencilla. Basta con abrir una terminal y en ella deben de teclear el siguiente comando:

curl --proto '=https' --tlsv1.2 -sSf https://sh.edgedb.com | sh

O para el caso de Debian, Ubuntu y derivados, pueden instalar esta DB con los siguientes comandos:

sudo mkdir -p /usr/local/share/keyrings && \
sudo curl --proto '=https' --tlsv1.2 -sSf \
-o /usr/local/share/keyrings/edgedb-keyring.gpg \
https://packages.edgedb.com/keys/edgedb-keyring.gpg
echo deb [signed-by=/usr/local/share/keyrings/edgedb-keyring.gpg]\
https://packages.edgedb.com/apt \
$(grep "VERSION_CODENAME=" /etc/os-release | cut -d= -f2) main \
| sudo tee /etc/apt/sources.list.d/edgedb.list
sudo apt-get update && sudo apt-get install edgedb-4

Mientras que para el caso de RHEL, CentOS y distribuciones derivadas o basadas en estas:

sudo curl --proto '=https' --tlsv1.2 -sSfL \
https://packages.edgedb.com/rpm/edgedb-rhel.repo \
> /etc/yum.repos.d/edgedb.repo
sudo yum install edgedb-4

Por Ășltimo y no menos importante, te invitĂł a que consultes la documentaciĂłn para la configuraciĂłn de esta DB en tu sistema.