google cloud storage products

Posted elaron

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了google cloud storage products相关的知识,希望对你有一定的参考价值。

https://cloud.google.com/products/storage/

技术图片

 

BigTable

Cloud Bigtable 是 Google 面向大数据领域的 NoSQL 数据库服务。它也是为 Google 搜索、Analytics(分析)、地图和 Gmail 等众多核心 Google 服务提供支撑的数据库。

https://cloud.google.com/bigtable/docs/?_ga=2.253537231.-792515609.1538018833

Cloud Bigtable 是稀疏填充的表,可以扩展到数十亿行和数千列,可让您存储 TB 级甚至是 PB 级的数据。每行中都会有一个被编入索引的值;这个值称为行键。Cloud Bigtable 非常适合以非常低的延迟存储大量单键数据。它可以低延迟支持高读写吞吐量,是 MapReduce 操作的理想数据源。

适合的场景

如果应用需要非常高的吞吐量和可扩展性来处理非结构化键/值数据,而数据中的每个值通常不超过 10 MB,使用 Cloud Bigtable 非常适合。Cloud Bigtable 还非常适合作为批量 MapReduce 操作、流处理/分析和机器学习应用的存储引擎。

 

Datastore

永久性磁盘(块存储)

  • 虚拟机磁盘
  • 在多个虚拟机之间共享只读数据
  • 为运行中的虚拟机快速创建耐久备份
  • 数据库的本地存储空间

https://cloud.google.com/persistent-disk/

Google 永久性磁盘是适用于 Google Cloud Platform 的一种耐用的高性能块存储服务。永久性磁盘提供 SSD 和 HDD 存储空间,两者都可以关联到 Google Compute Engine 或 Google Kubernetes Engine 中运行的实例。存储卷可以透明地调整大小、快速备份,并支持多个读取器同时读取

Google Compute Engine支持的存储类型对比

 



地区标准
永久性磁盘
区域
永久性
磁盘
地区 SSD
永久性磁盘
区域
SSD 永久性
磁盘
本地 SSDCloud Storage 存储分区
存储类型 高效可靠的块存储 在区域中两个地区间进行同步复制的高效可靠的块存储 快速、可靠的块存储 在区域中两个地区间进行同步复制的快速可靠的块存储 高性能本地块存储 经济实惠的对象存储 
每个实例的最大空间 64 TB 64 TB 64 TB 64 TB 3 TB 几乎无限 
访问范围 地区 地区 地区 地区 实例 全球 
数据冗余 地区 多地区 地区 多地区 区域或多区域 
静态加密 有 
自定义加密密钥 有 
支持的机器类型 所有机器类型 所有机器类型 所有机器类型 所有机器类型 大多数机器类型 所有机器类型 

 

 块存储性能指标

 



地区标准
永久性磁盘
区域
永久性
磁盘
地区
SSD 永久性磁盘
区域
SSD 永久性
磁盘
本地 SSD (SCSI)本地 SSD (NVMe)
最大持续 IOPS
读取 IOPS/GB 0.75 0.75 30 30 266.7 453.3
写入 IOPS/GB) 1.5 1.5 30 30 186.7 240
读取 IOPS/实例 3000 3000 15,000 - 60,000* 15,000 - 60,000* 400,000 680,000
写入 IOPS/实例 15000 15000 15,000 - 30,000* 15,000 - 30,000* 280,000 360,000
最大持续吞吐量 (MB/s)
读取吞吐量/GB 0.12 0.12 0.48 0.48 1.04 1.77
写入吞吐量/GB 0.12 0.12 0.48 0.48 0.73 0.94
读取吞吐量/实例 180 180 240 - 1200* 240 - 1200* 1,560 2,650
写入吞吐量/实例 120 120 240 - 400* 120 - 200* 1,090 1,400

Storage(对象存储)

  • 流式视频
  • 图片与 Web 资源库
  • 数据湖
  • 备份
  • 媒体内容归档
  • 长尾内容
  • 遵守法规要求

https://cloud.google.com/storage/docs/

特性:

特性 内容
加密

Cloud Storage 在将数据写入磁盘之前,始终会在服务器端对您的数据进行加密,无需额外费用。除了此标准行为外,您在使用 Cloud Storage 时,还可以使用其他方法加密数据。以下内容总结了您可以使用的加密选项:

  • 服务器端加密:在 Cloud Storage 接收数据之后、在将数据写入磁盘并存储之前执行的加密。

    • 客户提供的加密密钥:您可以为服务器端加密功能创建和管理您自己的加密密钥,这些密钥充当标准 Cloud Storage 加密基础之上的额外加密层。

    • 客户管理的加密密钥:您可以使用 Cloud Key Management Service 生成和管理加密密钥,这些密钥充当标准 Cloud Storage 加密基础之上的额外加密层。

  • 客户端加密:在将数据发送到 Cloud Storage 之前执行的加密。此类数据在到达 Cloud Storage 时已进行加密,但同样会进行服务器端加密。

 

