DuckDB,谷歌、Facebook 和 Airbnb 使用的開源數據庫

DuckDB,谷歌、Facebook 和 Airbnb 使用的 DBMS

DuckDB 是一個正在開發的 SQL OLAP 數據庫管理系統

最近 宣布發布新版DuckDB 0.5.0,這是一個開發中的分析數據庫管理系統 (DBMS),被 Google、Facebook 和 Airbnb 使用。

鴨子數據庫 是一個高性能的分析數據庫系統。 它旨在快速、可靠且易於使用。 DuckDB 提供了豐富的 SQL 方言,支持遠遠超出基本 SQL。 DuckDB 支持任意和嵌套的相關子查詢、窗口函數、排序規則、複雜類型(數組、結構)等。

在其主要特徵中,以下突出:

  • 簡單安裝
  • 集成:無服務器管理
  • 單一文件存儲格式
  • 快速分析處理
  • R/Python 和 RDBMS 之間的快速傳輸
  • 它不依賴於任何外部狀態。 例如,單獨的配置文件、環境變量。
  • 單一文件存儲格式
  • 可組合的界面。 流暢的 SQL 編程 API
  • 通過 MVCC 完全 ACID

關於 DuckDB 0.5.0

其中的新穎之處在於“out of core”,旨在通過提出中間結果來解決正在處理的數據大於內存時可能出現的問題.

新版本 使用自適應基數樹 (ART) 索引 應用限制並加速查詢過濾器。 到目前為止,索引並不是持久的,這會導致諸如索引信息丟失和數據受限表的重新加載時間過長等問題。

藝術(ART) 它本質上是嘗試應用垂直和水平壓縮來創建緊湊的索引結構。 意圖是類似樹的數據結構,其中樹的每一層都包含有關數據集某些部分的信息。 它們通常用字符串來說明。

該項目還增加了加入順序優化,分析數據庫中的一個常見問題。 Amalgam Insights 的首席執行官兼首席分析師 Hyoun Park 表示,DuckDB 的與眾不同之處在於它是一個小型應用程序,可以在基於代碼的工作流程中快速掃描大量數據存儲。

“DuckDB 通常可以直接對數據運行查詢,無需中間處理,從而改進了處理。 從純粹的技術角度來看,它與 Actian Vector 有點相似,後者也採用了列向量化 OLAP 查詢方法,儘管 Actian 旨在獲取數據而不是在進程上工作或加載特定作業。 »

DuckDB Labs 提供建議和支持。 聯合創始人兼首席執行官 Hannes Mühleisen 也共同編寫了代碼並維護了該項目,他說他受到無服務器 OLTP 數據庫引擎 SQLite 的啟發,在那裡他看到了類似方法的機會,但用於分析。

DuckDB 也經常用作分析或管理堆棧的一部分。 更大的數據。 例如,如果有人構建了一個收集數據的自定義應用程序,然後想要創建一個 SQL 接口,他們首先必須複製數據並將其移動到另一個系統,這可能會導致同步問題,他解釋說。

下載並獲取

值得一提的是,主頁明確指出不應將其用於“用於集中式企業數據存儲的大型客戶端/服務器安裝”。

該項目正在開發 1.0 版, 之後將無法再進行更改。 阿姆斯特丹數學與理論計算機科學中心的學者們的作品Centrum Wiskunde & Informatica,DuckDB 被集成到一個主機進程中,值得注意的是沒有安裝、更新或維護的DBMS 服務器軟件。

例如,DuckDB Python 包可以直接對 Python 軟件庫中的數據運行查詢,而無需導入或複制數據。 DuckDB 是用 C++ 編寫的,在 MIT 許可下是免費和開源的。

您可以了解更多信息並查閱安裝手冊, 在下面的鏈接中。


發表您的評論

您的電子郵件地址將不會被發表。 必填字段標有 *

*

*

  1. 負責資料:AB Internet Networks 2008 SL
  2. 數據用途:控制垃圾郵件,註釋管理。
  3. 合法性:您的同意
  4. 數據通訊:除非有法律義務,否則不會將數據傳達給第三方。
  5. 數據存儲:Occentus Networks(EU)託管的數據庫
  6. 權利:您可以隨時限制,恢復和刪除您的信息。