批量文件上传
在 Integrated Data Lake 中批量上传对象,增加了批量导入或导出数据的可能性。它可以通过外部服务器或程序来分析或过滤大量数据。批量文件上传使用 AWS 提供的 STS 令牌和写访问权限。这需要指定需要上传大容量文件的文件夹。然后生成对该路径(文件夹)具有写访问权的 STS 令牌。 使用这个 STS 令牌,您可以批量上传文件。STS 令牌的有效期最长为12小时。
提供写权限
tenantAdmin 可以访问该 API,并提供对文件夹或路径、子租户文件夹和根文件夹 (Time Series Import (TSI)文件夹除外)的写权限。
POST /accessTokenPermissions
Content-Type: Content-Type: application/json
请求示例:
{
"subtenantId": "204a896c-a23a-11e9-a2a3-2a2ae2dbcce4",
"path": "/myfolder1/myfolder2",
"permission": "WRITE"
}
响应示例:
{
"subtenantId": "204a896c-a23a-11e9-a2a3-2a2ae2dbcce4",
"id": "string",
"path": "/myfolder1/myfolder2",
"permission": "WRITE",
"created": "2019-11-12T13:36:00.000Z"
}
获取写权限文件夹列表
tenantAdmin 可以 获恨拥有写权限的所有文件夹的列表,还可以获得子租户文件夹的写权限列表。
GET /accessTokenPermissions
Content-Type: application/json
响应示例:
{
"accessTokenPermissions": [
{
"subtenantId": "204a896c-a23a-11e9-a2a3-2a2ae2dbcce4",
"id": "string",
"path": "/myfolder1/myfolder2",
"permission": "WRITE",
"created": "2019-11-12T13:36:00.000Z"
}
]
}
获取指定id写权限文件夹列表
对于指定id,您可以获取具有写权限的文件夹列表。tenantAdmin 还可以获取子承租者请求的详细信息。子租户可以访问此 API 以获取属于其写文件夹的请求的详细信息。
GET /accessTokenPermissions/{id}
Content-Type: application/json
响应示例:
{
"subtenantId": "204a896c-a23a-11e9-a2a3-2a2ae2dbcce4",
"id": "string",
"path": "/myfolder1/myfolder2",
"permission": "WRITE",
"created": "2019-11-12T13:36:00.000Z""id": "0234sd34a23a-11e9-a2a3-2a2sdfw34ce4",
}
撤销写权限
TenantAdmin 可以访问该 API 来删除指定 id 的文件夹写权限。
DELETE /accessTokenPermissions/{id}
Content-Type: application/json
响应示例:
Status: 204 - deleted
获取具有写权限的 STS 令牌
请求 URL:
https://gateway.eu1.mindsphere.io/api/datalake/v3/generateAccessToken
请求示例:
{
"durationSeconds": 900,
"permission": "WRITE"
}
响应示例:
{
"storageAccount": "dlbucketname",
"storagePath": "data/ten=tenantname OR data/sub=subtenantId",
"credentials": {
"secretAccessKey": "AbCdEfGhIjKlMnOpQrStUvWxYz",
"accessKeyId": "AbCdEfGhIjKlMnOpQrStUvWxYzAbCdEfGhIjKlMnOpQrStUvWxYz",
"sessionToken": "AbCdEfGhIjKlMnOpQrStUvWxYzAbCdEfGhIjKlMnOpQrStUvWxYzAbCdEfGhIjKlMnOpQrStUvWxYzAbCdEfGhIjKlMnOpQrStUvWxYzAbCdEfGhIjKlMnOpQrStUvWxYzAbCdEfGhIjKlMnOpQrStUvWxYz"
},
"durationSeconds": 900,
"permission": "WRITE"
}
命令和输出
以下命令用于批量上传:
aws s3 cp s3://ms-coldstorage-iot-integ-eu-central-1/000013bb5ed740f9950504854367e12a s3://estbuckettimeseries/ten=dide2/000013bb5ed740f9950504854367e12a --recursive
Completed 1.7 KiB/1.7 KiB (812 Bytes/s) with 1 file(s) remaining
copy: s3://ms-coldstorage-iot-integ-eu-central-1/000013bb5ed740f9950504854367e12a/propSetName=SPSNFRTestFields/date=2019-04-05/0900.parquet to s3://estbuckettimeseries/ten=dide2/000013bb5ed740f995050485436
7e12a/propSetName=SPSNFRTestFields/date=2019-04-05/0900.parquet
说明
上传文件所需的时间取决于网络带宽和位置。
还有问题?
除非另行声明,该网站内容遵循MindSphere开发许可协议.
Last update: June 30, 2020