[Ultimate]{class="badge positive"}
Strömma Snowflake-data till Experience Platform med API:t Flow Service
I den här självstudien beskrivs hur du ansluter och direktuppspelar data från ditt Snowflake-konto till Adobe Experience Platform med Flow Service API .
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 kan hämtas från olika källor samtidigt som du kan strukturera, etikettera och förbättra inkommande data med Experience Platform-tjänster.
- Sandlådor: Experience Platform innehåller virtuella sandlådor som partitionerar en enskild Experience Platform-instans till separata virtuella miljöer för att hjälpa till att utveckla och utveckla program för digitala upplevelser.
Använda Experience Platform API:er
Information om hur du kan anropa Experience Platform API:er finns i guiden Komma igång med Experience Platform API:er.
Samla in nödvändiga inloggningsuppgifter
Läs Snowflake översikten om du vill ha information om autentisering.
Skapa en basanslutning create-a-base-connection
En basanslutning bevarar information mellan källan och Experience Platform, inklusive autentiseringsuppgifter för källan, anslutningens aktuella tillstånd 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 skapar du en POST-begäran till /connections-slutpunkten och anger dina 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 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.accountauth.params.databaseauth.params.warehouseauth.params.usernameauth.params.schemaauth.params.passwordauth.params.rolepublic.connectionSpec.id51ae16c2-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 genom källans datatabeller genom att göra en GET-begäran till /connections/{BASE_CONNECTION_ID}/explore?objectType=root-slutpunkten och ange ditt basanslutnings-ID som en 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 ditt 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.typeitems.namesSkapa 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-begäran till /sourceConnections-slutpunkten för Flow Service API:t.
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"
}
}'
baseConnectionIdconnectionSpec.idparams.tableNameparams.timestampColumnparams.backfillparams.timezoneValueTIMESTAMP_NTZ. Om det inte anges används UTC som standard timezoneValue.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
Om du vill skapa ett dataflöde för att direktuppspela data från rundtur Snowflake-konto till Experience Platform, måste du göra en POST-begäran till slutpunkten /flows samtidigt som du anger följande värden:
API-format
POST /flows
Begäran
Följande begäran skapar ett dataflöde för direktuppspelning för ditt 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
}
}
]
}'
sourceConnectionIdstargetConnectionIdsflowSpec.idc1a19761-d2c7-4702-b9fa-fe91f0613e81.transformations.params.mappingIdSvar
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 dina Snowflake-data med API:t Flow Service. Mer information om Adobe Experience Platform Sources finns i följande dokumentation: