将非星型模式数据库转换为星型模式数据库
Posted
技术标签:
【中文标题】将非星型模式数据库转换为星型模式数据库【英文标题】:Convert a none-star-schema database to star schema database 【发布时间】:2014-04-16 06:39:27 【问题描述】:我是 OLAP 新手,遇到了以下情况:
我有一个包含数百个表的无星型数据库 (PostgreSQL),现在我需要将其转换为星型数据库以执行 OLAP。这里有一些问题:
是否必须以星型模式创建新数据库并将现有数据插入新数据库?如果是这样,是否有任何工具可以帮助我自动完成该任务?
蒙德里安需要的数据应该是星型数据库,但我的网络项目是基于无星型数据库的。也就是说,每次得到一条新记录,我都要同时更新两个DB,对吧?
感谢您的帮助,谢谢!
【问题讨论】:
【参考方案1】:将数据从 OLTP 数据库移动到 OLAP 数据库的过程称为 ETL(提取、转换、加载)。有许多 ETL 工具。试试 Pentaho(水壶)。您可以在现有服务器或新服务器中创建维度数据库表 - 取决于现有服务器/数据库的繁忙程度。就更新 OLAP 模式中的数据而言,最好不要将其作为业务事务的一部分。它可能存在性能问题。此外,业务事务不必因为将数据移动到 OLAP 表中的某些问题而失败。根据您可以承受的数据延迟,您可以有一个每天运行几次的批处理。在大多数情况下,您将如何识别更改的数据(更改数据捕获)是一个挑战。
【讨论】:
那么你的意思是我必须手动设计一个新的 OLAP 数据库,对吧? 是的。这就是简短的答案。以上是关于将非星型模式数据库转换为星型模式数据库的主要内容,如果未能解决你的问题,请参考以下文章