hadoop离线项目处理流程

 各组件的简介

  1.  Hadoop:HDFS MR(清洗)YARN、需要部署hadoop集群
  2. Hive:外部表、SQL、解决数据倾斜、sql优化、基于元数据管理、SQL到MR过程
  3. Flume:将数据抽取到hdfs
  4. 调度:crontab、shell、Azkaban
  5. HUE:可视化的notebook,CM自带 ,排查数据
  • 使用Flume/logstash抽取服务器上的日志数据以及使用sqoop/spark抽取关系型数据库的数据,将数据抽取到HDFS(压缩+普通文本格式)。 将hdfs上数据通过(MR/Spark/Flink)清洗出来后存放数仓(hive) 将原始的数据放到目标位置(hive的外部表) 业务计算,将结果放到业务表(数据集市) 应用程序查询访问,我们这个可通过HUE查看信息

  

 处理流程图

  1. 集群内的可用flume,beat,logstash等等采集工具
  2. 集群外的数据可以通过sqoop或者spark等一些平台或者框架来导入(如果从sql来解决就是平台型的,如果从代码来解决就是业务型的)这里都是平台型来解决。
  3. 大部分公司都是以天级别来分log文件的;支持各种文本格式
  4. 清洗过后的数据一般都是落在hive之上;ETL(mr)出来之后的一个分区表
  5. 步骤是:数据清洗=>移动数据到数仓=>刷元数据信息 最后用hue等工具展示数据

备注1:HUE是个非常强大且方便的可视化界面。在界面能操作hadoop生态圈的组件以及查询 查询组件显示信息。使用场景:排查数据
备注2: zeppelin和HUE较类似的一个工具,但是比HUE好用,目前市场主流是以改zeppelin源码去做自己的可视化界面。
备注3:步骤2、3、4,的数据落地hdfs时,数据压缩格式、数据的存储格式选择很重要

原文地址:https://www.cnblogs.com/xuziyu/p/10680609.html