Databend 開源周報 第 97 期

Databend 是一款現(xiàn)代云數(shù)倉。專為彈性和高效設(shè)計,為您的大規(guī)模分析需求保駕護航。自由且開源。即刻體驗云服務(wù):https://app.databend.cn 。

What's On In Databend

探索 Databend 本周新進展,遇到更貼近你心意的 Databend 。

列位置

Databend 現(xiàn)在支持 $N 這一語法,用來表示列位置,例如:$2 意味著匹配第 2 列。Databend 也支持在 SQL 語句中將列位置和列名結(jié)合使用。下面是一個簡單的例子:

CREATE TABLE IF NOT EXISTS t1(a int, b varchar);
INSERT INTO t1 values (1, 'a'), (2, 'b');
select $1, $2, a, b from t1;

┌─────────────────────────────────┐
│   $1  │   $2   │   a   │    b   │
│ Int32 │ String │ Int32 │ String │
├───────┼────────┼───────┼────────┤
│     1 │ a      │     1 │ a      │
│     2 │ b      │     2 │ b      │
└─────────────────────────────────┘

我們正在為 SELECT FROM @stage 添加列位置支持。目前,你可以在 NDJSON 格式上嘗試這一新特性。其他格式的支持還在進行中。

select $1 from @my_stage

copy into my_table from (select $1 from @my_stage t)

需要注意的是,在 Databend 中使用 SELECT 語句處理 NDJSON 格式文件時,只允許使用 $1 表示整行數(shù)據(jù),并且其數(shù)據(jù)類型為 Variant 。

-- Select the entire row using column position:
SELECT $1 FROM @my_stage

--Select a specific field named "a" using column position:
SELECT $1:a FROM @my_stage

如果你想要了解更多信息,請查看下面列出的資源。

Code Corner

一起來探索 Databend 和周邊生態(tài)中的代碼片段或項目。

了解 Databend 的持續(xù)集成工作流 - 拼寫檢查

Databend 現(xiàn)在有一組非常復(fù)雜的持續(xù)集成工作流,用于代碼審計、測試、benchmark 和發(fā)布。拼寫檢查無疑是其中最簡單的部分。

與其他工作流一樣,我們使用 actions/checkout 檢出代碼。

- uses: actions/checkout@v3
  with:
    clean: "true"

typos-cli 是一個用 Rust 編寫的拼寫檢查工具,快速、準(zhǔn)確,適用于像 Databend 這樣的大型單一代碼庫,并且非常適用于針對 PR 的檢查。

- uses: baptiste0928/cargo-install@v1
  with:
    crate: typos-cli
    args: --locked
    cache-key: typos-check

使用 baptiste0928/cargo-install 可以輕松安裝依賴,它幾乎和 cargo install 保持一致,只是需要遵循 GitHub actions 的風(fēng)格。另外,它還提供自動緩存支持,能夠加速后續(xù)構(gòu)建。

- name: do typos check with typos-cli
  run: typos

需要注意的是,雖然 crate 的名字是 typos-cli ,但是對應(yīng)二進制可執(zhí)行程序的名字是 typos 。

如果你想要了解更多信息,請查看下面列出的資源。

亮點

以下是一些值得注意的事件,也許您可以找到感興趣的內(nèi)容。

What's Up Next

我們始終對前沿技術(shù)和創(chuàng)新理念持開放態(tài)度,歡迎您加入社區(qū),為 Databend 注入活力。

在 REST API 中添加去重標(biāo)簽字段

為了確保數(shù)據(jù)攝取是冪等操作,Databend 使用去重標(biāo)簽來支持 DML 的去重。你可以在 Docs | Setting Commands - SET_VAR 中找到關(guān)于此功能的更多信息。

為了方便跨語言驅(qū)動程序集成,我們可以在 REST API 中添加去重標(biāo)簽字段。

Issue #11710 | Feature: support to bring deduplication label on stage attachment api

如果你對這個主題感興趣,可以嘗試解決其中的部分問題或者參與討論和 PR review ?;蛘?,你可以點擊 https://link.databend.rs/i-m-feeling-lucky 來挑選一個隨機問題,祝好運!

Changelog

前往查看 Databend 每日構(gòu)建的變更日志,以了解開發(fā)的最新動態(tài)。

地址:https://github.com/datafuselabs/databend/releases

Contributors

非常感謝貢獻者們在本周的卓越工作。


image.png

Connect With Us

Databend 是一款開源、彈性、低成本,基于對象存儲也可以做實時分析的新式數(shù)倉。期待您的關(guān)注,一起探索云原生數(shù)倉解決方案,打造新一代開源 Data Cloud。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容