我正在考虑一种简单的方法来构建运营数据仓库,从而实现(接近)实时BI。
例如,我使用SQL Server平台进行数据库应用程序。一个应用程序用于OLTP数据输入,另一个用于数据仓库,最终用于SSAS和BI报告。
我知道BI的常见基础架构
OLTP database -> Periodically updated data warehouse -> Analytic cube -> Reporting
,
其中OLTP(规范化)数据库处理事务操作,数据仓库存储BI操作的更新数据。
但我正在考虑两种使数据仓库实时化的方法。
#1和#2的原因:
当然,#1的未知部分是分析多维数据集更新时的事务速度有多慢。但方法#2解决了这个问题,尤其是在异步完成数据仓库的数据更新时。
我想问一下我是否遗漏了任何问题,或者是否有更好的方法来构建运营数据仓库。
答案 0 :(得分:1)
icCube是一个用JAVA编写的内存中OLAP服务器,可以从任何关系数据库中获取数据。它支持incremental load近实时BI。
当更新多维数据集时,DB服务器不会受到影响,因为icCube正在单独的进程中构建多维数据集,然后所有查询都将完成此外部进程。您必须配置icCube以定期检查数据库服务器中的更新(例如,您可以使用触发表进行快速/低成本检查)。
例如,它支持MDX / XMLA for Excel访问,并拥有自己的Web Reporting包。