彩票走势图

OLAP系统设计要点总结

转帖|行业资讯|编辑:陈俊吉|2016-05-30 09:58:16.000|阅读 598 次

概述:联机分析系统产生于OLTP之后,也有悠久的历史,它对交易系统产生的当前及历史数据进行分析,生成各种报表、支持多角度数据分析,挖掘隐藏在数据中的规律,可对未来做一定预测,这些可辅助管理层进行各种决策。

# 慧都年终大促·界面/图表报表/文档/IDE等千款热门软控件火热促销中 >>

由于OLAP系统所处理的数据量通常巨大,单台计算机的处理能力通常不能满足要求,因此需要并行处理,目前MPP(Massively Parallel Processing)是公认的结构化数据并行处理最高效的架构。

MPP数据库由多个数据库分区组成,分区可分布在一台或多台服务器上,单个分区不可跨多台服务器。数据库在容量增长、处理能力不足时可垂直或水平扩展,垂直扩展指增加现有服务器的能力,比如增加CPU、内存、存储空间等;水平扩展指增加新的服务器进来,同时增加新的数据库分区,这时可能有数据的重新分布。

MPP数据库的结构示意图如下:

每个数据库分区只管理部分数据,处理数据时各分区可并行处理,分区间通过网络交换数据。应用面对的是一个数据库,SQL语句不需要调整,运行时数据库引擎会根据数据所在位置自动调度。

OLAP

数据在各分区之间分布时要有一定的依据,这个依据我们称之为表的分布键,它可以由一个或多个字段组成。数据进入MPP数据库时,会根据每条记录中分布键的具体值计算它应该去的数据库分区。

设计要点:

1、分布键的选择是MPP数据库表设计的关键点。选择原则:先考虑表之间关联关系,比如客户信息表CUSTOMER与客户交易流水表TRANSLOG之间经常使用客户号做关联运算,如果这两张表都用客户号做分布键,则对同一客户的数据都会保存在同一数据库分区,关联时不需要与其它数据库分区进行数据交换;其次考虑数据分布的均匀,只有在分布键的组合取值范围比较广的时候才能保证数据分布的均匀性,比如性别字段就不合适作为分布键。最慢的分区决定语句的最终性能,这是要求数据分布均匀的原因。

2、数据搜索效率。应用在处理数据时,并非每次都需要处理全量数据,这样就涉及到从全量数据中定位部分数据的问题,如果不能快速定位,则不可避免地每次扫描全量数据,这带来无谓的IO浪费及性能问题。一般情况下这个问题可通过表的范围分区设计避免。比如某表保存三年历史数据,而应用经常访问某个月的数据,如果我们按月组织数据,当应用只访问某月数据时,相对于没做范围分区的表,其表扫描性能可提升大约36倍。

3、避免过度复杂SQL语句,尽管通常MPP数据库都支持复杂语句,但复杂性使得SQL优化引擎出错几率增加,一旦出错,排错困难,另外应用的可读性可能会增加维护成本。避免复杂SQL可通过临时表技术将复杂任务拆成多步完成。

via:华南IBM大数据支持团队

详情请咨询“”!

客服热线:023-66090381


标签:OLAP数据分析

本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@cahobeh.cn


为你推荐

  • 推荐视频
  • 推荐活动
  • 推荐产品
  • 推荐文章
  • 慧都慧问
相关产品
RadarCube ASP.NET & Silverlight

RadarCube是灵活性高且运算速度快的全功能OLAP控件集,是BI解决方案最佳的选择!

RadarCube Windows Forms

灵活且速度快,兼容几乎所有数据库或SSAS数据源,是OLAP BI商业智能解决方案最佳的选择!

RadarCube VCL

RadarCube VCL是商业智能应用程序的最佳选择,具有功能强大、速度快、灵活性佳的优点。

SharpShooter OLAP

用于多维数据分析和图形化数据显示

RadarCube WPF (OLAP Grid & OLAP Chart)

WPF BI商业智能应用程序的最佳选择,具有功能强大、运行速度快、灵活性佳的优点。

title
扫码咨询


添加微信 立即咨询

电话咨询

客服热线
023-68661681

TOP