CQRS与OLTP和OLAP数据库是否有意义?

时间:2017-02-27 12:57:36

标签: api olap microservices cqrs oltp

我有几个API与他们交谈的OLTP数据库。我还有每隔几个小时就将数据推送到OLAP数据库的ETL作业。

我的任务是构建一个自定义仪表板,显示来自OLAP数据库的高级别数据。我想构建几个指向OLAP数据库的API。我应该:

  1. 添加到我现有的API并调用OLAP数据库并使用CQRS类型模式,因此读取来自OLAP,而写入来自OLTP。我担心的是读写数据之间可能存在不匹配。数据的不匹配程度取决于您运行ETL作业的频率(在我的情况下为小时数)。
  2. 添加到我现有的API并调用OLAP数据库,然后要求客户选择是否需要API重叠的OLAP或OLTP数据。我担心的是客户端不应该知道数据来源的实现细节。
  3. 编写仅指向OLAP数据库的新API。这是一项额外的工作。

1 个答案:

答案 0 :(得分:0)

不要使用#1:当分析报告的管理层谈话时,它不会打扰ETL过程之间的数据不匹配 - 显然,您将在完成当天的ETL后生成CEO报告

不要使用#2:这样你就可以加载具有分析开销的跨国系统,并在两个系统的目的之间消除隔离(不利于操作和维护)

使用#3作为获取已处理结果的最佳方式,使用 Excel,PowerQuery,PowerBI 等现代工具,可以创建速度快的仪表板而不是进入表格并编写API。