Esplorare un sistema di archiviazione cloud utilizzando l'API Flow Service

Questa esercitazione utilizza l’ Flow Service API per esplorare un sistema di archiviazione cloud di terze parti.

Introduzione

Questa guida richiede una buona comprensione dei seguenti componenti di Adobe Experience Platform:

  • Origini: Experience Platform consente l’acquisizione di dati da varie sorgenti, fornendo al contempo la possibilità di strutturare, etichettare e migliorare i dati in arrivo tramite Platform i servizi.
  • Sandbox: Experience Platform fornisce sandbox virtuali che suddividono una singola Platform istanza in ambienti virtuali separati per sviluppare e sviluppare applicazioni di esperienza digitale.

Le sezioni seguenti forniscono informazioni aggiuntive che sarà necessario conoscere per connettersi correttamente a un sistema di archiviazione cloud utilizzando l’ Flow Service API .

Ottenere un ID di connessione

Per esplorare un archivio cloud di terze parti utilizzando le API Platform, è necessario disporre di un ID di connessione valido. Se non si dispone già di una connessione per lo storage con cui si desidera lavorare, è possibile crearne una tramite le seguenti esercitazioni:

Lettura di chiamate API di esempio

Questa esercitazione fornisce esempi di chiamate API per dimostrare come formattare le richieste. Questi includono percorsi, intestazioni richieste e payload di richiesta formattati correttamente. Viene inoltre fornito un esempio di codice JSON restituito nelle risposte API. Per informazioni sulle convenzioni utilizzate nella documentazione per le chiamate API di esempio, consulta la sezione su come leggere le chiamate API di esempio nella guida alla risoluzione dei problemi di Experience Platform .

Raccogli i valori delle intestazioni richieste

Per effettuare chiamate alle API Platform, devi prima completare l’ esercitazione sull’autenticazione. Il completamento dell’esercitazione di autenticazione fornisce i valori per ciascuna delle intestazioni richieste in tutte le chiamate API Experience Platform, come mostrato di seguito:

  • Authorization: Bearer {ACCESS_TOKEN}
  • x-api-key: {API_KEY}
  • x-gw-ims-org-id: {IMS_ORG}

Tutte le risorse in Experience Platform, comprese quelle appartenenti a Flow Service, sono isolate in sandbox virtuali specifiche. Tutte le richieste alle API Platform richiedono un’intestazione che specifichi il nome della sandbox in cui avrà luogo l’operazione:

  • x-sandbox-name: {SANDBOX_NAME}

Tutte le richieste che contengono un payload (POST, PUT, PATCH) richiedono un’intestazione di tipo multimediale aggiuntiva:

  • Content-Type: application/json

Esplora l'archiviazione cloud

Utilizzando l’ID di connessione per l’archiviazione cloud, puoi esplorare file e directory eseguendo richieste GET. Quando esegui richieste di GET per esplorare l’archiviazione cloud, devi includere i parametri di query elencati nella tabella seguente:

Parametro Descrizione
objectType Tipo di oggetto da esplorare. Imposta questo valore come:
  • folder: Esplorare una directory specifica
  • root: Esplora la directory principale.
object Questo parametro è necessario solo quando si visualizza una directory specifica. Il suo valore rappresenta il percorso della directory che desideri esplorare.

Utilizza la seguente chiamata per trovare il percorso del file da inserire in Platform:

Formato API

GET /connections/{CONNECTION_ID}/explore?objectType=root
GET /connections/{CONNECTION_ID}/explore?objectType=folder&object={PATH}
Parametro Descrizione
{CONNECTION_ID} ID di connessione per il connettore di origine dell'archiviazione cloud.
{PATH} Percorso di una directory.

Richiesta

curl -X GET \
    'http://platform.adobe.io/data/foundation/flowservice/connections/{CONNECTION_ID}/explore?objectType=folder&object=/some/path/' \
    -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}'

Risposta

Una risposta corretta restituisce un array di file e cartelle presenti nella directory interrogata. Prendi nota della proprietà path del file che desideri caricare, in quanto devi fornirlo nel passaggio successivo per controllarne la struttura.

