什么是联机分析处理(OLAP)
联机分析处理 (OLAP) 的概念最早是由关系数据库之父E.F.Codd于1993年提出的,他同时提出了关于OLAP的12条准则。OLAP的提出引起了很大的反响,OLAP作为一类产品同联机事务处理 (OLTP) 明显区分开来。
当今的数据处理大致可以分成两大类:联机事务处理OLTP(on-line transaction processing)、联机分析处理OLAP(On-Line Analytical Processing)。OLTP是传统的关系型数据库的主要应用,主要是基本的、日常的事务处理,例如银行交易。OLAP是数据仓库系统的主要应用,支持复杂的分析操作,侧重决策支持,并且提供直观易懂的查询结果。下表列出了OLTP与OLAP之间的比较。
OLTPOLAP用户操作人员,低层管理人员决策人员,高级管理人员功能日常操作处理分析决策DB 设计面向应用面向主题数据当前的, 最新的细节的, 二维的分立的历史的, 聚集的, 多维的集成的, 统一的存取读/写数十条记录读上百万条记录工作单位简单的事务复杂的查询用户数上千个上百个DB 大小100MB-GB100GB-TB
OLAP是使分析人员、管理人员或执行人员能够从多角度对信息进行快速、一致、交互地存取,从而获得对数据的更深入了解的一类软件技术。OLAP的目标是满足决策支持或者满足在多维环境下特定的查询和报表需求,它的技术核心是"维"这个概念。
“维”是人们观察客观世界的角度,是一种高层次的类型划分。“维”一般包含着层次关系,这种层次关系有时会相当复杂。通过把一个实体的多项重要的属性定义为多个维(dimension),使用户能对不同维上的数据进行比较。因此OLAP也可以说是多维数据分析工具的集合。
OLAP的基本多维分析操作有钻取(roll up和drill down)、切片(slice)和切块(dice)、以及旋转(pivot)、drill across、drill through等。
·钻取是改变维的层次,变换分析的粒度。它包括向上钻取(roll up)和向下钻取(drill down)。roll up是在某一维上将低层次的细节数据概括到高层次的汇总数据,或者减少维数;而drill down则相反,它从汇总数据深入到细节数据进行观察或增加新维。
·切片和切块是在一部分维上选定值后,关心度量数据在剩余维上的分布。如果剩余的维只有两个,则是切片;如果有三个,则是切块。
·旋转是变换维的方向,即在表格中重新安排维的放置(例如行列互换)。
OLAP有多种实现方法,根据存储数据的方式不同可以分为ROLAP、MOLAP、HOLAP。
ROLAP表示基于关系数据库的OLAP实现(Relational OLAP)。以关系数据库为核心,以关系型结构进行多维数据的表示和存储。ROLAP将多维数据库的多维结构划分为两类表:一类是事实表,用来存储数据和维关键字另一类是维表,即对每个维至少使用一个表来存放维的层次、成员类别等维的描述信息。维表和事实表通过主关键字和外关键字联系在一起,形成了"星型模式"。对于层次复杂的维,为避免冗余数据占用过大的存储空间,可以使用多个表来描述,这种星型模式的扩展称为"雪花模式"。
MOLAP表示基于多维数据组织的OLAP实现(Multidimensional OLAP)。以多维数据组织方式为核心,也就是说,MOLAP使用多维数组存储数据。多维数据在存储中将形成"立方块(Cube)"的结构,在MOLAP中对"立方块"的"旋转"、"切块"、"切片"是产生多维数据报表的主要技术。
HOLAP表示基于混合数据组织的OLAP实现(Hybrid OLAP)。如低层是关系型的,高层是多维矩阵型的。这种方式具有更好的灵活性。
还有其他的一些实现OLAP的方法,如提供一个专用的SQL Server,对某些存储模式(如星型、雪片型)提供对SQL查询的特殊支持。
OLAP工具是针对特定问题的联机数据访问与分析。它通过多维的方式对数据进行分析、查询和报表。维是人们观察数据的特定角度。例如,一个企业在考虑产品的销售情况时,通常从时间、地区和产品的不同角度来深入观察产品的销售情况。这里的时间、地区和产品就是维。而这些维的不同组合和所考察的度量指标构成的多维数组则是OLAP分析的基础,可形式化表示为(维1,维2,……,维n,度量指标),如(地区、时间、产品、销售额)。多维分析是指对以多维形式组织起来的数据采取切片(Slice)、切块(Dice)、钻取(Drill-down和Roll-up)、旋转(Pivot)等各种分析动作,以求剖析数据,使用户能从多个角度、多侧面地观察数据库中的数据,从而深入理解包含在数据中的信息。
根据综合性数据的组织方式的不同,目前常见的OLAP主要有基于多维数据库的MOLAP及基于关系数据库的ROLAP两种。MOLAP是以多维的方式组织和存储数据,ROLAP则利用现有的关系数据库技术来模拟多维数据。在数据仓库应用中,OLAP应用一般是数据仓库应用的前端工具,同时OLAP工具还可以同数据挖掘工具、统计分析工具配合使用,增强决策分析功能。
OLAP(On-Line Analysis Processing)在线分析处理是一种共享多维信息的快速分析技术;OLAP利用多维数据库技术使用户从不同角度观察数据;OLAP用于支持复杂的分析操作,侧重于对管理人员的决策支持,可以满足分析人员快速、灵活地进行大数据复量的复杂查询的要求,并且以一种直观、易懂的形式呈现查询结果,辅助决策。
(1)变量(度量)
变量是数据度量的指标,是数据的实际意义,即描述数据“是什么”。像示例中的人数。
(2)维度
维度是描述与业务主题相关的一组属性,单个属性或属性集合可以构成一个维。如示例中的学历、民族、性别等都是维度。
(3)维的层次
一个维往往可以具有多个层次,例如时间维度分为年、季度、月和日等层次,地区维可以是国家、地区、省、市等层次。这里的层次表示数据细化程度,对应概念分层。后面介绍的上钻操作就是由 低层 概念映射到高层概念。概念分层可除根据概念的全序和偏序关系确定外,还可以通过对数据进行离散化和分组实现。
(4)维的成员
若维是多层次的,则不同的层次的取值构成一个维成员。部分维层次同样可以构成维成员,例如“某年某季度”、“某季某月”等都可以是时间维的成员。
(5)多维数组
多维数组用维和度量的组合表示。一个多维数组可以表示为(维1,维2,……,维n,变量),例如(部门,职系、民族、性别,人数)组成一个多维数组。
(6)数据单元(单元格)
多维数组的取值。当多维数组中每个维都有确定的取值时,就唯一确定一个变量的值。数据单元可以表示为(维1成员,维2成员,……,维N成员,变量的值),例如(人事教育部,技能,回族,男,1人)表示一个数据单元,表示人事教育部职系是技能的回族男性有1人。
(7)事实
事实是不同维度在某一取值下的度量,例如上述人事教育部职系是技能的回族男性有1人就表示在部门、职系、民族、性别四个维度上企业人数的事实度量,并且在为人数事实中包含部门维度人事教育部这一个维度层次,如果将人数事实的所有维度考虑在内,就构成有关人数的多维分析立方体。
电子数据表与OLAP相比,不具备OLAP的多维性、层次、维度计算以及结构与视图分离等特点。
1. 快速。 终端用户对于系统的快速响应有很高的要求。调查表明如果用户在30秒内得不到回应,就会变得不耐烦。因此OLAP平台彩用了多种技术提高响应速度,例如专门的数据存储格式、大量的预处理和特殊的硬件设计等,通过减小在线分析处理的动态计算,事先存储OLAP所需粒度的数据等主要手段来获得OLAP响应速度的提高,尽管如此,查询反应慢仍然是OLAP产品中经常被提及的问题。
2. 可分析。 用户可以应用OLAP平台分析数据,也可以使用其他外部分析工具,例如电子数据表,这些分析工具基本上都以直观的方式为用户提供了分析功能。
3. 共享。 由于人们认为OLAP是只读的,仅需要简单的安全管理,导致目前许多OLAP产品在安全共享方面还存在许多问题。因此当多个用户访问OLAP服务器时,系统就在适当的粒度上加锁。
4. 多维。 维是OLAP的核心概念,多维性是OLAP的关键属性,这与数据仓库的多维数据组织正好相互补充。为了使用户能够从多个维度、多个数据粒度查看数据,了解数据蕴含的信息,系统需要提供对数据的多维分析功能,包括切片、旋转和钻取等多种操作
按处理方式分类
按存储方式分类
由于ROLAP是用关系表来模拟多维数据的,因此其存取较MOLAP复杂。而MOLAP可以利用多维查询语言直接将用户查询转为MDDB可以处理的形式,但是多维数据存储大量数据时会由于数据稀疏而浪费大量存储空间;因此,许多OLAP服务提供商都采用混合OLAP技术。
篇幅有限,关于OLAP方面的内容就介绍到这了,大家有兴趣可以继续深入了解下OLAP引擎Mondrian。后面会分享更多devops和DBA方面内容,感兴趣的朋友可以关注下!
推荐几款开源的大数据商业智能工具!
虽然商业智能通常被认为是大数据的一个元素,事实上商业智能工具的市场远远领先于快速增长的大数据市场。以下这些供应商中,有一家被Gartner称为“Cool Vendor”。而在更大的企业软件应用领域中,也不乏位于企业顶部软件名单之列的产品。实际上,商业智能要早于开源本身,至少在业务环境中,但下面的工具也在深刻地证明,开源实际上正迅速发展。以下是当下大数据市场中的7款开源商业智能工具介绍。
Talend
Talend提供不同的数据仓库,以及Talend的商业智能产品,其中还包括流行的大数据产品Talend Open Studio,这是一组支持Hadoop,HDFS,Hive,Hbase和Pig的数据组合工具。该公司还出售商业版和其他商业产品和服务。可运行系统包括:Windows,Linux,OS X.
JasperSoft
Jaspersoft称,它是“迄今为止存在于地球上的最灵活,最廉价和最广泛生产的商业智能软件”。开源版本包括JasperForge.org的大数据报告工具。运行系统无限制!
Jedox
开源Palo Suite包括OLAP服务器,Palo Web,Palo ETL Server和Palo for Excel。Jedox基于完全相同的工具提供商业软件应用。运行系统上无限制。
Pentaho
它遍及全球10000多家不同的公司,Pentaho利用业务和大数据分析工具以及数据挖掘,仪表板和报告功能。查看Pentaho Neighbourhood Wiki可轻松访问开源下载。操作系统:Windows,Linux,Mac OS X。
SpagoBI
SpagoBI称是“唯一完全开源的商业智能套件”。商业支持,培训和服务随时可用。运行系统上无限制。
KNIME
流行的KNIME或Konstanz Information Miner为用户提供友好的数据集成,分析,处理和 探索 。在2010年,Gartner将KNIME称为分析,商业智能和效率管理领域的“超酷供应商”。除开源桌面版本外,还有几个商业版本。运行系统:Windows,Linux,OS X.
BIRT
全称为:商业智能和报告工具(Business Intelligence and Reporting Tools),BIRT是一个基于Eclipse的工具,包括对Java应用的报告功能。Actuate是另一家受欢迎的公司,该公司共同创立了BIRT并根据其基础开源技术使用了许多软件。运行系统上无限制。
MicroStrategy。
对商业智能软件的需求,从用户的量级和需求复杂度,通常有这么几个层次:
1. 个人用户:比如数据科学家、个体数据分析师、学生,等等
2. 个人、小组或者部门,主要用户是数量有限的数据分析师、公司业务人员、公司高层。分析方式以业务驱动为主。
3. 大型企业级部署。分析方式可以是业务驱动,也可以是IT驱动,或者是两种模式的结合。在此类型的客户中,有一些客户呈现出非常复杂的信息化现状,比如能存在大量的信息孤岛,众多业务部门有数据分析需求,渴望建立自己的数据中台,对数据安全性,数据软件的大规模部署均有很高要求。
没有商业软件可以同时满足所有的需求,所以与其提问什么公司最好,应该尝试的提问是,最适合我或者我司的商业智能软件是哪一个?
其实对应不同的需求,商业软件公司大概可以分成这么几类:
1. 以业务驱动(自助式)数据分析见长,兼顾IT驱动模式。在比较提供商的时候需要考虑自己当前或者未来是否有需要集中化管理的需求,提供商是否有向未来需求扩展的局限性。
2. 以企业级的数据系统部署见长,兼顾自助式分析。在选型的时候需要考虑业务部门对数据分析灵活性的需求,提供商对自助式分析兼顾的程度是否可以满足需求。
3. 以某个细分领域数据分析见长,比如嵌入式能力。需要充分沟通以理解业务系统对数据嵌入的需求,也需要谨慎思考未来对全方位数据分析的需求可能性,来判断软件提供商在更多维度能力上是否能满足业务增长。
4. 云部署或者私有化部署能力。企业软件中的SAAS模式渐渐趋向成熟,但是商业智能行业的客户,大都还是偏好私有化部署或者数据私有的云部署。数据系统软硬件的管理和维护成本,数据安全,是需要不断权衡的几个方面。
5. 以AI为主要区分点的新晋公司。
下面是Gartner在2019对各大公司的多维度能力打分:
业务驱动的集中化管理的数据分析
IT驱动的集中式数据分析
分散化管理的数据分析:
OEM 或者 嵌入式BI
系统外网部署能力
增强型BI
其中值得一提的是MicroStrategy收获了四项第一、一项第二(一共六个维度)。
MicroStrategy(微策略)深耕商业智能软件领域已经有30年,是商业智能软件领域里提供企业级解决方案的佼佼者。最新推出的2019版本融合了集中式分析和自助式分析两套系统,既能帮助业务部门实现业务驱动的自助式分析,也能优美的解决企业级部署,并能够在大数据量、跨部门分析等复杂场景中轻松胜任数据分析工作。
MicroStrategy(微策略)主打无处不智能的商业理念,在移动智能终端、嵌入式BI、协同工作、大数据处理等领域保持着业界领先的地位。
说到商业智能,东软SaCa DataViz、永洪BI都很好。我们最终选的SaCa DataViz,后期效果不错。他们网站有介绍:https://platform.neusoft.com/
BI软件是商业智能(Business Intelligence)软件的英文缩写。目前,商业智能通常被理解为将企业中现有的数据转化为知识,帮助企业做出明智的业务经营决策的工具。商务智能系统中的数据来自企业其他业务系统。例如商贸型企业,其商务智能系统数据包括业务系统的订单、库存、交易账目、客户和供应商信息等,以及企业所处行业和竞争对手的数据、其他外部环境数据。而这些数据可能来自企业的CRM、SCM、进销存等业务系统。
商业智能——敏捷BI 从构建数据中心开始
数据可视化,首先就需要解决数据从哪来的问题。企业一般都会有不同的业务系统或数据来源,奥威Power-BI系统自有ETL及OLAP功能,且有丰富的不同行业数据中心的构建经验,可帮助企业快速、低成本的构建数据中心。
智能分析 提升数据洞察力
奥威Power-BI不同于报表软件,或者是一般意义上的数据可视化。它不但可以帮助企业决策者一眼发现问题,而且,可以借助奥威Power-BI独有的多维动态及智能钻取技术,快速定位问题的原因是什么,让数据会说话。
标准方案 快速部署不再难
奥威Power-BI,是市面上唯一能无缝集成用友/金蝶全系列ERP的商业智能BI软件,真正做到安装即可用。除此之外,奥威Power-BI解决方案中,还包括百货商超、医药连锁、服装连锁、房地产、酒店连锁、生产制造等行业标准数据可视化BI解决方案。
欢迎分享,转载请注明来源:夏雨云
评论列表(0条)