是否有任何数据仓库框架?

时间:2020-03-06 14:59:17  来源:igfitidea点击:

我有很多需要从中生成报告的mysql数据。它主要是历史数据,因此不会有太大变化,但它的重量很容易达到20-30 GB,并且有望增长。我目前有一个php脚本集合,可以执行一些复杂的查询并输出csv和excel文件。我还对带有书签的查询使用phpMyAdmin。我手动编辑它们以更改参数。数据量不断增长,需要访问它的人数也在增长,因此,我正在花时间改善这种情况。

前几天,我开始阅读有关数据仓库的文章,看来这是与我需要做的事情有关的领域。我读了一些不错的文章,甚至还在等一本书。我认为我已经掌握了这些系统的功能以及可能的方法。

为我的数据创建报告系统一直都在待办事项清单上,但是直到最近我才意识到这将是一个高度利基的编程事业。由于我现在知道数据仓库是司空见惯的事情,因此我认为必须有某种可用于简化开发的报告/仓库框架。我很乐意跳过编写界面和脚本来计划和发送电子邮件报告之类的内容,而坚持编写查询和建立关系。

我主要是一个灯火通明的人,但我并不擅长切换语言或者平台。我只需要一个更强大的解决方案,因为我的一次性脚本无法很好地扩展。

那么,哪里是入门的好地方?

解决方案

Pentaho汇集了相当全面的产品套件。这些产品是"免费"的,但是一旦我们输入了识别信息,就可以为通常的重磅销售做好准备。

我没有机会真正地扩展它们,因为我们是一家微软公司,从一个悲惨的一面到另一个。

我将在{预算,业务实用程序功能,时间范围}频谱上讨论几点。为了方便起见,让我们跟随我们链接到的架构概念

维基百科数据仓库文章

  • 运营数据库层数据仓库的源数据-归一化为仅在一个地方进行数据维护

  • 数据访问层将源数据转换为信息访问层。用于将数据提取,转换,加载到仓库中的ETL工具属于这一层。

  • 信息访问层便于报告的数据结构此处未维护数据。这只是源数据的反映,因此,非规范化的结构(包含重复的数据,但系统地导出的数据)通常在此处最为有效。报表工具我们实际上如何允许用户访问数据的罐头报表(简单),动态切片骰子访问方法

    访问用于报告和分析的数据以及用于报告和分析数据的工具
    落入这一层。还有Inmon-Kimball在设计方法上的差异,
    稍后在Wikipedia文章中讨论,与这一层有关。

  • 元数据层(促进自动化,组织等)

自己滚动(低端)
仅需很少的自付费用,只要认识到对非规范化结构的需求,便可以购买那些未使用正规化结构的设备,从而提高了效率。

参加比赛(需要一些支出)
我们无需立即使用平台的所有功能。
IMO,但是,我们想成为一个我们知道会成长的平台,并且在竞争激烈且整合的BI环境中,这似乎是四个大型企业之一(我认为)

  • 微软(我们拥有110名员工的公司的平台)

  • 树液

  • 甲骨文

  • IBM公司

    BiMarketStateArticle

我的公司目前处于此阶段,使用SQL Server Integration Services(SSIS)提供的一些ETL功能以及开源的一些替代用法,但实际上,许可证要求在"数据访问层"(一种非规范化的报告结构)中使用Talend产品(完全在基本的SQL Server数据库中实现)和SQL Server Reporting Services(SSRS),以很大程度上(根据技能)自动执行预定报告的生成。请注意,SSRS"报告"仅仅是(可伸缩的)XML配置/规范,可在运行时通过SSRS引擎呈现。诸如导出到excel文件之类的选择是简单的选择。

认真的承诺(需要一些重大的人类承诺)
注意到上面我们还没有利用数据挖掘/动态切片/切块
SQL Server Analysis Services的功能。我们正在为此而努力,
但现在专注于提高"数据访问层"中数据清理的质量。

我希望这可以了解从哪里开始寻找。

我认为我们应该首先查看Kimball和Inmon,看看是否要以特定方式访问数据仓库。特别是Kimball,为仓库的建模和构建奠定了一个很好的框架。

它已经有一段时间没有更新了,但是有一个名为ActiveWarehouse的不错的数据仓库/ ETL Ruby软件包。

但我会检查另一个答案中提到的尼克等Pentaho产品。它应该可以轻松处理我们拥有的数据量,并且可以为我们提供比我们想象中更多的方式来对数据进行切片和切块。

Kimball是用于数据仓库的更简单方法。

我们使用Informatica来移动数据,但默认情况下它不做DW之类的工作,例如建立索引。
我喜欢将Wherescape RED作为DW工具并使用MS SQL的链接服务器来消除对ETL工具的需求的想法。

有许多工具可以尝试进行数据仓库的设计,实施和管理/操作,它们各有优缺点,而且价位往往相差很大。在幕后,如果我们对Kimball和/或者Inmon营地的住房安置原则有充分的了解,那么我们总是会处于最佳状态。

像Kalido和Wherescape RED这样的工具(以不同的方式做类似的事情),许多ETL平台现在对实现SCD组件等的驴工作和沿袭跟踪具有良好的内置支持。

最好将所有这些视作在我们(工匠)手中使用的工具,它们使某些简单的事情变得更容易(甚至是微不足道),一些困难的事情变得更容易,但是有些事情只是以恕我直言的方式出现;首先学习方法和原理,并对它们有很好的了解,然后我们将知道在工具包中以及何时使用哪种工具。