¡Lanzamiento de Databend v1.2! Datos + IA

Estimados socios de la comunidad, ¡Databend marcó el comienzo del lanzamiento oficial de v1.2.0 el 29 de junio de 2023! En comparación con la versión v1.1.0, los desarrolladores agregaron un total de 600 confirmaciones, lo que implica 3083 cambios de archivos y alrededor de 170 000 líneas de modificación de código. ¡Gracias a todos los socios de la comunidad por participar y a cada uno de ustedes que hace que Databend sea mejor!

En la versión v1.2.0, Databend ha agregado funciones como el tipo de datos BITMAP , la consulta directa de archivos CSV/TSV/NDJSON utilizando números de columna , funciones de IA y el diseño e implementación de una nueva tabla hash para mejorar en gran medida el rendimiento de Join . El lanzamiento de esta versión acerca a Databend a la realización de la visión de LakeHouse. Puede leer y analizar directamente los archivos CSV/TSV/NDJSON/Parquet almacenados en el almacenamiento de objetos. También puede realizar operaciones ETL en estos archivos dentro de Databend, de modo que haga algo análisis OLAP de mayor rendimiento.

Al mismo tiempo, Databend también ha diseñado e implementado funciones de nivel empresarial como columnas calculadas , VACUUM TABLE y Serverless Background Service Los socios interesados ​​pueden comunicarse con el equipo de Databend para obtener información sobre la actualización o visitar Databend Cloud para obtener una experiencia instantánea.

Databend x Kernel

Eche un vistazo rápido a las importantes funciones nuevas de Databend y conozca el Databend que está más cerca de su corazón.

tipo de datos:BITMAP

Databend agregó BITMAPsoporte para el tipo de datos e implementó una serie de funciones relacionadas.

BITMAPes una estructura de datos comprimida que puede almacenar y manipular de manera eficiente colecciones de valores booleanos. Proporciona operaciones de configuración rápida y capacidades de agregación, y se usa ampliamente en análisis y consultas de datos. Los escenarios de uso comunes incluyen: conteo de deduplicación, selección de filtros y almacenamiento comprimido. BITMAPLa implementación del tipo de datos en Databend adopta RoaringTreemap. El uso de esta estructura de datos mejora el rendimiento y reduce el uso de memoria en comparación con otras implementaciones de mapas de bits.

SELECT user_id, bitmap_count(page_visits) AS total_visits
FROM user_visits

+--------+------------+
|user_id |total_visits|
+--------+------------+
|       1|           4|
|       2|           3|
|       3|           4|
+--------+------------+

Si desea obtener más información, consulte los recursos que se enumeran a continuación.

Consultar archivos CSV/TSV/NDJSON directamente usando números de columna

Si desea consultar archivos sin esquema como CSV/TSV/NDJSON, debe cargarlos en una tabla antes de consultarlos. Pero a veces el usuario no conoce los detalles del archivo de antemano (como cuántas columnas tiene el archivo CSV), o simplemente quiere hacer consultas ad hoc.

Con este fin, Databend introduce la posición de la columna, utilizando $Nla sintaxis para representar la primera Ncolumna. Todas las columnas de los archivos CSV/TSV se consideran Stringtipo, y si el número de columnas en una fila es menor que el número de columna utilizado, se completará con una cadena vacía. Los archivos NDJSON tienen una sola columna $1, el tipo es Variant.

Combine esta capacidad con la instrucción COPY para cargar partes de las columnas a pedido y use funciones para transformar los datos durante la carga.

SELECT $1 FROM @my_stage (FILE_FORMAT=>'ndjson')

COPY INTO my_table FROM (SELECT TRIM($2) SELECT @my_stage t) FILE_FORMAT = (type = CSV)

Si desea obtener más información, consulte los recursos que se enumeran a continuación.

Diseñar e implementar una nueva tabla hash para mejorar el rendimiento de Hash Join

