Lark Sheets 連接器

Lark Sheets 連接器允許在 Presto 中讀取 Lark Sheets 試算表。

Lark 應用程式

連接器需要一個 Lark 應用程式才能存取 Lark Sheets API。

  1. 透過點擊 Lark 開放平台(適用於全球使用者)或 飛書開放平台(適用於中國使用者)上的「建立自訂應用程式」按鈕來建立 Lark 應用程式。建立應用程式時,請選擇 自訂 應用程式。從「憑證與基本資訊」頁面取得並記住 app idapp secret

  2. 在「權限與範圍」頁面將 檢視、 評論和 匯出 試算表 權限授予該應用程式。並在「應用程式發布」頁面為該應用程式發布新版本,以使權限生效。

設定

建立 etc/catalog/larksheets.properties 以將 Lark Sheets 連接器掛載為 larksheets 目錄,並適當地取代屬性

connector.name=lark-sheets
app-domain=FEISHU
app-id=example_app_id
app-secret-file=/path/to/app-secret.json

建立 app-secret.json,如下範例所示

{"app-secret": "abcdefghijklmnopqrstuvwxyzabcdef"}

可以使用下列設定屬性

屬性名稱

描述

app-domain

如果在 Lark 開放平台 建立,請使用 LARK,否則請使用 FEISHU

app-id

您的應用程式 ID,可在 Lark 開放平台飛書開放平台 取得

app-secret-file

包含您的應用程式密碼的 JSON 檔案路徑

查詢模型

在此連接器中,Lark 試算表會對應至 Presto 綱要,而試算表內的每個工作表會對應至 Presto 資料表。

透過執行類似以下的查詢來建立試算表-綱要對應

CREATE SCHEMA my_ss WITH (TOKEN = 'shtcnBf5pg4BNSkwV2Ku5xwW9Pf')

token 屬性取自試算表網址的最後一個路徑區段,使用模式 https://{lark_site_domain}/sheets/{token}?sheet={sheet_id}。例如,shtcnBf5pg4BNSkwV2Ku5xwW9Pfhttps://test-ch80md45anra.feishu.cn/sheets/shtcnBf5pg4BNSkwV2Ku5xwW9Pf?sheet=MT1p4I 中試算表的 token

之後,試算表的所有工作表(索引標籤)都會自動對應到綱要中的資料表。

SHOW TABLES FROM my_ss

對於每個資料表,其名稱取自工作表標題;其欄取自標頭列(工作表的第一列)。工作表的中繼資料可以透過查詢列出,如下所示

SELECT * FROM my_ss."$sheets"

在查詢陳述式中,可以用以下方式指定資料表

-- by sheet title
SELECT * FROM my_ss."number_text"

-- by sheet index
SELECT * FROM my_ss."$0"

-- by sheet id
SELECT * FROM my_ss."@MT1p4I"

至於欄的推斷,標頭列中具有空白值的欄會被忽略。無法查詢具有重複欄名稱的工作表。

安全性模型

只能查詢啟用「連結分享」的試算表。

依預設,只有綱要的建立者才能看見和操作綱要。若要使綱要對其他人可見,請將其建立為

CREATE SCHEMA my_ss WITH (TOKEN = 'shtcnBf5pg4BNSkwV2Ku5xwW9Pf', PUBLIC = true)