【数据库架构】什么是 OLAP?

简介: 【数据库架构】什么是 OLAP?

什么是 OLAP?

OLAP(用于在线分析处理)是一种软件,用于对来自数据仓库、数据集市或其他一些统一的集中式数据存储的大量数据进行高速多维分析。

大多数业务数据都有多个维度——数据被分解为多个类别以进行展示、跟踪或分析。例如,销售数据可能具有与位置(地区、国家、州/省、商店)、时间(年、月、周、日)、产品(服装、男/女/童、品牌、类型)相关的多个维度,和更多。


但在数据仓库中,数据集存储在表中,每个表一次只能将数据组织到其中两个维度中。OLAP 从多个关系数据集中提取数据并将其重新组织成多维格式,从而实现非常快速的处理和非常有洞察力的分析。

什么是 OLAP 多维数据集?

大多数 OLAP 系统的核心,OLAP 多维数据集是一个基于数组的多维数据库,与传统的关系数据库相比,它可以更快、更高效地处理和分析多个数据维度。

关系数据库表的结构类似于电子表格,以二维、逐列的格式存储各个记录。数据库中的每个数据“事实”都位于两个维度(行和列)的交集处,例如区域和总销售额。


SQL 和关系数据库报告工具当然可以查询、报告和分析存储在表中的多维数据,但随着数据量的增加,性能会降低。并且需要大量的工作来重新组织结果以专注于不同的维度。

这就是 OLAP 多维数据集的用武之地。OLAP 多维数据集通过附加层扩展了单个表,每个层都添加了额外的维度——通常是维度的“概念层次结构”中的下一个级别。例如,立方体的顶层可能按地区组织销售;附加层可以是国家、州/省、城市甚至特定商店。

理论上,一个立方体可以包含无数层。(代表三个以上维度的 OLAP 多维数据集有时称为超多维数据集。)更小的多维数据集可以存在于层内——例如,每个商店层可以包含按销售人员和产品安排销售的多维数据集。在实践中,数据分析师将创建仅包含他们需要的层的 OLAP 多维数据集,以实现最佳分析和性能。



OLAP 多维数据集支持四种基本类型的多维数据分析:

向下钻取

向下钻取操作通过以下两种方法之一将不太详细的数据转换为更详细的数据——在概念层次结构中向下移动或向多维数据集添加新维度。例如,如果您查看组织日历或财政季度的销售数据,您可以向下钻取以查看每个月的销售额,在“时间”维度的概念层次结构中向下移动。

卷起

上卷与下钻功能相反——它通过在概念层次结构中向上移动或通过减少维数来聚合 OLAP 多维数据集上的数据。例如,您可以通过查看每个国家的数据而不是每个城市的数据,在“位置”维度的概念层次结构中向上移动。

切片和骰子(Slice and dice)

切片操作通过从主 OLAP 多维数据集中选择单个维度来创建子多维数据集。例如,您可以通过突出显示组织的第一个财政或日历季度(时间维度)的所有数据来执行切片。

骰子操作通过在主 OLAP 多维数据集中选择多个维度来隔离子多维数据集。例如,您可以通过按组织的日历或财政季度(时间维度)以及美国和加拿大内部(位置维度)突出显示所有数据来执行掷骰子操作。

枢 (Pivot)

pivot 函数旋转当前的多维数据集视图以显示数据的新表示 - 启用数据的动态多维视图。OLAP 数据透视表功能与电子表格软件(如 Microsoft Excel)中的数据透视表功能相当,但虽然 Excel 中的数据透视表可能具有挑战性,但 OLAP 数据透视表相对更易于使用(需要较少的专业知识)并且具有更快的响应时间和查询性能。

MOLAP 与 ROLAP 与 HOLAP

MOLAP

直接与多维 OLAP 多维数据集一起工作的 OLAP 称为多维 OLAP 或 MOLAP。同样,对于大多数用途,MOLAP 是最快和最实用的多维数据分析类型。

