【问题标题】:Operational data warehousing for both data entry (OLTP) and BI (OLAP)用于数据输入 (OLTP) 和 BI (OLAP) 的操作数据仓库
【发布时间】:2015-01-05 22:10:33
【问题描述】:

我正在考虑一种简单的方法来构建可实现(接近)实时 BI 的运营数据仓库。

例如,我正在为数据库应用程序使用 SQL 服务器平台。一个应用程序用于 OLTP 数据输入,另一个用于数据仓库,最终用于 SSAS 和 BI 报告。

我知道 BI 的通用基础架构是

OLTP database -> Periodically updated data warehouse -> Analytic cube -> Reporting,

OLTP(规范化)数据库处理事务操作,数据仓库存储更新的数据用于 BI 操作。

但我正在考虑两种方法来实现数据仓库的实时性。

  1. 在没有 OLTP 数据库的情况下,使数据仓库(去规范化)也能处理事务操作
  2. 只要在 OLTP 数据库中完成数据输入,就更新单独的数据仓库

#1 和#2 的原因:

  1. 对于我的应用程序,单个 OLTP 数据库中不会有太多的秒到秒事务
  2. 缓慢的事务不会影响我的应用程序
  3. OLTP 数据库中大约有 10 个表
  4. 我的应用程序的主要卖点是接近实时的 BI 应用程序。
  5. 使用运营数据仓库,无需定期从 OLTP 更新

当然,#1 的未知部分是更新分析多维数据集时事务的速度有多慢。但是方法#2 解决了这个问题,尤其是在数据仓库的数据更新是异步完成的时候。

我想问一下我是否遗漏了什么问题,或者是否有更好的方法来构建运营数据仓库。

【问题讨论】:

    标签: database data-warehouse


    【解决方案1】:

    icCube 是一个用 JAVA 编写的内存中 OLAP 服务器,可以从任何关系数据库中获取数据。它支持incremental load 实现近实时BI。

    更新多维数据集时数据库服务器不会受到影响,因为 icCube 在单独的进程中构建多维数据集,然后所有查询都针对此外部进程完成。您必须将 icCube 配置为定期检查数据库服务器中的更新(例如,您可以使用触发器表进行快速/低成本检查)。

    例如,它支持用于 Excel 访问的 MDX/XMLA,并拥有自己的 Web 报告包。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-09-13
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多