大数据平台架构+ETL

 

1

 

ETL,Extraction-Trasformation-Loading,即数据读取,转换,装载的过程,是构建数据仓库的重要环节。

ETL是将业务系统的数据经过抽取,清洗转换之后加载到数据仓库的过程,目的是将企业中的额分散的,零乱的,标准不统一的数据整合到一起,为企业决策提供分析依据。ETL是BI项目中重要的一个环节。

数据抽取:把不同的数据源数据抓取过来,存到某个地方。例如:网络爬虫。

数据清洗:过滤那些不符合要求的数据或者修正数据之后再抽取。清洗包括以下几种不符合要求的数据:

1、不完整的数据:数据缺失需要不全才能写入数据仓库。

2、错误的数据:格式错误,日期越界,或者多了一个空格等。

3、重复的数据:重复数据记录的所有字段都要去重。

数据转换:不一致的数据转换。统一编码。

ETL的实现方法:

1、借助ETL工具。(如OWB,DTS,SSIS等)实现。

2、SQL方法实现。

3、ETL工具与SQL相结合。

工具降低难度,但缺少灵活性。SQL灵活但编码复杂,因此结合两者。

2

 

大数据平台架构

首先,对于做大数据开发而言,平台的监控与报警和平台管理不归我们管,主要是给运维人员做的事情。我们要做的就是中间的事情。

然后来看看数据基础平台接入层,获取数据,一般用Canal,Sqoop与Flume。存储层,当我们拿到数据以后,我们需要找个地方存储,首选HDFS(分布式文件系统,前面讲过),这里就是作为一个存储层。另外还有HBase,可以称作大数据中的数据库。Kafka的话一般会跟Flume作为一个组合。调度层,就是把计算层的计算放到调度层运行。如前面讲的小案例,就是把mapreduce放到yarn上面去运行。计算层,就是对数据的处理运算。

接着看数据应用平台元数据管理。这边的元数据要存储到关系型数据库中。作业平台管理,就是任务调度。交互分析就关系到sql语句。多维分析主要是对数据的维度分析,如按年分析,按月分析,按周分析等。数据可视化,展示数据,供给决策。

最后看看数据应用。一般做的就是流量统计和用户行为分析,做数据展示。

 

3

 

系统数据流动

最左边是数据来源,可以看到,一个是来自日志数据,另外一个是来源于关系型数据库。

实时流。拿到数据后直接存入kafka或者是hdfs中进行缓存,如果此时计算层需要调度数据,可以直接从kafka中直接消费。计算完后对数据存储还可以存储回kafka或者放到HBase或mysql,从而作为业务上的使用。

离线流,存储到hdfs然后由MR调用,接着是ETL对数据的处理,处理完后将数据存储到关系型数据库,最后可以做出BI报表展示。

这边的话可能我的逻辑也有点乱...主要还是看图分析吧。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

见见大魔王

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值