我是OLAP的新手,我遇到了以下情况:
我有一个包含数百个表的无星型模式数据库(PostgreSQL),现在我需要将其转换为星型模式数据库才能执行OLAP。这里有一些问题:
我是否必须以星型模式的形式创建新数据库并将现有数据插入新数据库?如果有,是否有任何工具可以帮助我自动完成该任务?
Mondrian需要的数据应该是星型模式数据库,但我的Web项目基于无星型模式数据库。也就是说,每次我有新记录时,我都要同时更新两个数据库,对吗?
感谢您的帮助,谢谢!
答案 0 :(得分:1)
将数据从OLTP数据库移动到OLAP数据库的过程称为ETL(提取,转换,加载)。有许多ETL工具。试试Pentaho(Kettle)。您可以在现有服务器中创建维度数据库表,也可以创建新的维度数据库表 - 取决于现有服务器/数据库的繁忙程度。就增加OLAP架构中的数据而言,最好不要将其作为业务事务的一部分。它可能会出现性能问题。此外,由于在将数据移动到OLAP表时出现一些问题,业务事务不会失败。根据您可以承受的数据延迟,您可以拥有一天运行几次的批处理。在大多数情况下,如何识别变更数据(变更数据捕获)是一项挑战。