Show Menu
主題×

使用Flow Service API建立Azure Data Lake Storage Gen2連接器

Flow Service用於收集和集中Adobe Experience Platform內不同來源的客戶資料。 該服務提供用戶介面和REST風格的API,所有支援的源都可從中連接。
本教學課程使用Flow Service API來引導您完成將Experience Platform連接至Azure Data Lake Storage Gen2(以下稱為「ADLS Gen2」)的步驟。

快速入門

本指南需要有效瞭解Adobe Experience Platform的下列元件:
  • 來源 :Experience Platform可讓您從各種來源擷取資料,同時讓您能夠使用平台服務來建構、標示和增強傳入資料。
  • 沙盒 :Experience Platform提供虛擬沙盒,可將單一Platform實例分割為不同的虛擬環境,以協助開發和發展數位體驗應用程式。
以下各節提供您必須知道的其他資訊,以便使用Flow Service API成功建立ADLS Gen2來源連接器。

收集必要的認證

為了讓流服務連接到ADLS Gen2,您必須為以下連接屬性提供值:
憑證
說明
url
地址URL。
servicePrincipalId
應用程式的用戶端ID。
servicePrincipalKey
應用程式的金鑰。
tenant
包含您應用程式的租用戶資訊。
如需這些值的詳細資訊,請參 閱本ADLS Gen2檔案

讀取範例API呼叫

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

收集必要標題的值

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

查找連接規格

在將平台連接到ADLS Gen2之前,必須驗證ADLS Gen2是否存在連接規範。 如果連接規範不存在,則無法建立連接。
每個可用源都有其唯一的連接規範集,用於描述連接器屬性(如驗證要求)。 您可以執行GET請求並使用查詢參數,來查找ADLS Gen2的連接規範。
API格式
傳送不含查詢參數的GET請求時,會傳回所有可用來源的連線規格。 您可以包含查詢, property=name=="adls-gen2" 以取得ADLS Gen2的特定資訊。
GET /connectionSpecs
GET /connectionSpecs?property=name=="adls-gen2"

請求
下列請求會擷取ADLS Gen2的連線規格。
curl -X GET \
    'https://platform.adobe.io/data/foundation/flowservice/connectionSpecs?property=name=="adls-gen2"' \
    -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}'

回應
成功的回應會傳回ADLS Gen2的連線規格,包括其唯一識別碼( id )。 在下個步驟中需要此ID才能建立基本連線。
{
    "items": [
        {
            "id": "b3ba5556-48be-44b7-8b85-ff2b69b46dc4",
            "name": "adls-gen2",
            "providerId": "0ed90a81-07f4-4586-8190-b40eccef1c5a",
            "version": "1.0",
            "authSpec": [
                {
                    "name": "Basic Authentication for adls-gen2",
                    "spec": {
                        "$schema": "http://json-schema.org/draft-07/schema#",
                        "type": "object",
                        "description": "defines auth params required for connecting to adlsgen2 using service principal",
                        "properties": {
                            "url": {
                                "type": "string",
                                "description": "Endpoint for Azure Data Lake Storage Gen2."
                            },
                            "servicePrincipalId": {
                                "type": "string",
                                "description": "Service Principal Id to connect to ADLSGen2."
                            },
                            "servicePrincipalKey": {
                                "type": "string",
                                "description": "Service Principal Key to connect to ADLSGen2.",
                                "format": "password"
                            },
                            "tenant": {
                                "type": "string",
                                "description": "Tenant information(domain name or tenant ID)."
                            }
                        },
                        "required": [
                            "url",
                            "servicePrincipalId",
                            "servicePrincipalKey",
                            "tenant"
                        ]
                    }
                }
            ]
        }
    ]
}

建立基本連接

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

請求
curl -X POST \
    'http://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": "adls-gen2",
        "description": "base connection for adls-gen2",
        "auth": {
            "specName": "Basic Authentication for adls-gen2",
            "params": {
                "url": "{URL}",
                "servicePrincipalId": "{SERVICE_PRINCIPAL_ID}",
                "servicePrincipalKey": "{SERVICE_PRINCIPAL_KEY}",
                "tenant": "{TENANT}"
            }
        },
        "connectionSpec": {
            "id": "0ed90a81-07f4-4586-8190-b40eccef1c5a",
            "version": "1.0"
        }
    }'

屬性
說明
auth.params.url
ADLS Gen2帳戶的URL端點。
auth.params.servicePrincipalId
ADLS Gen2帳戶的服務主體ID。
auth.params.servicePrincipalKey
ADLS Gen2帳戶的服務主要金鑰。
auth.params.tenant
ADLS Gen2帳戶的租用戶資訊。
connectionSpec.id
在上一步 id 中擷取的ADLS Gen2帳戶連線規格。
回應
成功的響應返回新建立的基本連接的詳細資訊,包括其唯一標識符( id )。 在下個步驟中探索您的雲端儲存空間時,需要此ID。
{
    "id": "7497ad71-6d32-4973-97ad-716d32797304",
    "etag": "\"23005f80-0000-0200-0000-5e1d00a20000\""
}

後續步驟

在本教學課程中,您已使用API建立ADLS Gen2連線,並取得唯一ID作為回應內文的一部分。 您可以使用此連線ID來 探索使用Flow Service API的雲端儲存空間 ,或 使用Flow Service API內嵌鑲木地板資料