Strömma Snowflake data till Experience Platform med Flow Service API
- The Snowflake direktuppspelningskällan är i betaversion. Läs Översikt över källor om du vill ha mer information om hur du använder betamärkta källor.
- The Snowflake strömningskälla är tillgänglig i API:t för användare som har köpt Real-time Customer Data Platform Ultimate.
Den här självstudiekursen innehåller steg för hur du ansluter och direktuppspelar data från Snowflake till Adobe Experience Platform med [Flow Service API] (https://www.adobe.io/experience-platform-apis/references/flow-service/).
Komma igång
Handboken kräver en fungerande förståelse av följande komponenter i Adobe Experience Platform:
- Källor: Experience Platform tillåter att data hämtas från olika källor samtidigt som du kan strukturera, etikettera och förbättra inkommande data med Platform tjänster.
- Sandlådor: Experience Platform innehåller virtuella sandlådor som partitionerar en enda Platform till separata virtuella miljöer för att utveckla och utveckla applikationer för digitala upplevelser.
För nödvändig installation och information om Snowflake strömningskälla. Läs Snowflake översikt över direktuppspelningskälla.
Använda plattforms-API:er
Mer information om hur du kan anropa API:er för plattformar finns i handboken komma igång med plattforms-API:er.
Skapa en basanslutning create-a-base-connection
En basanslutning bevarar information mellan källan och plattformen, inklusive källans autentiseringsuppgifter, anslutningsstatus och ditt unika basanslutnings-ID. Med det grundläggande anslutnings-ID:t kan du utforska och navigera bland filer inifrån källan och identifiera de specifika objekt som du vill importera, inklusive information om deras datatyper och format.
Om du vill skapa ett basanslutnings-ID skickar du en POST till /connections
slutpunkt när du ger Snowflake autentiseringsuppgifter som en del av begärandetexten.
API-format
POST /connections
Begäran
Följande begäran skapar en basanslutning för Snowflake:
auth.specName
värdet måste anges exakt som exemplet nedan, inklusive blanksteg.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: {ORG_ID}' \
-H 'x-sandbox-name: {SANDBOX_NAME}' \
-H 'Content-Type: application/json' \
-d '{
"name": "Snowflake base connection",
"description": "Snowflake base connection",
"auth": {
"specName": "Basic Authentication for Snowflake",
"params": {
"account": "wixnnnd-ui60793.snowflakecomputing.com",
"database": "ACME_DB",
"warehouse": "ACME_WH",
"username": "nikola15",
"schema": "PUBLIC",
"password": "xxxx",
"role": "ACCOUNTADMIN"
}
},
"connectionSpec": {
"id": "51ae16c2-bdad-42fd-9fce-8d5dfddaf140",
"version": "1.0"
}
}'
auth.params.account
auth.params.database
auth.params.warehouse
auth.params.username
auth.params.schema
auth.params.password
auth.params.role
public
.connectionSpec.id
51ae16c2-bdad-42fd-9fce-8d5dfddaf140
.Svar
Ett lyckat svar returnerar den nyskapade basanslutningen och dess motsvarande tagg.
{
"id": "1b614dc0-b76e-41e1-b25f-09f4a9d3f111",
"etag": "\"d300cf4e-0000-0200-0000-6447a7750000\""
}
Utforska era datatabeller explore-your-data-tables
Använd sedan basanslutnings-ID:t för att utforska och navigera i källans datatabeller genom att göra en GET-förfrågan till /connections/{BASE_CONNECTION_ID}/explore?objectType=root
slutpunkt när du anger ditt basanslutnings-ID som parameter.
API-format
GET /connections/{BASE_CONNECTION_ID}/explore?objectType=root
{BASE_CONNECTION_ID}
Begäran
Följande begäran hämtar strukturen och innehållet i din Snowflake direktuppspelningskonto.
curl -X GET \
'https://platform.adobe.io/data/foundation/flowservice/connections/1b614dc0-b76e-41e1-b25f-09f4a9d3f111/explore?objectType=root' \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'x-sandbox-name: {SANDBOX_NAME}'
Svar
Ett lyckat svar returnerar strukturen och innehållet i källans data på rotnivå.
{
"items": [
{
"type": "table",
"name": "ACME"
}
]
}
items.type
items.names
Skapa en källanslutning create-a-source-connection
En källanslutning skapar och hanterar anslutningen till den externa källan som data importeras från.
Om du vill skapa en källanslutning skickar du en POST till /sourceConnections
slutpunkt för Flow Service API.
API-format
POST /sourceConnections
Begäran
curl -X POST \
'https://platform.adobe.io/data/foundation/flowservice/sourceConnections' \
-H 'authorization: Bearer {ACCESS_TOKEN}' \
-H 'content-type: application/json' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'x-sandbox-name: {SANDBOX_NAME}' \
-d '{
"name": "Snowflake Streaming Source Connection",
"description": "A source connection for Snowflake Streaming data",
"baseConnectionId": "1b614dc0-b76e-41e1-b25f-09f4a9d3f111",
"connectionSpec": {
"id": "51ae16c2-bdad-42fd-9fce-8d5dfddaf140",
"version": "1.0"
},
"params": {
"tableName": "ACME",
"timestampColumn": "dOb",
"backfill": "true",
"timezoneValue": "PST"
}
}'
baseConnectionId
connectionSpec.id
params.tableName
params.timestampColumn
params.backfill
params.timezoneValue
TIMESTAMP_NTZ
. Om ej tillhandahållet, timezoneValue
standard är UTC.Svar
Ett lyckat svar returnerar ditt källanslutnings-ID och dess motsvarande tagg. Källanslutnings-ID används i ett senare steg för att skapa ett dataflöde.
{
"id": "61c0c5f1-bfe5-40f7-8f8c-a4dc175ddac6",
"etag": "\"d300cf4e-0000-0200-0000-6447a7750000\""
}
Skapa ett dataflöde
Skapa ett dataflöde för att strömma data från en rundtur Snowflake konto till Platform måste du göra en POST-förfrågan till /flows
slutpunkt med följande värden:
API-format
POST /flows
Begäran
Följande begäran skapar ett strömmande dataflöde för Snowflake konto.
curl -X POST \
'https://platform.adobe.io/data/foundation/flowservice/flows' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'x-sandbox-name: {SANDBOX_NAME}' \
-H 'Content-Type: application/json' \
-d '{
"name": "Snowflake Streaming Dataflow",
"description": "A dataflow for Snowflake streaming data",
"sourceConnectionIds": [
"61c0c5f1-bfe5-40f7-8f8c-a4dc175ddac6"
],
"targetConnectionIds": [
"78f41c31-3652-4a5e-b264-74331226dcf3"
],
"flowSpec": {
"id": "c1a19761-d2c7-4702-b9fa-fe91f0613e81",
"version": "1.0"
},
"transformations": [
{
"name": "Mapping",
"params": {
"mappingId": "44d42ed27c46499a80eb0c0705c38cbd",
"mappingVersion": 0
}
}
]
}'
sourceConnectionIds
targetConnectionIds
flowSpec.id
c1a19761-d2c7-4702-b9fa-fe91f0613e81
.transformations.params.mappingId
Svar
Ett lyckat svar returnerar ditt flödes-ID och dess motsvarande tagg.
{
"id": "2edc08ac-4df5-4fe6-936f-81a19ce92f5c",
"etag": "\"770029f8-0000-0200-0000-6019e7d40000\""
}
Nästa steg
Genom att följa den här självstudiekursen har du skapat ett dataflöde för direktuppspelning för Snowflake data med Flow Service API. Mer information om Adobe Experience Platform Sources finns i följande dokumentation: