stringtranslate.com

Base de datos de patos

DuckDB es un sistema de gestión de bases de datos relacionales (RDBMS) orientado a columnas de código abierto desarrollado originalmente por Mark Raasveldt y Hannes Mühleisen en el Centrum Wiskunde & Informatica (CWI) en los Países Bajos [1] y lanzado por primera vez en 2019. [2] El proyecto tiene más de 6 millones de descargas por mes. [3] [4] [5] Está diseñado para proporcionar un alto rendimiento en consultas complejas contra bases de datos grandes en configuración integrada, [1] como la combinación de tablas con cientos de columnas y miles de millones de filas. A diferencia de otras bases de datos integradas (por ejemplo, SQLite ), DuckDB no se centra en aplicaciones transaccionales ( OLTP ) y, en cambio, está especializado en cargas de trabajo de procesamiento analítico en línea (OLAP). [6]

DuckDB en su nicho OLAP no compite con los DBMS tradicionales como MSSQL , PostgreSQL y Oracle database . Si bien utiliza SQL para consultas, DuckDB apunta a aplicaciones sin servidor y proporciona respuestas extremadamente rápidas utilizando archivos Apache Parquet para el almacenamiento. Estos atributos lo convierten en una opción popular para el análisis de grandes conjuntos de datos en modo interactivo, pero no se adapta bien a los requisitos del almacenamiento de datos empresariales. [7]

DuckDB utiliza un motor de procesamiento de consultas vectorizado . DuckDB es especial entre los sistemas de gestión de bases de datos porque no tiene dependencias externas y puede compilarse con solo un compilador C++11. [8] DuckDB también se desvía del modelo tradicional cliente-servidor al ejecutarse dentro de un proceso host (tiene enlaces, por ejemplo, para un intérprete de Python con la capacidad de colocar datos directamente en matrices NumPy [1] ).

Uso comercial

DuckDB se utiliza en Facebook , Google y Airbnb . [9]

El coautor de DuckDB, Mühleisen, también dirige una empresa de soporte y consultoría para el software, DuckDB Labs. [2] La empresa ha optado por no aceptar financiación de capital de riesgo, afirmando: "Creemos que la inversión obligaría a que el proyecto se orientara hacia la monetización, y preferiríamos mantener DuckDB abierto y disponible para la mayor cantidad de personas posible". [5] Otra empresa, MotherDuck, ha recibido una financiación de 100 millones de dólares para su plataforma de datos basada en DuckDB, con inversores como Andreessen Horowitz . [10]

Soporte de idiomas

Además de las API nativas de C y C++ , DuckDB admite una variedad de lenguajes de programación.

Referencias

  1. ^ abc Kamphuis, Chris (2020). "Bases de datos gráficas para la recuperación de información". Avances en la recuperación de información . Vol. 12036. Cham: Springer International Publishing. págs. 608–612. doi :10.1007/978-3-030-45442-5_79. ISBN 978-3-030-45441-8. Número de pieza  7148032 .
  2. ^ ab Clark, Lindsay. "DuckDB alcanza la versión 0.5.0". www.theregister.com . Archivado desde el original el 7 de marzo de 2024. Consultado el 23 de marzo de 2024 .
  3. ^ "Estadísticas de descarga de PyPi". www.pypistats.org . Archivado desde el original el 13 de agosto de 2024. Consultado el 13 de agosto de 2024 .
  4. ^ "Panel de descargas de Python de DuckDB". duckdbstats.com . Archivado desde el original el 2024-08-13 . Consultado el 2024-08-13 .
  5. ^ ab Clark, Lindsay. "DuckDB Labs pone un límite al soporte gratuito y descarta la financiación de capital riesgo". www.theregister.com . Archivado desde el original el 23 de marzo de 2024. Consultado el 23 de marzo de 2024 .
  6. ^ Raasveldt, Marcos; Mühleisen, Hannes (25 de junio de 2019). DuckDB: una base de datos analítica integrable . ACM. págs. 1981-1984. doi :10.1145/3299869.3320212. ISBN 978-1-4503-5643-5.
  7. ^ Bannert, M. (2024). Ingeniería de software de investigación: una guía para el ecosistema de código abierto. Chapman & Hall/CRC Data Science Series. CRC Press. pág. 25. ISBN 978-1-04-000513-2Archivado desde el original el 23 de marzo de 2024. Consultado el 23 de marzo de 2024 .
  8. ^ "Instrucciones de creación de DuckDB" . Consultado el 16 de agosto de 2024 .
  9. ^ Clark, Lindsay. "La administradora de bases de datos de escalamiento MotherDuck obtiene $47,5 millones". www.theregister.com . Archivado desde el original el 23 de marzo de 2024 . Consultado el 23 de marzo de 2024 .
  10. ^ Clark, Lindsay. "La plataforma de análisis sin servidor MotherDuck obtiene una financiación de 52,5 millones de dólares". www.theregister.com . Archivado desde el original el 23 de marzo de 2024 . Consultado el 23 de marzo de 2024 .
  11. ^ "Código fuente de Java JNI". www.github.com . Consultado el 7 de septiembre de 2024 .
  12. ^ "Código fuente de DuckDB Java Arrow". www.github.com . Consultado el 7 de septiembre de 2024 .
  13. ^ "Código fuente de DuckDB Java". www.github.com . Consultado el 7 de septiembre de 2024 .
  14. ^ "Fuente de Pandas de DuckDB". www.github.com . Consultado el 7 de septiembre de 2024 .
  15. ^ "Fuente de DuckDB PyArrow". www.github.com . Consultado el 7 de septiembre de 2024 .
  16. ^ "Código fuente Python de DuckDB". www.github.com . Consultado el 7 de septiembre de 2024 .
  17. ^ "Código fuente de DuckDB Rust". www.github.com . Consultado el 7 de septiembre de 2024 .
  18. ^ "Código fuente del nodo DuckDB". www.github.com . Consultado el 7 de septiembre de 2024 .
  19. ^ "Código fuente de DuckDB R". www.github.com . Consultado el 7 de septiembre de 2024 .
  20. ^ "Código fuente de DuckDB Jullia". www.github.com . Consultado el 7 de septiembre de 2024 .
  21. ^ "Código fuente de DuckDB Swift". www.github.com . Consultado el 7 de septiembre de 2024 .

Lectura adicional

Enlaces externos