ROLAP与大数据

简介: 大数据相关的场景比较多,常见的有:ETL(数据提取、转换、加载)、实时流式(监控报警、风控等)、机器学习(推荐引擎、用户画像等)、非结构化分析(视频、图片、语音、文本等)、海量大数据在线存储(HBase)、搜索及我们本文讲的OLAP。 其中OLAP(在线联机分析)在很多企业占住分析类的大部分。

OLAP

大数据相关的场景比较多,常见的有:ETL(数据提取、转换、加载)、实时流式(监控报警、风控等)、机器学习(推荐引擎、用户画像等)、非结构化分析(视频、图片、语音、文本等)、海量大数据在线存储(HBase)、搜索及我们本文讲的OLAP。 其中OLAP(在线联机分析)在很多企业占住分析类的大部分。按照一般的理论又分为,M-OLAP,R-OLAP,H-OLAP。简单区别就是 M-OLAP是基于多维数组的存储模型,也是最原始的OLAP,但需要对数据进行预处理才能形成多维结构,大数据领域Kylin属于此类;R-OLAP是完全基于关系模型进行存放的,只是它根据分析的需要对模型的结构和组织形式进行了优化,目前MPP(greenplum)及MPP on HDFS(Presto、Impala)及SQL on DAG(Hive、Spark)均是此类。当然还有一类是H-OLAP,也就是说两者均满足需求,也是一种混合架构。

OLAP 与 大数据

大数据这个词,是从Hadoop之后才慢慢提出来的,开始的时候并不叫做大数据,很多企业叫做数据仓库部门,使用的基本是商用的组件。
随着Hadoop的兴起及MPP on廉价机器的发展,SQL on Hadoop类的引擎越来越多,比如有:Hive、Presto、Impala、Drill、Spark SQL、phoenix(SQL on HBase)、kylin(cube on HBase)等。特别是得益于分布式存储(HDFS)的发展,各类基于HDFS的分析组件越来越多,当然很多组件也支持HDFS之外的如:mysql、mongodb等数据源。下面笔者主要对比下目前主流R-OLAP模式的引擎,后续再有机会谈M-OLAP。
R-OLAP+大数据 也得益于列存储及内存存储的发展,再加上传统数据库的优化技术,在性能上也在不断加速。

R-OLAP

目前主流的ROLAP的支持的软件如下:
screenshot
Hive On MR应该是最先支持P级别的分析引擎之一,由于实在太慢了,出现一大卡车的优化技术,主要体现在下面的一些产品中。
其中 Hive On Tez、Hive On Tez with LLAP、SparkSQL 、Presto、Phoenix 较为看好,具体如果单单做OLAP,Hive On tez最为合适,如果有其它分析类需求混合使用SQL,则Spark较为合适;Presto从理论上讲,应该较快,追求高性能;另外,如果数据存在Hbase中,想做一些简单的分析,可以使用phoenix。
对于Flink,看好StreamingSQL,不过OLAP一块,目前实在没有发力。

社群

技术交流钉钉大群 阿里云 HBase+Spark社区 【强烈推荐!】 群内每周进行群直播技术分享及问答

相关实践学习
基于MaxCompute的热门话题分析
Apsara Clouder大数据专项技能认证配套课程:基于MaxCompute的热门话题分析
目录
相关文章
|
存储 JSON 安全
使用 Qwen 进行Self-instruct数据生成
使用Qwen进行自指令数据生成,通过Self-instruct技术自动化为大型语言模型生成指令。用户可安装CAMEL包并设置Qwen API密钥,配置ChatAgent和SelfInstructPipeline,基于种子指令迭代生成大量新指令。支持多种过滤器(如长度、关键词、标点符号等)确保生成指令的质量和多样性。欢迎加入Discord获取支持与交流。
使用 Qwen 进行Self-instruct数据生成
|
数据采集 运维 算法
大数据项目管理:从需求分析到成果交付的全流程指南
【4月更文挑战第9天】本文介绍了大数据项目从需求分析到成果交付的全过程,包括需求收集与梳理、可行性分析、项目规划、数据准备与处理、系统开发与集成,以及成果交付与运维。文中通过实例展示了如何进行数据源接入、数据仓库建设、系统设计、算法开发,同时强调了需求理解、知识转移、系统运维的重要性。此外,还提供了Python和SQL代码片段,以说明具体技术实现。在大数据项目管理中,需结合业务和技术,灵活运用这些方法,确保项目的成功执行和价值实现。
3769 1
|
C语言 开发者
C语言实现猜数字小游戏(详细教程)
C语言实现猜数字小游戏(详细教程)
|
vr&ar 数据安全/隐私保护 网络架构
一文带你了解WiFi7,比WiFi6强多了!
【10月更文挑战第2天】
3601 1
一文带你了解WiFi7,比WiFi6强多了!
|
Linux C语言
成功解决 在Linux CentOS 7 中安装gcc
这篇文章介绍了如何在Linux CentOS 7系统中安装gcc (g++) 8工具集。由于CentOS 7默认的gcc版本是4.8,而这个版本与Qt 5.14、Qt 5.15或更高版本不兼容,可能会导致编译时出现系统头文件错误。文章中提到,即使在项目配置中添加了`CONFIG+=c++11`,如果仍然报错,那么很可能是gcc版本的问题。为了解决这个问题,文章提供了使用CentOS的Software Collections (scl)来安装更新版本的gcc的步骤。
成功解决 在Linux CentOS 7 中安装gcc
|
消息中间件 Ubuntu 数据安全/隐私保护
Ubuntu上安装RabbitMQ
Ubuntu上安装RabbitMQ
541 1
|
存储 分布式计算 Hadoop
Hadoop节点数据副本
【5月更文挑战第16天】
480 4
|
监控 NoSQL 中间件
中间件常见问题
【7月更文挑战第12天】
508 12
|
算法 程序员 C++
程序员必知:单链表排序(快速排序、归并排序)
程序员必知:单链表排序(快速排序、归并排序)
472 0
解决vue2升级vue3后,输入框无法输入的问题
解决vue2升级vue3后,输入框无法输入的问题
912 0