博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
大数据入门:大数据数据仓库解析
阅读量:4074 次
发布时间:2019-05-25

本文共 1288 字,大约阅读时间需要 4 分钟。

大数据时代,大数据存储的解决方案,往往涉及到数据仓库的选型策略。从传统时期的数据仓库,到大数据环境下的数据仓库,其核心的技术架构是在随着最新技术趋势而变化的。今天的大数据入门分享,我们就来讲讲,大数据环境下的数据仓库。

数据仓库的概念,最早是在1991年被提出,而直到最近几年的大数据趋势下,实时数据处理快速发展,使得数据仓库技术架构不断向前,出现了实时数仓,而实时数仓又分为批数据+流数据、批流一体两种架构。

1、离线数仓

离线数仓,其实简单点来说,就是原来的传统数仓,数据以T+1的形式计算好放在那里,给前台的各种分析应用提供算好的数据。到了大数据时代,这种模式被称为“大数据的批处理”。

只不过原本的单体环境工具(Oracle、Informatica等)基本都被替换成了大数据体系内(Hadoop、Hive、Sqoop、Oozie等)的工具而已。

数据采集:flume/logstash+kafka,替代传统数仓的FTP;

批量数据同步:Sqoop、Kettle,跟传统数仓一样用Kettle,部分商用ETL工具也开始支持大数据集群;

大数据存储:Hadoop HDFS/Hive、TiDB、GP等MPP,替代传统数仓的Oracle、MySQL、MS SQL、DB2等;

大数据计算引擎:MapReduce、Spark、Tez,替代传统数仓的数据库执行引擎;

OLAP引擎:Kylin/druid,(Molap,需预计算)、Presto/Impala,(Rolap,无需预计算),替代BO、Brio、MSTR等各种BI工具。

2、实时计算

实时数仓最开始是在日志数据分析业务中被广泛使用,后来在各种实时战报大屏的推动,实时数仓开始应用。

与离线计算相比,实时计算减少了数据落地,替换了数据计算引擎,目前纯流式数据处理基本上就只有Spark Streaming了,而Flink是批流一体的。实时数据计算好结果后,可以落地到各种数据库中,也可以直接对接到大屏进行展示。

3、大数据环境下的两种数仓架构

Lambda 架构

Lambda架构核心就三个:批数据处理层、流数据处理层和服务层。批数据处理层应对历史长时间数据计算,流数据处理层应对短时间实时数据计算。如果一个需求要历史到当前所有数据的累加结果,那就在服务层将两部分数据进行累加。

Kappa 架构

Kappa架构的设计理念是,全部都进行流式计算。流式计算的数据来源是消息队列,把所有需要计算的数据放在消息队列里,然后让流计算引擎计算所有数据。

因为所有数据都存在Kafka,上面接Flink批流一体数据处理引擎将kafka的数据计算好存在服务层的table n中。如果需求有变化了,就讲kafka的offset调整一下,Flink则重启一个任务重新计算,存在table N+1中,当N+1的数据进度赶上table n了,就停掉table n的任务。

关于大数据入门,大数据环境下的数据仓库,以上就为大家做了基本的介绍了。大数据时代的数据仓库,总体来说是根据当前的业务需求去进行架构设计的,所以需要更多结合业务去考量。

转载地址:http://shkni.baihongyu.com/

你可能感兴趣的文章
UNITY自带的3D object没有三角形?
查看>>
Lambert(朗伯)光照模型 和Half Lambert的区别
查看>>
float4数据类型
查看>>
【Unity Shaders】学习笔记
查看>>
Holographic Remoting Player
查看>>
unity之LOD
查看>>
UNITY 移动到指定位置的写法
查看>>
Unity中关于作用力方式ForceMode的功能注解
查看>>
UNITY实现FLASH中的setTimeout
查看>>
HOLOLENS 扫描特效 及得出扫描结果(SurfacePlane)
查看>>
矩形旋转一定角度后,四个点的新坐标
查看>>
Unity - RectTransform详解
查看>>
UNITY和图片像素的换算
查看>>
Resources.Load加载文件返回null的原因
查看>>
Introducing Holographic Emulation
查看>>
新手!mass 设置问题
查看>>
AS3语法和UNITY C#语法的异同
查看>>
ACCELEROMETER
查看>>
在后台中高效工作 – 后台任务
查看>>
half extents
查看>>