Show Menu
主題×

使用 Google BigQuery API建立連 Flow Service 接器

連接 Google BigQuery 器為測試版。 如需使用 測試版標籤連接器的詳細資訊 ,請參閱來源概觀。
Flow Service 用於收集和集中Adobe Experience Platform內不同來源的客戶資料。 該服務提供用戶介面和REST風格的API,所有支援的源都可從中連接。
本教學課程使 Flow Service 用API來引導您完成連線至的 Google BigQuery 步驟(以下稱為「BigQuery」)。

快速入門

本指南需要有效瞭解Adobe Experience Platform的下列元件:
  • 來源 : Experience Platform 允許從各種來源接收資料,同時提供使用服務構建、標籤和增強傳入資料的 Platform 能力。
  • 沙盒 : Experience Platform 提供虛擬沙盒,可將單一執行個體分 Platform 割為不同的虛擬環境,以協助開發和發展數位體驗應用程式。
以下各節提供您需要知道的其他資訊,以便使用 Flow Service API成功連線至BigQuery。

收集必要的認證

要連接 Flow Service BigQuery,必須提供以下連接屬性:
憑證
說明
project
要查詢的預設項目 BigQuery 的項目ID。
clientID
用來產生重新整理Token的ID值。
clientSecret
用來產生重新整理Token的機密值。
refreshToken
從用來授權存取 Google 的重新整理Token BigQuery。
有關這些值的詳細資訊,請參 閱此BigQuery文檔

讀取範例API呼叫

本教學課程提供範例API呼叫,以示範如何設定請求的格式。 這些包括路徑、必要標題和正確格式化的請求負載。 也提供API回應中傳回的範例JSON。 如需範例API呼叫檔案中所用慣例的詳細資訊,請參閱疑難排解指 南中有關如何讀取範例API呼叫的 Experience Platform 章節。

收集必要標題的值

若要呼叫API,您必 Platform 須先完成驗證教 學課程 。 完成驗證教學課程後,將提供所有 Experience Platform API呼叫中每個必要標題的值,如下所示:
  • 授權: 生產者 {ACCESS_TOKEN}
  • x-api-key: {API_KEY}
  • x-gw-ims-org-id: {IMS_ORG}
中的所有資 Experience Platform源(包括屬於的資源)都 Flow Service被隔離到特定的虛擬沙盒中。 對API的所 Platform 有請求都需要一個標題,該標題會指定要在中執行的操作的沙盒名稱:
  • x-sandbox-name: {SANDBOX_NAME}
所有包含裝載(POST、PUT、PATCH)的請求都需要額外的媒體類型標題:
  • 內容類型: application/json

查找連接規格

要建立連接, BigQuery 必須在中存 BigQuery 在一組連接規範 Flow Service。 連接到的第一步 Platform 是 BigQuery 檢索這些規範。
API格式
每個可用源都有其唯一的連接規範集,用於描述連接器屬性(如驗證要求)。 您可以執行GET請求並使 BigQuery 用查詢參數,查找連接規範。
傳送不含查詢參數的GET請求時,會傳回所有可用來源的連線規格。 您可以包含查詢, property=name=="google-big-query" 以取得特定的資訊 BigQuery。
GET /connectionSpecs
GET /connectionSpecs?property=name=="google-big-query"

請求
以下請求將檢索的連接規範 BigQuery。
curl -X GET \
    'https://platform.adobe.io/data/foundation/flowservice/connectionSpecs?property=name=="google-big-query"' \
    -H 'Authorization: Bearer {ACCESS_TOKEN}' \
    -H 'x-api-key: {API_KEY}' \
    -H 'x-gw-ims-org-id: {IMS_ORG}' \
    -H 'x-sandbox-name: {SANDBOX_NAME}'

回應
成功的響應返回的連接規範 BigQuery,包括其唯一標識符( id )。 在下個步驟中需要此ID才能建立基本連線。
{
    "items": [
        {
            "id": "3c9b37f8-13a6-43d8-bad3-b863b941fedd",
            "name": "google-big-query",
            "providerId": "0ed90a81-07f4-4586-8190-b40eccef1c5a",
            "version": "1.0",
            "authSpec": [
                {
                    "name": "Basic Authentication",
                    "spec": {
                        "$schema": "http://json-schema.org/draft-07/schema#",
                        "type": "object",
                        "description": "defines auth params",
                        "properties": {
                            "project": {
                                "type": "string",
                                "description": "The project ID of the default BigQuery project to query against"
                            },
                            "clientId": {
                                "type": "string",
                                "description": "ID of the application used to generate the refresh token."
                            },
                            "clientSecret": {
                                "type": "string",
                                "description": "Secret of the application used to generate the refresh token.",
                                "format": "password"
                            },
                            "refreshToken": {
                                "type": "string",
                                "description": "The refresh token obtained from Google used to authorize access to BigQuery.",
                                "format": "password"
                            }
                        },
                        "required": [
                            "project",
                            "clientId",
                            "clientSecret",
                            "refreshToken"
                        ]
                    }
                }
            ]
        }
    ]
}

建立基本連接

基本連接指定源,並包含該源的憑據。 每個帳戶只需要一個基本連 BigQuery 接,因為它可用於建立多個源連接器以導入不同的資料。
API格式
POST /connections

請求
curl -X POST \
    'https://platform.adobe.io/data/foundation/flowservice/connections' \
    -H 'Authorization: Bearer {ACCESS_TOKEN}' \
    -H 'x-api-key: {API_KEY}' \
    -H 'x-gw-ims-org-id: {IMS_ORG}' \
    -H 'x-sandbox-name: {SANDBOX_NAME}' \
    -H 'Content-Type: application/json' \
    -d '{
        "name": "BigQuery base connection",
        "description": "Base connection for Google BigQuery",
        "auth": {
            "specName": "Basic Authentication",
            "params": {
                "project": "{PROJECT}",
                "clientId": "{CLIENT_ID}",
                "clientSecret": "{CLIENT_SECRET}",
                "refreshToken": "{REFRESH_TOKEN}"
            }
        },
        "connectionSpec": {
            "id": "3c9b37f8-13a6-43d8-bad3-b863b941fedd",
            "version": "1.0"
    }'

屬性
說明
auth.params.project
要查詢的預設項目 BigQuery 的項目ID。 反對。
auth.params.clientId
用來產生重新整理Token的ID值。
auth.params.clientSecret
用來產生重新整理Token的用戶端值。
auth.params.refreshToken
從用來授權存取 Google 的重新整理Token BigQuery。
connectionSpec.id
在上一步 id 中檢索 BigQuery 的帳戶的連接規範。
回應
成功的響應返回新建立的基本連接的詳細資訊,包括其唯一標識符( id )。 在下一個教學課程中探索資料時,需要此ID。
{
    "id": "26ced882-729b-470f-8ed8-82729b570f03",
    "etag": "\"6507cfd8-0000-0200-0000-5e18fc600000\""
}

後續步驟

在本教學課程中,您已使用 Flow Service API建立基本連線,並取得連線的唯一ID值。 在下一個教程中,您可以使用此基本連接ID來學習如何使 用流服務API來探索資料庫或NoSQL系統