En el pasado, la tabla hash de Databend se diseñó especialmente para satisfacer las necesidades de los operadores de agregación. Con el fin de mejorar aún más el rendimiento de Hash Join, nos propusimos diseñar e implementar una nueva tabla hash optimizada para Hash Join. A través de paralelo El diseño optimizado permite que Databend haga un uso completo de los recursos informáticos y, al mismo tiempo, se vuelve más preciso en el control de la memoria, lo que evita la sobrecarga de memoria innecesaria y mejora significativamente el rendimiento de Hash Join.

El analista de inteligencia empresarial Mimoune Djouallah comentó: Databend tiene un rendimiento excelente.Bajo la condición de 8 núcleos y 32 GB de memoria, solo se necesitan 25 segundos para ejecutar TPCH-SF10. Incluso escribió una publicación de blog titulada " Databend y el surgimiento del almacén de datos como código ".

imagen.png

Si desea obtener más información, consulte los recursos que se enumeran a continuación.

Funciones de IA

Databend introdujo una poderosa función de IA en la versión v1.2.0, logrando la perfecta integración de datos e IA. Podemos realizarla a través de SQL:

  1. SQL generado en lenguaje natural
  2. Embebido vectorizado y almacenado
  3. Cálculo de similitud
  4. generación de texto

SQL generado en lenguaje natural

Por ejemplo, si hace una pregunta en una base de datos de registro de nginx: "¿Cuáles son las 5 direcciones IP principales que realizan la mayoría de las solicitudes", utilizando la función de Databend, obtendrá directamente AI_TO_SQLla declaración SQL correspondiente, que es muy conveniente de usar.

imagen.png

Vectorización incrustada

Con AI_EMBEDDING_VECTORla función de Databend, podemos realizar la vectorización de datos y guardarlos en ARRAYel tipo de Databend. De esta manera, Databend en realidad se convierte en una base de datos vectorial.

imagen.png

Cálculo de similitud

Bajo la representación vectorizada, se puede calcular la similitud entre dos palabras, oraciones o documentos. Por ejemplo, supongamos que tenemos dos palabras "perro" y "cachorro" (también podrían ser oraciones), primero las convertimos en vectores v1 y v2 respectivamente, y luego usamos la similitud del coseno para calcular su similitud.

cos_sim = dot(v1, v2) / (norm(v1) * norm(v2))

La función en Databend COSINE_DISTANCEes la realización de esta fórmula.

imagen.png

generación de texto

AI_TEXT_COMPLETIONLa generación de texto es muy útil en muchos escenarios y ahora puede usar funciones en SQL para hacerlo.

imagen.png

En la actualidad, hemos utilizado las capacidades de Data + AI anteriores para realizar el procesamiento de incrustación en todos los documentos de https://databend.rs , almacenarlos en Databend y crear un sitio web inteligente de preguntas y respuestas: https://ask. databend.rs . En este sitio, puede hacer cualquier pregunta sobre Databend.

Funciones empresariales de Databend

¡Las nuevas funciones de nivel empresarial están en línea! Descubra cómo Databend impulsa servicios de análisis de datos más valiosos.

columna calculada

Columnas calculadas (Columnas calculadas) son columnas que calculan y generan datos de otras columnas a través de expresiones. Las columnas calculadas pueden almacenar datos de expresión para acelerar las consultas y pueden simplificar algunas expresiones de consulta complejas. Las columnas calculadas incluyen dos tipos de almacenamiento (ALMACENADO) y virtual (VIRTUAL).

  • Las columnas calculadas almacenadas generan datos y los almacenan en el disco cada vez que se insertan o actualizan, y no es necesario volver a calcularlos durante la consulta, que puede leer los datos más rápido.
  • Una columna computada virtual no almacena datos, no ocupa espacio adicional y se calcula en tiempo real para cada consulta.

Las columnas calculadas son especialmente útiles para leer datos en campos internos de JSON. Al definir los campos internos de uso común como columnas calculadas, la operación de extracción de datos JSON durante cada consulta, que consume mucho tiempo, se puede reducir considerablemente. Por ejemplo:

