使用Flow Service API浏览云存储文件夹

本教程提供了有关如何使用Flow Service API浏览和预览云存储的结构和内容的步骤。

NOTE
要探索云存储,您必须已拥有云存储源的有效基本连接ID。 如果您没有此ID,请参阅源概述,以了解可创建基础连接的云存储源的列表。

快速入门

本指南要求您对 Adobe Experience Platform 的以下组件有一定了解:

  • : Experience Platform允许从各种源摄取数据,同时允许您使用Platform服务来构建、标记和增强传入数据。
  • 沙盒: Experience Platform提供将单个Platform实例划分为单独虚拟环境的虚拟沙盒,以帮助开发和改进数字体验应用程序。

使用平台API

有关如何成功调用平台API的信息,请参阅平台API快速入门指南。

浏览您的云存储文件夹

您可以在提供源的基本连接ID的同时向Flow Service API发出GET请求,以检索有关云存储文件夹结构的信息。

执行GET请求以浏览云存储时,必须包括下表列出的查询参数:

参数
描述
objectType

您希望探索的对象类型。 将此值设置为:

  • folder:浏览特定目录
  • root:浏览根目录。
object
只有在查看特定目录时才需要此参数。 其值表示您希望浏览的目录的路径。

API格式

GET /connections/{BASE_CONNECTION_ID}/explore?objectType=root
GET /connections/{BASE_CONNECTION_ID}/explore?objectType=folder&object={PATH}
参数
描述
{BASE_CONNECTION_ID}
云存储源的基本连接ID。
{PATH}
目录的路径。

请求

curl -X GET \
  'http://platform.adobe.io/data/foundation/flowservice/connections/dc3c0646-5e30-47be-a1ce-d162cb8f1f07/explore?objectType=folder&object=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}'

响应

成功的响应将返回在查询的目录中找到的文件和文件夹数组。 请记下希望上传的文件的path属性,因为您需要在下一步中提供该属性以检查其结构。

[
    {
        "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文件的结构

要检查云存储中的数据文件结构,请在提供文件路径和类型作为查询参数的同时执行GET请求。

您可以通过在提供文件路径和类型的同时执行GET请求,检查云存储源中数据文件的结构。 您还可以检查不同的文件类型,如CSV、TSV或压缩JSON和分隔文件,方法是将其文件类型指定为查询参数的一部分。

API格式

GET /connections/{BASE_CONNECTION_ID}/explore?objectType=file&object={FILE_PATH}&fileType={FILE_TYPE}&{QUERY_PARAMS}&preview=true
GET /connections/{BASE_CONNECTION_ID}/explore?objectType=file&object={FILE_PATH}&preview=true&fileType=delimited&columnDelimiter=\t
GET /connections/{BASE_CONNECTION_ID}/explore?objectType=file&object={FILE_PATH}&preview=true&fileType=delimited&compressionType=gzip;
GET /connections/{BASE_CONNECTION_ID}/explore?objectType=FILE&object={FILE_PATH}&preview=true&fileType=delimited&encoding=ISO-8859-1;
参数
描述
{BASE_CONNECTION_ID}
云存储源连接器的连接ID。
{FILE_PATH}
要检查的文件的路径。
{FILE_TYPE}

文件的类型。 支持的文件类型包括:

  • 已分隔:以分隔符分隔的值。 DSV文件必须以逗号分隔。
  • JSON:JavaScript对象表示法。 JSON文件必须符合XDM
  • PARQUET:Apache Parquet。 Parquet文件必须符合XDM。
{QUERY_PARAMS}
可用于筛选结果的可选查询参数。 有关详细信息,请参阅查询参数上的部分。

请求

curl -X GET \
    'http://platform.adobe.io/data/foundation/flowservice/connections/{BASE_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: {ORG_ID}' \
    -H 'x-sandbox-name: {SANDBOX_NAME}'

响应

成功的响应将返回查询文件的结构,包括表名和数据类型。

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

使用查询参数 query

Flow Service API支持使用查询参数预览和检查不同的文件类型。

参数
描述
columnDelimiter
指定为列分隔符以检查CSV或TSV文件的单个字符值。 如果未提供该参数,则值默认为逗号(,)
compressionType

预览压缩的分隔文件或JSON文件所需的查询参数。 支持的压缩文件包括:

  • bzip2
  • gzip
  • deflate
  • zipDeflate
  • tarGzip
  • tar
encoding
定义在呈现预览时使用的编码类型。 支持的编码类型为: UTF-8ISO-8859-1注意encoding参数仅在摄取分隔的CSV文件时可用。 将使用默认编码UTF-8摄取其他文件类型。

后续步骤

通过完成本教程,您已探索云存储系统,找到要引入Platform的文件的路径,并查看其结构。 您可以在下一个教程中使用此信息来从云存储中收集数据并将这些数据带入Platform

recommendation-more-help
337b99bb-92fb-42ae-b6b7-c7042161d089