【发布时间】:2019-01-21 11:45:03
【问题描述】:
在 Datawarehouse 的典型 HDFS 环境中,我看到了一些不同的阶段,在这些阶段中,数据被分阶段和转换,如下所示。我正在尝试在 Google 云平台中设计一个系统,我可以在其中执行所有这些转换。请帮忙。
HDFS:: 着陆区 -> 阶段 1 区域 -> 阶段 2 区域
着陆区 - 用于获取原始数据 第 1 阶段区域 - 来自着陆区域的原始数据被转换,然后更改为不同的数据格式和/或非规范化并存储在第 1 阶段 第 2 阶段区域 - 来自第 1 阶段的数据在事务表上更新,例如 HBASE。如果只是一个时间段的数据,那么还是基于HDFS的HIVE表 然后,从第 2 阶段开始进行报告(如果要进行转换,中间也可能有多个区域)
我在 Google Cloud 中实施的思考过程::
登陆(Google 云存储)-> 第 1 阶段(BigQuery - 托管所有基于时间的数据)-> 第 2 阶段(BigQuery 用于基于时间的数据/维护大表用于基于键的事务数据)
我的问题如下:
a) 这个实现看起来是否现实。我打算使用 Dataflow 在这些区域之间进行读取和加载?如果有人以前实施过一个设计来建造仓库,那会有什么更好的设计?
b) 使用 Dataflow 读取 Big Query 然后更新 Big table 的效果如何?我已经看到了一些用于大表更新的 Dataflow 连接器here
c) 由于 BigQuery 支持,Json 数据可以用作主要格式吗?
【问题讨论】:
标签: google-bigquery google-cloud-dataflow dataflow bigtable