当您与销售或支持联系人一起设置对数据传输 v2.0 的访问权限时, 系统会为您提供存储分区名称您需要向销售联系人提供一个 Google 群组,以便您控制对 Google Cloud Storage 中数据文件的访问权限。
使用 gsutil 访问数据
gsutil 工具是一个用 Python 编写的命令行应用,可让您无需编写任何代码即可访问数据。例如,您可以将 gsutil 作为脚本或批处理文件的一部分使用,而无需创建自定义应用。
要开始使用 gsutil,请阅读 gsutil 文档。该工具会首次提示您输入凭据 供您使用,然后存储起来以备日后使用。
gsutil 示例
您可以使用 gsutil 列出所有文件,如下所示:
gsutil ls gs://[bucket_name]/[object name/file name]
gsutil 使用的语法大部分与 UNIX 相同,包括通配符 星号 (*),因此您可以列出所有 NetworkImpression 文件:
gsutil ls gs://[bucket_name]/dcm_account6837_impression_*
下载文件也非常简单:
gsutil cp gs://[bucket_name]/dcm_account6837_impression_2015120100.log.gz
您可以将文件从分散的 DT Google 存储分区复制到您自己的 Google API GCS 存储分区 使用 Unix shell 脚本时,有以下两种选择:
在 gsutil 中,如果您使用的是 Unix 系统,请每天针对您的所有存储桶运行以下命令:
$ day=$(date --date="1 days ago" +"%m-%d-%Y") $ gsutil -m cp gs://{<dcmhashid_A>,<dcmhashid_B>,etc.}/*$day*.log.gz gs://<client_bucket>/
或者,您也可以使用稍微复杂一些的 bash 文件解决方案:
#!/bin/bash set -x buckets={dfa_-hasid_A dfa_-hashid_B,...} #include all hash ids day=$(date --date="1 days ago" +"%m-%d-%Y") for b in ${buckets[@]}; do / gsutil -m cp gs://$b/*$day*.log.gz gs://
/ / done
以编程方式访问数据
Google Cloud Storage 提供了适用于多种编程语言的 API 和示例,可让您以编程方式访问数据。以下是构建有效集成时必须执行的 Data Transfer v2.0 专用步骤。
获取服务账号
要开始使用数据传输 v2.0,您首先需要 设置工具,它会引导您在 Google API 控制台、启用 API 并创建凭据。
要开设新的服务账号,请按以下步骤操作:
- 点击创建凭据 > 服务账号密钥。
- 选择要下载哪种格式的服务账号公钥/私钥文件,是标准的 P12 文件还是可由 Google API 客户端库加载的 JSON 文件。
接下来系统就会为您生成新的公钥/私钥对并将其下载到您的计算机;这对密钥仅此一份,您应负责妥善存储。
请务必让此窗口保持打开状态,因为您将需要服务账号电子邮件地址 。
向群组添加服务账号
- 转到 Google 群组
- 点击“我的群组”,然后选择您用于管理访问权限的群组 复制到 DT v2.0 Cloud Storage 存储分区中
- 点击“管理”
- 请勿点击“Invite Members”(邀请成员)!
- 点击“直接添加成员”
- 将上一步中的服务账号电子邮件地址复制到“成员”框中
- 选择“不接收电子邮件”
- 点击“添加”按钮
我不小心点击了“邀请成员”
<ph type="x-smartling-placeholder">范围
传递到 Cloud Storage 的所有范围都必须是只读的
例如,在使用 Java 客户端库时,将正确的作用域 使用如下:
StorageScopes.DEVSTORAGE_READ_ONLY