但是,在某些情况下,还有两种其他类型的 OLAP 可能更可取:

ROLAP

ROLAP 或关系 OLAP 是一种多维数据分析,它直接对关系表上的数据进行操作,而无需先将数据重新组织到一个多维数据集中。

如前所述,SQL 是用于多维查询、报告和分析的完美工具。但是所需的 SQL 查询很复杂,性能可能会拖累,并且生成的数据视图是静态的——它不能被旋转以表示不同的数据视图。当直接处理大量数据的能力比性能和灵活性更重要时,ROLAP 是最佳选择。

HOLAP

HOLAP 或混合 OLAP 尝试在单个 OLAP 体系结构内创建关系数据库和多维数据库之间的最佳分工。关系表包含大量数据,OLAP 多维数据集用于聚合和推测处理。HOLAP 需要同时支持 MOLAP 和 ROLAP 的 OLAP 服务器。

HOLAP 工具可以“钻取”数据立方体到关系表,这为快速数据处理和灵活访问铺平了道路。这种混合系统可以提供更好的可扩展性,但在访问关系数据源时无法避免不可避免的减速。此外,其复杂的架构通常需要更频繁的更新和维护,因为它必须存储和处理来自关系数据库和多维数据库的所有数据。出于这个原因,HOLAP 最终可能会变得更加昂贵。

OLAP 与 OLTP

在线事务处理(OLTP)是指专注于面向事务的数据和应用程序的数据处理方法和软件。

OLAP 和 OLTP 的主要区别在于名称:OLAP 本质上是分析性的,而 OLTP 是事务性的。

OLAP 工具设计用于对数据仓库中的数据进行多维分析,其中包含交易数据和历史数据。事实上,OLAP 服务器通常是数据仓库解决方案的中间分析层。OLAP 的常见用途包括数据挖掘和其他商业智能应用程序、复杂的分析计算和预测场景,以及财务分析、预算和预测计划等业务报告功能。

OLTP 旨在通过尽可能快速准确地处理最近的事务来支持面向事务的应用程序。OLTP 的常见用途包括 ATM、电子商务软件、信用卡支付处理、在线预订、预订系统和记录保存工具。

要深入了解这些方法之间的差异,请查看“OLAP 与 OLTP:有什么区别?”

OLAP 和云架构

OLAP 使公司能够通过将其转换为最实用的多维分析格式来最大限度地发挥其公司数据的潜力。这反过来又使识别有价值的业务洞察变得更加容易。但是,如果将这些系统保留在内部,则会限制扩展的潜力。

基于云的 OLAP 服务更便宜且更易于设置,这使得它们对预算有限的小型企业或初创公司更具吸引力。企业可以利用基于云的数据仓库的巨大潜力,以无与伦比的速度执行复杂的分析,因为它们使用大规模并行处理 (MPP)。因此,公司可以在云速度和规模上使用 OLAP,分析大量数据,而无需将其从云数据仓库中移出。


Constance Hotels、Resorts & Golf 是一家豪华酒店集团,在印度洋的岛屿上拥有九家酒店。然而,缺乏岛与岛之间的通信让位于组织孤岛,每个度假村的业务数据都是孤立的。该组织构建了一个云数据仓库和分析架构,以将所有本地系统和工具与基于云的中央数据存储库链接起来。在此过程中,公司获得了利用高级预测分析和实施 OLAP 系统所需的全集团洞察力。

云架构中的 OLAP 是面向未来构建的快速且经济高效的解决方案。制作多维数据集后,团队可以使用现有的商业智能工具即时连接 OLAP 模型,并从他们的云数据中获取交互式实时洞察。

