Google Sheets 連接器

Google Sheets 連接器允許將 Google Sheets 試算表作為 Presto 中的表格讀取。

設定

建立 etc/catalog/gsheets.properties 以將 Google Sheets 連接器掛載為 gsheets 目錄,並根據需要替換屬性

connector.name=gsheets
credentials-path=/path/to/google-sheets-credentials.json
metadata-sheet-id=exampleId

設定屬性

可以使用以下設定屬性

屬性名稱

描述

credentials-path

Google API JSON 金鑰檔案的路徑

metadata-sheet-id

包含表格對應的試算表工作表 ID

sheets-data-max-cache-size

要快取的試算表最大數量,預設為 1000

sheets-data-expire-after-write

快取試算表資料或中繼資料的時間長度,預設為 5m

憑證

連接器需要憑證才能存取 Google Sheets API。

  1. 開啟 Google Sheets API 頁面,然後按一下「啟用」按鈕。這會將您帶到 API 管理員頁面。

  2. 使用頁面頂端的下拉式選單選取專案。如果您還沒有專案,請建立一個新專案。

  3. 在左側面板中選擇「憑證」。

  4. 按一下「管理服務帳戶」,然後為連接器建立服務帳戶。在「建立金鑰」步驟中,建立並下載 JSON 格式的金鑰。

金鑰檔案必須在 Presto 協調器和工作節點上可用。設定 credentials-path 設定屬性以指向此檔案。檔案的確切名稱並不重要,可以命名為任何名稱。

中繼資料工作表

中繼資料工作表用於將表格名稱對應至工作表 ID。建立新的中繼資料工作表。第一列必須是標頭列,其中包含以下順序的欄位

  • 表格名稱

  • 工作表 ID

  • 擁有者

  • 註解

請參閱此 範例工作表 作為參考。

必須與服務帳戶使用者共用中繼資料工作表,即建立金鑰憑證檔案的使用者。按一下「共用」按鈕,將工作表與服務帳戶的電子郵件地址共用。

metadata-sheet-id 設定屬性設定為此工作表的 ID。

查詢工作表

服務帳戶使用者必須有權限存取工作表,Presto 才能查詢它。按一下「共用」按鈕,將工作表與服務帳戶的電子郵件地址共用。

工作表需要對應至 Presto 表格名稱。在中繼資料工作表中指定表格名稱(欄 A)和工作表 ID(欄 B)。若要參照工作表中的特定索引標籤,請在工作表 ID 後面加入索引標籤名稱,並以 # 分隔。如果未提供索引標籤名稱,連接器預設只會從工作表中的第一個索引標籤載入 10,000 列。

API 使用限制

Google Sheets API 有 使用限制,這可能會影響此連接器的使用。增加快取持續時間和/或大小可能會防止達到限制。在沒有結構描述和表格名稱篩選器的情況下,在 information_schema.columns 表格上執行查詢可能會導致達到限制,因為這需要擷取每個表格的工作表資料,除非已快取。

SQL 支援

連接器提供全域可用的讀取操作陳述式,以存取 Google Sheets 中的資料和中繼資料。