使用 GitHub 信息创建数据集市

Posted

技术标签:

【中文标题】使用 GitHub 信息创建数据集市【英文标题】:Creating a Datamart with GitHub information 【发布时间】:2019-01-03 12:42:24 【问题描述】:

我想创建一个包含提交、拉取请求、还原等 GitHub 信息的数据集市。

GitHub 为这些事件提供了许多 webhook。我正在尝试创建一个架构来处理这些事件并将其加载到 RDS 数据库中。

我正在考虑使用 API Gateway + Kinesis Firehose 将事件转储到 S3。然后使用 cron (like.https://airflow.apache.org/) 来处理这些文件。

缺点和优点:

(+) 这很可靠,因为我们有一个简单的 API 网关 + Kineses 转储到 S3。

(+) 因为我使用的是 Airflow,所以很容易重新处理

(-) 架构设计有点过头了

(-) 它不是实时数据集市。

你们可以思考并提出另一种具有优点和缺点的架构吗?

【问题讨论】:

【参考方案1】:

我个人会选择:

API Gateway -> Lambda -> Kinesis Stream -> Kinesis Analytics

这会给你实时的要求。

然后,您可以使用 Kinesis Firehose 将流卸载到 S3 以进行任何临时查询。

【讨论】:

以上是关于使用 GitHub 信息创建数据集市的主要内容,如果未能解决你的问题,请参考以下文章

是啥让访问 OLAP 多维数据集/数据集市和类似数据结构比访问关系数据库更快?

创建github账号为课题组数据集加星和收藏

Inmon 数据集市与 Kimball 数据集市

Datamart vs.reporting Cube,有啥区别?

BI中事实表,维度表和数据集市,数据仓库的理解

第二章:数据仓库与数据集市建模