CREATE TABLE student (
    profile variant,
    id int64 null as (profile['id']::int64) stored,
    name string null as (profile['name']::string) stored
);

INSERT INTO student VALUES ('{"id":1, "name":"Jim", "age":20}'),('{"id":2, "name":"David", "age": 21}');

SELECT id, name FROM student;
+------+-------+
| id   | name  |
+------+-------+
|    1 | Jim   |
|    2 | David |
+------+-------+

Si desea obtener más información, consulte los recursos que se enumeran a continuación.

MESA DE VACÍO

VACUUM TABLEcomando para ayudar a optimizar el rendimiento del sistema mediante la eliminación permanente de archivos de datos históricos de la tabla para liberar espacio de almacenamiento. Los archivos eliminados incluyen:

  • Una instantánea relacionada con una tabla y sus segmentos y bloques asociados.
  • Archivos huérfanos. En Databend, los archivos huérfanos son instantáneas, segmentos y bloques que ya no están asociados con la tabla. Los archivos huérfanos pueden ser generados por varias operaciones y errores, como durante la copia de seguridad y la restauración de datos, y con el tiempo pueden ocupar un espacio valioso en el disco y ralentizar el rendimiento del sistema.

Si desea obtener más información, consulte los recursos que se enumeran a continuación.

Servicio en segundo plano sin servidor

El motor de almacenamiento incorporado de Databend FuseTablees una tabla con estructura de registro similar a Apache Iceberg Durante la escritura continua de datos, la compresión de tablas, la reagrupación y la limpieza deben realizarse periódicamente para fusionar pequeños bloques de datos. El proceso de fusión de pequeños fragmentos de datos implica etapas como la clasificación de datos por clave de agrupación o la limpieza de ramas innecesarias.

Para automatizar este proceso se requiere el uso de diferentes controladores, lo que aumenta la complejidad de la infraestructura. Y se deben implementar y mantener otros servicios para desencadenar eventos de conducción. Para simplificar este proceso, Databend diseñó e implementó Serverless Background Service , que puede encontrar automáticamente las tablas que deben comprimirse, reordenarse y limpiarse después de escribir los datos, sin otros servicios ni operaciones manuales por parte de los usuarios, y activa automáticamente el mantenimiento. de las tablas correspondientes. Reduce la carga del mantenimiento del usuario, mejora el rendimiento de las consultas de tablas y reduce el costo de los datos en el almacenamiento de objetos.

Databend x ecología

El mapa ecológico de Databend se ha mejorado aún más. ¡Es hora de introducir Databend en su flujo de trabajo de conocimiento de datos!

Enlaces de Python para databend

Databend ahora ofrece enlaces de Python, proporcionando nuevas opciones para ejecutar consultas SQL en Python. El enlace tiene Databend incorporado y se puede usar sin implementar una instancia.

pip install databend

Importe desde databend SessionContexty cree un contexto de sesión para comenzar:

from databend import SessionContext
ctx = SessionContext()
df = ctx.sql("select number, number + 1, number::String as number_p_1 from numbers(8)")

El DataFrame resultante se puede convertir al formato PyArrow o Pandas usando to_py_arrow()o :to_pandas()

df.to_pandas() # Or, df.to_py_arrow()

Actúe ahora e integre Databend en su flujo de trabajo de ciencia de datos.

BendSQL - Herramienta de línea de comandos nativa de Databend

BendSQL es una herramienta de línea de comandos nativa diseñada para Databend, que se ha reescrito en lenguaje Rust y es compatible con los protocolos REST API y Flight SQL .

Con BendSQL, puede administrar de manera fácil y eficiente bases de datos, tablas y datos en Databend, y realizar fácilmente varias consultas y operaciones.

bendsql> select avg(number) from numbers(10);

SELECT
  avg(number)
FROM
  numbers(10);

┌───────────────────┐
│    avg(number)    │
│ Nullable(Float64) │
├───────────────────┤
│ 4.5               │
└───────────────────┘

1 row in 0.259 sec. Processed 10 rows, 10B (38.59 rows/s, 308B/s)

