Databend 是一款強大的云數(shù)倉。專為彈性和高效設計,自由且開源。
即刻體驗云服務:https://app.databend.com。
New Features
RFC
- User Stage (#8519)
user stage
- 新增對 internal 和 legacy internal stage 的支持 (#8526)
- 實現(xiàn) user stage 支持并添加 stateful tests (#8556)
multiple catalog
- 實現(xiàn) multiple catalog 相關(guān)的 AST (#8608)
hive
- hive 預測下推 (#8469)
- 使 substr 以及帶空值的 order by 與 hive 函數(shù)兼容 (#8558)
rbac
- "SHOW ROLES" 語句只顯示可用的用戶 (#8553)
compatibility
- 支持使用 mydumper 轉(zhuǎn)儲數(shù)據(jù) (#8500)
auth
- 新增 auth 模塊并支持 sharing endpoint 使用文件令牌(token)(#8607)
format
- 允許 TSV 中存在嵌套字段 (#8606)
- 統(tǒng)一 format 相關(guān)的設置和選項 (#8566)
hashtable
- 字符串自適應哈希表 (#7971)
meta
- 自動清理過期的 key (#8539)
- 添加對新的 key-space: Expire 的支持 (#8578)
query
- 為 databend-query 優(yōu)化 logging 格式 (#8466)
Code Refactor
error handler
- 新增 internal error 類別并將其他不需要的錯誤進行合并 (#8581)
interpreter
- 將 "interpreter_common.rs" 拆分 (#8593)
query
- 移除遺留的代碼 (#8412)
- 避免額外的 memcpy (#8569)
- 將序列化合并到新表達式模塊中 (#8582)
storage
- 使 "BlockMeta" 易于克隆 (#8548)
new expression
- timestamp 轉(zhuǎn)換為 variant string 而不是 variant int (#8580)
Bug Fix
compatibility
- 兼容 mysqldump 5.7.16 "/*!code" 查詢 (#8485)
planner
- 修復「select view 時出現(xiàn) column not exists 報錯」的問題 (#8543)
query
- nullable(Int) 與空值相除不應當報錯 (#8495)
- 修復「設置 "AUTH ROLE" 之后 "CURRENT ROLE" 的行為異?!沟膯栴} (#8546)
storage
為 compact 添加 limit 支持 (#8473)
修復「在減少 BlockMeta 時,索引大小不正確」的問題 (#8428)
News
Datafuse Labs / Databend 本周新動態(tài)!
字符串自適應哈希表
String Adaptive Hash Table 是 Databend 社區(qū)在「2022 開源軟件供應鏈點亮計劃」的項目之一。@usamoi 幫助我們完成了這一重要的工作,現(xiàn)在代碼已經(jīng)合并到 Databend 代碼庫中并且?guī)硖囟▓鼍跋?20% - 50% 的性能提升。
String Adaptive Hash Table 是專為字符串類型的 key 所設計的哈希表,根據(jù) key 的不同長度來匹配不同的數(shù)據(jù)結(jié)構(gòu),達到優(yōu)化插入和讀取的效果。
閱讀下面列出的材料以了解更多訊息
- PR | adaptive string hash table
- Paper | SAHA: A String Adaptive Hash Table for Analytical Databases
- GitHub - usamoi/saha
RFC: User Stage
Databend 僅支持 named internal stage:
CREATE STAGE @my_stage;
COPY INTO my_table FROM @my_stage;
然而, named internal stage 在一些場景下使用會相對復雜。特別是對于只希望使用 stage 加載數(shù)據(jù)的用戶而言。通過支持 user stage ,這部分用戶就可以更高效地復制數(shù)據(jù):
COPY INTO my_table from @~;
閱讀下面列出的材料以了解更多訊息
RFC: User Stage
Tracking issues of RFC: User Stage
Issues
遇到你可能會感興趣的問題,歡迎試著解決它。
使用 DashMap 替換 "RwLock<HashMap>" 和 "Mutex<HashMap>"
DashMap 是 Rust 中的并發(fā)關(guān)聯(lián)數(shù)組 / 哈希表實現(xiàn),它致力于提供簡單易用的 API 并成為 "RwLock<HashMap<K, V>>" 的一種直接替代品。
使用 DashMap 可能會帶來兩個優(yōu)點:
更簡潔的代碼
潛在的性能提高
Issue 8601: Feature: replace RwLock and Mutex by using DashMap
如果你對這個主題感興趣,可以嘗試解決其中的部分問題或者參與討論和 PR review ?;蛘撸憧梢渣c擊 https://link.databend.rs/i-m-feeling-lucky 來挑選一個隨機問題,祝好運!
Changlogs
前往查看 Databend 每日構(gòu)建的變更日志,以了解開發(fā)的最新動態(tài)。
地址:https://github.com/datafuselabs/databend/releases
Contributors
非常感謝貢獻者們在本周的卓越工作。

Meet Us
Databend 是一款開源、彈性、低成本,基于對象存儲也可以做實時分析的新式數(shù)倉。期待您的關(guān)注,一起探索云原生數(shù)倉解決方案,打造新一代開源 Data Cloud。
Databend Website :https://databend.rs/
Weekly :https://weekly.databend.rs/
GitHub Discussions :https://github.com/datafuselabs/databend/discussions
Twitter :https://twitter.com/Datafuse_Labs
Slack Channel :https://link.databend.rs/join-slack