谷歌云存储

本文描述了如何使用砖读写表和数据存储在谷歌云存储(GCS)。

读或写的GCS斗,你必须创建一个附加服务帐户,你必须把桶与服务帐户。你连接到桶直接与一个密钥生成的服务帐户。

访问一个gc桶直接与谷歌云服务帐户的关键

直接读取和写入一桶,你配置中定义的一个关键火花配置

步骤1:设置谷歌云服务帐户使用Google云控制台

您必须创建一个服务帐户的砖集群。砖推荐给这个服务帐户所需的最小特权来执行其任务。

  1. 点击我和管理在左侧导航窗格。

  2. 点击服务帐户

  3. 点击+创建服务帐户

  4. 输入服务帐户名称和描述。

    谷歌为GCS创建服务帐户
  5. 点击创建

  6. 点击继续

  7. 点击完成

步骤2:创建直接访问GCS桶的关键

警告

你生成的JSON关键服务帐户是一个私有密钥,只能共享其控制与授权用户访问数据集和资源云在你的谷歌账户。

  1. 在谷歌云控制台中,在服务帐户列表中,单击新创建的帐户。

  2. 部分中,点击添加键>创建新的键

    谷歌创建密钥
  3. 接受JSON密钥类型。

  4. 点击创建。关键文件被下载到你的电脑。

步骤3:配置GCS桶

创建一个桶

如果你不已经有一个桶中,创建一个:

  1. 点击存储在左侧导航窗格。

  2. 点击创建桶

    谷歌创建桶
  3. 点击创建

配置桶

  1. 配置桶的细节。

  2. 单击权限选项卡。

  3. 旁边的权限标签,点击添加

    谷歌桶细节
  4. 提供存储管理许可的服务帐户从云存储桶的角色。

    谷歌桶权限
  5. 点击保存

步骤4:把服务帐户砖秘密的关键

砖建议使用秘密的范围来存储所有的凭证。你可以把关键的私有密钥和私有密钥id JSON文件成砖秘密的范围。能给予用户、服务主体和组织您的工作区中获得阅读的秘密范围。这保护服务帐户关键,同时允许用户访问gc。创建一个秘密范围,明白了秘密

第五步:配置一个砖集群

  1. 砖的运行时版本的下拉,选择7.3 LTS或以上。

  2. 火花配置选项卡中,使用以下代码片段设置密钥存储在秘密范围作为环境变量:

    GSA_PRIVATE_KEY={{秘密/范围/ gsa_private_key}}GSA_PRIVATE_KEY_ID={{秘密/范围/ gsa_private_key_id}}spark.hadoop.google.cloud.auth.service.account。实现真正的spark.hadoop.fs.gs.auth.service.account。电子邮件< client-email >spark.hadoop.fs.gs.project。id <项目id >spark.hadoop.fs.gs.auth.service.account.private。关键GSA_PRIVATE_KEYspark.hadoop.fs.gs.auth.service.account.private.key。id GSA_PRIVATE_KEY_ID

    取代< client-email >,<项目id >与这些确切的值字段名称从你关键的JSON文件。

使用两个集群访问控制和笔记本一起访问控制保护访问服务帐户和GCS桶中的数据。看到集群访问控制工作区对象访问控制

步骤6:从GCS读取

阅读的GCS桶,用火花在任何受支持的格式读取命令,例如:

df=火花格式(“铺”)负载(“gs: / / < bucket名> / <路径>”)

写GCS桶,使用一个火花写命令在任何受支持的格式,例如:

df格式(“铺”)模式(“<模式>”)保存(“gs: / / < bucket名> / <路径>”)

取代< bucket名>斗中创建的名称步骤3:配置GCS桶

例如笔记本电脑

从谷歌云存储笔记本

在新标签页打开笔记本

写信给谷歌云存储笔记本

在新标签页打开笔记本