[
    {
        "type": "file",
        "name": "account.csv",
        "path": "/test-connectors/testFolder-fileIngestion/account.csv",
        "canPreview": true,
        "canFetchSchema": true
    },
    {
        "type": "file",
        "name": "profileData.json",
        "path": "/test-connectors/testFolder-fileIngestion/profileData.json",
        "canPreview": true,
        "canFetchSchema": true
    },
    {
        "type": "file",
        "name": "sampleprofile--3.parquet",
        "path": "/test-connectors/testFolder-fileIngestion/sampleprofile--3.parquet",
        "canPreview": true,
        "canFetchSchema": true
    }
]

Inspect la struttura di un file

Per esaminare la struttura del file di dati dall’archiviazione cloud, esegui una richiesta di GET fornendo il percorso del file e digita come parametro di query.

È possibile esaminare la struttura di un file di dati dall'origine di archiviazione cloud eseguendo una richiesta di GET fornendo il percorso e il tipo del file. Puoi anche controllare diversi tipi di file come CSV, TSV o JSON compresso e delimitare i file specificando i relativi tipi di file come parte dei parametri di query.

Formato API

GET /connections/{CONNECTION_ID}/explore?objectType=file&object={FILE_PATH}&fileType={FILE_TYPE}&{QUERY_PARAMS}&preview=true
GET /connections/{CONNECTION_ID}/explore?objectType=file&object={FILE_PATH}&preview=true&fileType=delimited&columnDelimiter=\t
GET /connections/{CONNECTION_ID}/explore?objectType=file&object={FILE_PATH}&preview=true&fileType=delimited&compressionType=gzip;
Parametro Descrizione
{CONNECTION_ID} ID di connessione del connettore di origine dell'archiviazione cloud.
{FILE_PATH} Percorso del file da esaminare.
{FILE_TYPE} Il tipo di file. I tipi di file supportati sono:
  • DELIMITATO: Valore separato da delimitatore. I file DSV devono essere separati da virgole.
  • JSON: Notazione oggetto JavaScript. I file JSON devono essere conformi a XDM
  • PARQUET: Parquet Apache. I file di parquet devono essere conformi a XDM.
{QUERY_PARAMS} Parametri di query facoltativi che possono essere utilizzati per filtrare i risultati. Per ulteriori informazioni, consulta la sezione sui parametri di query .

Richiesta

curl -X GET \
    'http://platform.adobe.io/data/foundation/flowservice/connections/{CONNECTION_ID}/explore?objectType=file&object=/aep-bootcamp/Adobe%20Pets%20Customer%2020190801%20EXP.json&fileType=json&preview=true' \
    -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}'

Risposta

Una risposta corretta restituisce la struttura del file interrogato, inclusi i nomi di tabella e i tipi di dati.

[
    {
        "name": "Id",
        "type": "String"
    },
    {
        "name": "FirstName",
        "type": "String"
    },
    {
        "name": "LastName",
        "type": "String"
    },
    {
        "name": "Email",
        "type": "String"
    },
    {
        "name": "Phone",
        "type": "String"
    }
]

Utilizzo dei parametri di query

L' Flow Service API supporta l'utilizzo di parametri di query per visualizzare in anteprima ed esaminare diversi tipi di file.

Parametro Descrizione
columnDelimiter Il valore a carattere singolo specificato come delimitatore di colonna per esaminare i file CSV o TSV. Se il parametro non viene fornito, il valore predefinito è una virgola (,).
compressionType Un parametro di query obbligatorio per l’anteprima di un file JSON o delimitato compresso. I file compressi supportati sono:
  • bzip2
  • gzip
  • deflate
  • zipDeflate
  • tarGzip
  • tar

Passaggi successivi

Seguendo questa esercitazione, hai esplorato il tuo sistema di archiviazione cloud, trovato il percorso del file che desideri portare in Platform e ne hai visualizzato la struttura. Puoi utilizzare queste informazioni nell'esercitazione successiva per raccogliere dati dall'archiviazione cloud e inserirli in Platform.

In questa pagina

Adobe Summit Banner

A virtual event April 27-28.

Expand your skills and get inspired.

Register for free
Adobe Summit Banner

A virtual event April 27-28.

Expand your skills and get inspired.

Register for free
Adobe Maker Awards Banner

Time to shine!

Apply now for the 2021 Adobe Experience Maker Awards.

Apply now
Adobe Maker Awards Banner

Time to shine!

Apply now for the 2021 Adobe Experience Maker Awards.

Apply now