¡Esperamos compartir más actualizaciones sobre BendSQL con usted! Siéntete libre de probarlo y darnos tu opinión.

Servicios de integración de datos y BI

Apache DolphinScheduler

Apache DolphinScheduler es una plataforma de coordinación de flujos de trabajo de código abierto distribuida y escalable con una potente interfaz de visualización de DAG. Admite más de 30 tipos de tareas, incluidos Flink SQL, DataX, HiveCli, etc. Capaz de alta simultaneidad, alto rendimiento, baja latencia y ejecución estable de millones de tareas, puede ejecutar tareas en lotes de acuerdo con el tiempo planificado (rango de fechas especiales o lista de fechas especiales) y sin afectar la plantilla de flujo de trabajo, admite instancias de flujo de trabajo modificación, reversión y reejecución.

imagen.png

DolphinScheduler ahora es compatible con fuentes de datos de Databend, puede usar DolphinScheduler para administrar tareas de DataX para lograr la sincronización de datos de MySQL a bases de datos heterogéneas de Databend.

Apache Flink CDC

Apache Flink CDC (Change Data Capture) se refiere a la capacidad de Apache Flink para capturar y procesar cambios de datos en tiempo real de varias fuentes mediante consultas basadas en SQL. CDC permite monitorear y capturar las modificaciones de datos (inserciones, actualizaciones y eliminaciones) que ocurren en una base de datos o sistema de transmisión, y reacciona a estos cambios en tiempo real.

Databend ahora proporciona Flink SQL Connector , que puede integrar las capacidades de procesamiento de flujo de Flink con Databend. Los conectores se pueden configurar para capturar cambios de datos como flujos de varias bases de datos y cargarlos en Databend para procesamiento y análisis en tiempo real.

Si desea obtener más información, consulte los recursos que se enumeran a continuación.

Cuadro

Tableau es una popular herramienta de visualización de datos e inteligencia comercial. Proporciona una forma intuitiva e interactiva de explorar, analizar y presentar datos, lo que ayuda a los usuarios a comprender mejor el significado y la perspectiva de los datos.

Consulte Otras bases de datos (JDBC) , coloque databend-jdbc en la ruta del controlador de Tableau, luego puede usar Tableau para analizar los datos en Databend.

imagen.png

Si desea obtener más información, consulte los recursos que se enumeran a continuación.

Descargar y usar

Si está interesado en las características de nuestra nueva versión, visite la página https://github.com/datafuselabs/databend/releases/tag/v1.2.0-nightly para ver todos los registros de cambios o descargar la experiencia de lanzamiento.

Si aún está utilizando una versión anterior de Databend, le recomendamos que actualice a la última versión. Para conocer el proceso de actualización, consulte:

https://databend.rs/doc/operaciones/actualización

Comentario

Si encuentra algún problema en el uso, no dude en hacer sugerencias a través de problemas de GitHub o grupos de usuarios de la comunidad

GitHub: https://github.com/datafuselabs/databend/

Los graduados de la Universidad Popular Nacional robaron la información de todos los estudiantes de la escuela para construir un sitio web de puntuación de belleza, y han sido detenidos criminalmente.La nueva versión de Windows de QQ basada en la arquitectura NT se lanza oficialmente.Estados Unidos restringirá el uso de China de Amazon, Microsoft y otros servicios en la nube que brindan capacitación en modelos de IA. Se anunciaron proyectos de código abierto para detener el desarrollo de funciones LeaferJS , el puesto técnico mejor pagado en 2023, lanzado: Visual Studio Code 1.80, una biblioteca de gráficos 2D de código abierto y potente , compatible funciones de imagen de terminal . El número de registros de subprocesos ha superado los 30 millones. "Cambio" deepin adopta Asahi Linux para adaptarse a la clasificación de la base de datos Apple M1 en julio: Oracle aumenta, abriendo el puntaje nuevamente
{{o.nombre}}
{{m.nombre}}

Supongo que te gusta

Origin my.oschina.net/u/5489811/blog/10086095
Recomendado
Clasificación