对象元数据

 元数据用于标识对象的属性,并指定了访问对象时应如何处理对象。元数据以键值对的形式存在。

元数据的可变性各不相同:有些元数据您随时可以修改,有些元数据您只能在创建对象时设置,有些元数据您只能查看。

 

 

Cloud Pub/Sub Notifications for Cloud Storage

 Cloud Pub/Sub Notifications 将存储分区中对象的相关更改信息发送到 Cloud Pub/Sub(随后,信息以消息的形式添加到您选择的 Cloud Pub/Sub 主题中)。例如,您可以跟踪存储分区中创建和删除的对象。每个通知都包含相应的信息,这些信息说明了触发通知的事件以及发生更改的对象。
 

对象版本控制

 

为了支持检索已删除或覆盖的对象,Cloud Storage 提供了对象版本控制功能。本页面介绍了此功能以及使用此功能时可用的选项。要了解如何启用和使用对象版本控制,请参阅使用对象版本控制

启用对象版本控制可防止 Cloud Storage 的数据被覆盖或意外删除。启用对象版本控制会增加存储费用,可以通过配置对象生命周期管理删除旧对象版本,以在一定程度上缓解存储费用增加。

生命周期管理配置   

您可以将生命周期管理配置分配给存储分区。该配置包含一组适用于存储分区中的当前和未来对象的规则。当对象满足其中一个规则的条件时,Cloud Storage 会自动对该对象执行指定的操作。以下是一些示例用例:

  • 将超过 365 天的对象的存储类别降级为 Coldline 存储空间。
  • 删除 2013 年 1 月 1 日之前创建的对象。
  • 在启用版本控制的存储分区中仅保留每个对象的 3 个最新版本。
 请求者付款  

每次用户访问存储分区或对象等 Cloud Storage 资源时,都会产生与发出和执行请求关联的费用。此类费用包括:

通常,资源的项目所有者需支付这些访问费用;但是,如果请求者随其请求一起提供结算项目,则会针对请求者的项目进行计费。在您的存储分区上启用“请求者付款”功能后,您可以要求请求者在其请求中包含一个结算项目,从而对请求者的项目进行计费。在某些情况下,启用请求者付款功能能够为您带来便利;例如,您想要向用户提供大量数据,但您不希望承担他们访问这些数据所产生的费用,在这种情况下,建议您启用此功能。

 存储分区锁定功能  

您可以在创建新存储分区时包含保留政策,也可以将保留政策添加到现有存储分区。为存储分区设置保留政策可确保在达到保留政策所定义的保留期限之前,不能删除或覆盖存储分区中的所有当前和未来的对象。尝试删除或覆盖尚未到达保留期限的对象会导致失败,并返回 403 - retentionPolicyNotMet 错误。

例如,假设在存储分区有两个对象:对象 A 是一个月前添加的,对象 B 是两年前添加的。如果您向该存储分区应用保留期限为 1 年的保留政策,则无法在将来 11 个月内删除或覆盖对象 A:它当前的存在时间是 1 个月,必须至少达到 1 年才能被删除或覆盖。而对象 B 可以被立即删除或覆盖,因为其存在时间超过了保留期限。如果您决定覆盖对象 B,则此新版本的对象 B 的存在时间将从 0 年开始重新计算。

为了帮助您跟踪单个对象何时可以被删除,具有保留政策的存储分区中的每个对象都具有保留失效时间的元数据。此元数据显示对象达到保留期限的日期和时间。

保留期限以秒为单位。但为了方便,某些工具(如 Google Cloud Platform Console 和 gsutil)也允许您使用其他时间单位设置和查看保留期限。

该功能适用于医疗或金融等,有存档时限审计要求的存储内容。

 

对 gzip 压缩文件进行转码

 在 Cloud Storage 中,转码是指系统在将文件传送给请求者之前自动更改文件的压缩状态。如果转码生成的文件是 gzip 压缩文件,则可视为压缩式转码,而如果生成的文件已不再是 gzip 压缩文件,则可视为解压缩式转码。Cloud Storage 支持解压缩形式的转码。

跨源资源共享 (CORS)

同源政策是在客户端网络应用(比如网络浏览器)上实施的安全策略,用于防止来自不同来源的资源之间发生交互。虽然这种安全措施可用于防止恶意行为,但也可能会阻止已知来源之间开展的合法交互。例如,App Engine 上托管的页面(网址为 example.appspot.com)中的脚本可能需要使用存储在 Cloud Storage 存储分区(网址为 example.storage.googleapis.com)中的资源。但是,由于浏览器会将它们视为两个不同的来源,因此不允许来自 example.appspot.com 的脚本从 example.storage.googleapis.com 提取资源。

