google-cloud-platform - 建议 Datalake / 数据仓库 BigQuery 设置
问题描述
首先,为长篇大论提前道歉,有时使用错误的术语。
希望有人可以建议我们如何在我们的组织中以最佳方式实施 BigQuery。
当前设置
目前,我们在 MySQL 中有一个数据仓库,其中包含使用雪花模式的规范化数据。
主要使用 Simego - Ouvvi 自动化服务器从其他 SQL 和 MySQL 数据库收集数据。
我们使用 Qlikview 和 PowerBI 软件来可视化这些数据。
这一切都很好,但是去年我们一直在努力采用更加事件驱动的方法。我们的目标是为组织中发生的所有事情创建事件,这意味着我们将创建更多数据。
此外,我们希望将内部数据与不同的数据源(如 Google Analytics)结合起来。
未来设置
我们已经开始使用 apache Beam 构建 Rabbit MQ 到 BigQuery 管道,将我们的数据流式传输到 BigQuery 数据集(现在称为“datalake”)。
到目前为止,我们希望一切顺利。
现在,为了能够将这些消息用于报告目的,我们需要转换这些事件消息。我们的想法是查询我们的消息并将我们需要的属性存储到一个名为“datawarehouse”的数据集中。我们想为这个仓库使用雪花模式,并带有一些嵌套字段。
但是如何做到这一点呢?我已经使用 BigQuery Web UI 进行了一些查询,我想只使用预定查询是可行的。
但是,我们更喜欢使用一个(或多个)工具来实现(按重要性排序):
- 设计我们的数据仓库模式(我们在旧数据仓库中使用 MySQL 工作台。远非完美,但已经足够好了)。
- 比仅使用查询更轻松地转换数据。
- 应用版本控制。谁更改了什么,何时更改等。
- 在应用更改之前查看更改。
- 应用持续部署。
我花了很多时间在谷歌上搜索,但是有这么多工具我觉得有点不知所措。因此,非常感谢任何帮助、建议或批评!
解决方案
推荐阅读
- reactjs - 将 Ionic Native / Cordova 插件与 Ionic (React) & Capacitor 一起使用的正确方法是什么?
- c++ - 什么是地图的*迭代器
? 这不是对 - php - 在 HTML 中包含 PHP 文件时,表格排序不起作用
- r - rowid_to_column() 和 mutate(rowid = row_number()) 之间的不同行为
- python - FLASK - 如何在我的函数在后台运行时显示加载屏幕,然后从我的函数返回 html 页面?
- spring - Spring依赖注入:需要单个bean
- git - 如何从标签中获取 Git(Lab) 发行说明(不是消息)
- sql-server - 计算每个状态花费的时间
- java - spurios 唤醒是否伴随着 InterruptedException?
- angular - 可以取消 HttpClient GET 请求吗?