相关实践学习
数据库实验室挑战任务-初级任务
本场景介绍如何开通属于你的免费云数据库,在RDS-MySQL中完成对学生成绩的详情查询,执行指定类型SQL。
阿里云云原生数据仓库AnalyticDB MySQL版 使用教程
云原生数据仓库AnalyticDB MySQL版是一种支持高并发低延时查询的新一代云原生数据仓库,高度兼容MySQL协议以及SQL:92、SQL:99、SQL:2003标准,可以对海量数据进行即时的多维分析透视和业务探索,快速构建企业云上数据仓库。 了解产品 https://www.aliyun.com/product/ApsaraDB/ads
相关文章
|
2天前
|
存储 数据采集 数据挖掘
“湖仓一体架构及其应用”写作框架,系统架构设计师
随着5G、大数据、人工智能、物联网等技术的不断成熟,各行各业的业务场景日益复杂,企业数据呈现出大规模、多样性的特点,特别是非结构化数据呈现出爆发式增长趋势。在这一背景下,企业数据管理不再局限于传统的结构化OLTP(On-Line Transaction Processing)数据交易过程,而是提出了多样化、异质性数据的实时处理要求。传统的数据湖(Data Lake)在事务一致性及实时处理方面有所欠缺,而数据仓库(Data Warehouse)也无法应对高并发、多数据类型的处理。因此,支持事务一致性、提供高并发实时处理及分析能力的湖仓一体(Lake House)架构应运而生。湖仓一体架构在成本、
|
5天前
|
存储 关系型数据库 MySQL
MySQL数据库进阶第六篇(InnoDB引擎架构,事务原理,MVCC)
MySQL数据库进阶第六篇(InnoDB引擎架构,事务原理,MVCC)
|
9天前
|
存储 人工智能 NoSQL
探索数据库技术的奥秘:从基础架构到前沿应用
一、引言 在数字化时代,数据库技术作为信息管理的基石,已经渗透到我们生活的方方面面
|
9天前
|
存储 SQL Cloud Native
揭秘数据库技术的核心与未来:从架构到应用
一、引言 数据库技术是当代信息系统中不可或缺的一部分,它为企业和个人提供了可靠、高效的数据管理解决方案
|
9天前
|
存储 Cloud Native 物联网
数据库技术前沿探索:架构、优化与行业实践
一、引言 在信息化和数字化的浪潮中,数据库技术作为企业核心竞争力的关键要素,其重要性不言而喻
|
9天前
|
存储 SQL 数据库
数据库技术探索:基础架构、应用场景与未来展望
一、引言 数据库技术是信息时代的基石,为企业和组织提供了数据存储、检索、分析和管理的核心支撑
|
13天前
|
存储 关系型数据库 MySQL
云原生数据仓库AnalyticDB产品使用合集之是否支持rdb数据库实时同步
阿里云AnalyticDB提供了全面的数据导入、查询分析、数据管理、运维监控等功能,并通过扩展功能支持与AI平台集成、跨地域复制与联邦查询等高级应用场景,为企业构建实时、高效、可扩展的数据仓库解决方案。以下是对AnalyticDB产品使用合集的概述,包括数据导入、查询分析、数据管理、运维监控、扩展功能等方面。
143 4
|
16天前
|
消息中间件 数据采集 分布式计算
离线数仓(一)【数仓概念、需求架构】
离线数仓(一)【数仓概念、需求架构】
|
16天前
|
缓存 关系型数据库 MySQL
MySQL数据库——InnoDB引擎-架构-内存结构(Buffer Pool、Change Buffer、Adaptive Hash Index、Log Buffer)
MySQL数据库——InnoDB引擎-架构-内存结构(Buffer Pool、Change Buffer、Adaptive Hash Index、Log Buffer)
35 3
|
18天前
|
存储 缓存 测试技术
现代化实时数仓 SelectDB 再次登顶 ClickBench 全球数据库分析性能排行榜!
近日,在 ClickHouse 发起的分析型数据库性能测试排行榜 ClickBench(https://benchmark.clickhouse.com/)中,现代化实时数仓 SelectDB 时隔两年后再次登顶,在全部近百款数据库和数十种机型中,性能表现位居总榜第一!
56 1

热门文章

最新文章