跨源资源共享 (CORS) 规范是由万维网联盟 (W3C) 制定的,该规范旨在克服这一限制。Cloud Storage 支持此规范,这意味着,它允许您将存储分区配置为支持 CORS。在上述示例中,您可以配置 example.storage.googleapis.com 存储分区,以便浏览器可以与来自 example.appspot.com 的脚本共享该存储分区的资源。

 

Filestore

  • 主目录
  • 渲染和媒体处理
  • 应用迁移

https://cloud.google.com/filestore/docs/

特性

特性 描述
访问控制

Cloud Filestore 不支持 Kerberos,以保护对 Cloud Filestore 实例的访问。请改用下面描述的 Linux 和 Cloud Identity and Access Management (IAM) 选项。

Cloud Filestore 文件共享具有固定 /etc/exports 设置。(与nfsd的设置完全一致)

IAM 权限只能控制对 Cloud Filestore 操作(例如创建 Cloud Filestore 实例)的访问权限。Linux 权限则决定对 Cloud Filestore 文件共享上的操作(如读取或执行)的访问权限。

网络

定 VPC 网络中的所有内部 IP 地址都可以连接到 Cloud Filestore 实例。

如果您使用的是除默认网络以外的 VPC 网络,则可能需要创建防火墙规则,以启用与 Cloud Filestore 实例的通信。

可靠性

Cloud Filestore 内置地区级(同城)存储冗余功能,可保护您的数据免受设备故障的影响,并确保数据在数据中心维护期间的可用性。

Cloud Filestore 实例位于区域内的各个地区中。区域是指您可以在其中运行资源的特定地理位置。每个区域都被划分为几个地区。例如,美国中部的 us-central1 区域包含 us-central1-a、us-central1-b、us-central1-c 和 us-central1-f 地区。

可用性与恢复 如果发生需要 GCP 重启 Cloud Filestore 实例的可恢复错误,该实例应在两分钟内再次可用。如果 Cloud Filestore 实例所在的地区处于关闭状态,则该实例不可用
支持协议 Cloud Filestore 在 Cloud Filestore 实例上使用 NFSv3,并支持任何与 NFSv3 兼容的客户端。
   
   

性能指标

 


标准
高级
最大读取吞吐量 100 MB/秒 (1 TB)、180 MB/秒(10 TB 以上) 1.2 GB/秒
最大写入吞吐量 100 MB/秒 (1 TB)、120 MB/秒(10 TB 以上) 350 MB/秒
最大 IOPS 5000 60000
每个共享的最大容量 63.9 TB 63.9 TB
客户实现的典型可用性 99.9% 99.9%
协议 NFSv3 NFSv3

 

层级大小 (TB)读取 (Tput)读取 (IOPS)写入 (Tput)写入 (IOPS)
标准 1 100 MB/秒 600 100 MB/秒 1000
标准 10+ 180 MB/秒 1000 120 MB/秒 5000
优质 2.5+ 1.2 GB/秒 60000 350 MB/秒 25000

性能测试指令

以下示例对最大写入吞吐量执行基准化分析:

 
fio --ioengine=sync --direct=0 --fsync_on_close=1 --randrepeat=0 --nrfiles=1  --name=seqwrite --rw=write --bs=1m --size=20G --end_fsync=1 --fallocate=none  --overwrite=0 --numjobs=1 --directory=/mnt/gcfs --loops=10

以下示例对最大写入 IOPS 执行基准化分析:

 
fio --ioengine=sync --direct=0 --fsync_on_close=1 --randrepeat=0 --nrfiles=1  --name=randwrite --rw=randwrite --bs=4K --size=1G --end_fsync=1 --fallocate=none  --overwrite=0 --numjobs=80 --sync=1 --directory=/mnt/standard --loops=10

以下示例对最大读取吞吐量执行基准化分析:

 
fio --ioengine=sync --direct=0 --fsync_on_close=1 --randrepeat=0 --nrfiles=1  --name=seqread --rw=read --bs=1m --size=240G --end_fsync=1 --fallocate=none  --overwrite=0 --numjobs=1 --directory=/mnt/ssd --invalidate=1 --loops=10

以下示例对最大读取 IOPS 执行基准化分析:

 
fio --ioengine=sync --direct=0 --fsync_on_close=1 --randrepeat=0 --nrfiles=1  --name=randread --rw=randread --bs=4K --size=1G --end_fsync=1 --fallocate=none  --overwrite=0 --numjobs=20 --sync=1 --invalidate=1 --directory=/mnt/standard  --loops=10

以上是关于google cloud storage products的主要内容,如果未能解决你的问题,请参考以下文章

google cloud storage products

错误:模块“google.cloud.bigquery_storage”没有属性“BigQueryReadClient”

使用 Cloud Functions for Firebase 和 @google-cloud/storage 删除图像时出现问题

Google cloud 存储 Storage

google cloud storage托管静态页面

如何访问 Python google.cloud.storage 上传方法中的错误原因?