软件环境:Linux红帽6.4、Ambari、Hadoop、ZooKeeper、Spark、Flink、hive、kylin、Hbase、Phoenix、Flume、Kafka、kettle、canal、Azkaban、Oacle12C、MySQL
建设基于Hadoop的大数据管理平台,与各类业务系统和海量数据服务平台对接接口,获取海量数据,实现数据采集、数据分析、业务模型计算以及大数据分布式存储;基于各类业务模型,开发完成元数据管理、数据封装、数据接入、数据处理(数据清洗、数据标准化)、数据关联、数据备份、安全性管理等功能;
(1)数据接入层:批量数据采集使用ETL工具kettle,配合Linux的shell脚本,每天从各类业务系统抽取数据,利用ETL进行数据清洗,剔除或者改正异常数据,提高数据质量;实时数据采集分为文件数据实时采集和数据库实时采集,文件实时采集采用flume+kafka,MySQL数据实时采集采用canal+kafka,需要注意消息队列的顺序;
(2)数据存储层:由分布式文件系统(hdfs)和分布式数据库(面向行/列的存储)构成,搭建Oracle+MySQL+Hbase混合数据库,并配合hive数据仓库;Oracle集群存储各类报表计算数据,hive存储清洗之后的源数据,用于数据分析和充当数据备份,MySQL保存hive的元数据,Hbase保存一年之内的量测数据,通过rowkey提高查询速度;
(3)计算引擎层:包括批处理(时间要求低,高吞吐)、交互式处理(即时统计)、流式实时处理(时间要求非常高)三种引擎。根据业务需求,采用Spark引擎负责离线计算任务,用Azkaban调度执行;采用Flink作为流式计算引擎;采用oracle存储过程计算应用系统的即时任务;
(4)资源管理与服务协调层:YARN:统一资源管理与调度系统,它能够管理集群中的各种资源(CPU、内存、网络等),并按照一定的策略分配调度。ZooKeeper:服务协调系统,提供包括:配置维护、名字服务、分布式同步、组服务等;
(5)数据分析层:hive是基于MapReduce实现的sql引擎;SparkSQL是基于spark实现的sql引擎;Kylin是一个分布式分析引擎,提供Hadoop之上的SQL查询接口及多维分析,预计算多个维度组合的度量,将结果保存在hbase中;
(6)数据展示层:在系统页面中展示最终计算出来的各种指标数据。
企业级大数据技术框架
最新推荐文章于 2024-05-11 11:30:32 发布