Google Cloud 大数据:在 GCP 上构建您的大数据架构

大数据是目前互联网热词之一,而众多云计算平台也纷纷搭建了数据处理架构,让用户在使用云服务的时候储存、处理、分析数据。接下来我们就来聊一下谷歌云平台提供的大数据服务。

Google Cloud Platform(以下简称GCP) 提供多种支持大数据存储和分析的服务。可能最重要的是 BigQuery,这是一个高性能的 SQL 兼容引擎,可以在几秒钟内对非常大的数据量进行分析。GCP 提供多种其他服务,包括 Dataflow、Dataproc 和 Data Fusion,可帮助您创建完整的基于云的大数据基础架构。

谷歌云大数据服务

谷歌提供了许多大数据服务,包括以下

谷歌云大数据服务一览

Google Cloud BigQuery

BigQuery 可让我们存储和查询包含大量数据的数据集。该服务采用表结构,支持 SQL,并与所有 GCP 服务无缝集成。可以将 BigQuery 用于批处理和流式处理。此服务非常适合离线分析和交互式查询。

Google Cloud Dataflow

Dataflow 提供无服务器批处理和流处理。我们可以创建自己的管理和分析管道,Dataflow 将自动管理我们的资源。该服务可以与 BigQuery 等 GCP 服务和 Apache Spark 等第三方解决方案集成。

Google Cloud Dataproc

Dataproc 可让我们集成开源堆栈并通过自动化简化流程。这是一项完全托管的服务,可帮助我们使用 GCP 云中的 Apache Hadoop 等资源查询和流式传输数据。我们可以将 Dataproc 与 Bigtable 等其他 GCP 服务集成。

Google Cloud Pub/Sub

Pub/Sub 是一种异步消息传递服务,用于管理不同应用程序之间的通信。Pub/Sub 通常用于流分析管道。可以将 Pub/Sub 与 GCP 上或下的系统集成,并执行与分发模式相关的常规事件数据提取和操作。

Google Cloud Composer

Composer 是一个基于 Apache Airflow 的完全托管的基于云的工作流编排服务。可以使用 Composer 管理跨多个平台的数据处理并创建自己的混合环境。Composer 允许使用 Python 定义流程。然后,该服务会自动处理作业,例如 ETL。

Google Cloud Data Fusion

Data Fusion 是一种完全托管的数据集成服务,使各种技能水平的利益相关者能够准备、传输和转换数据。Data Fusion 允许使用点击式可视界面创建无代码 ETL/ELT 数据管道。Data Fusion 是一个开源项目,可提供使用混合云和多云集成所需的可移植性。

Google Cloud Bigtable

Bigtable 是一种完全托管的 NoSQL 数据库服务,旨在为大数据工作负载提供高性能。Bigtable 在低延迟存储堆栈上运行,支持开源 HBase API,并在全球范围内可用。该服务非常适合时间序列、金融、营销、图形数据和物联网。它为 Google 的核心服务提供支持,包括分析、搜索、Gmail 和地图。

Google Cloud Data Catalog

Data Catalog 提供了数据发现功能,可以使用它来捕获业务和技术元数据。为了轻松定位数据资产,可以使用模式化标签并构建自定义目录。为了保护数据,该服务使用访问级别控制。为了对敏感信息进行分类,该服务与 Google Cloud Data Loss Prevention 集成。

谷歌云大数据处理框架

谷歌云大数据处理框架(来源:谷歌云)

Google 为Google Cloud 上的大规模分析提供了参考架构,每秒处理超过 100,000 个事件或每秒流式传输超过 100 MB。该架构基于 Google BigQuery。

Google 建议构建具有热路径和冷路径的大数据架构。热路径是需要近实时处理的数据流,而冷路径是可以在短暂延迟之后被处理的数据流。

这有几个优点,包括:

  • 能够在不超过配额的情况下存储所有事件的日志
  • 降低成本,因为只有一些事件需要作为流式插入处理(成本更高)

数据来自两个可能的来源——发布到 Cloud Pub/Sub 的分析事件,以及来自 Google Stackdriver Logging 的日志。数据分为两条路径:

  • 热路径(红色箭头)使用流式插入进入 BigQuery,以实现连续的数据流
  • 冷路径(蓝色箭头)馈入 Google Cloud Storage,然后从那里分批加载到 BigQuery。

谷歌云大数据应用Tips

Streaming Insert(流式插入)

如果需要实时地流式传输和处理数据,则需要使用Streaming Insert。Streaming Insert将数据写入 BigQuery 并进行查询,而无需加载作业,这可能会导致延迟。您可以使用 Cloud SDK 或 Google Dataflow 对 BigQuery 表执行Streaming Insert。

请注意,流数据需要几秒钟才能用于查询。使用Streaming Insert摄取数据后,最多需要 90 分钟才能用于复制和导出等操作。

数据摄取和收集

谷歌提供了多种数据收集的渠道:

  1. API-当使用Google Cloud Compute Engine或者Google Kubenetes Engine的时候,可以使用API提取数据
  2. 实时流式传输-使用Google Cloud Pub/Sub
  3. 大量本地数据-使用Google Transfer Appliance
  4. 其他云服务商

以上为谷歌云大数据服务一览,如果想要了解更多谷歌云信息,欢迎关注我们或者查看官网!

Cloud Ace:

Cloud Ace是亚太地区拥有最多据点的Google Cloud经销商,拥有200多名工程师,是谷歌最高级别合作伙伴,多次获得Google Cloud合作伙伴奖。Cloud Ace专注于提供谷歌云及相关服务,提供从云安装设计到运维的一站式支持。作为谷歌云托管服务商,我们提供技术支持、咨询、系统开发、谷歌云认证培训。Cloud Ace在日本4个城市和越南河内胡志明, 新加坡, 印尼, 泰国, 中国台湾香港深圳等地设有办事处,服务客户超过1000家,并与120多家合作伙伴公司共同推动数据迁移。

知乎专栏文章:https://zhuanlan.zhihu.com/p/408959677

Leave a Reply