应用华为大数据平台配置大数据项目①

应用华为大数据平台配置大数据项目①

概述

智慧交通项目,由车载硬件设备发送GPS等数据,经过简单处理后经大数据平台计算返回结果,实时处理使用Spark2X,离线批处理使用Hive的MapReduce,作为历史数据存入Oracle,本文主要记录关于华为大数据平台使用FLume,Kafka,HDFS,Spark2X,等组件配置,使用过程中遇到的一些问题(踩过的坑),总结经验,记录自己的成长.

框架

本人是第一次设计大数据项目架构,欢迎大家提问,指正,我看到留言和私信都会回复的,下面附上低配版架构图
在这里插入图片描述

详述

数据源是从Rabbitmq中获取,在JAVA服务中做一些简单的数据清洗,通过log4j的appender发送给flume,因为公司都是SSM架构,后期有机会可以改造成SpringCloud.从flume开始,后面的所有组件都是安装在由华为大数据平台所管理的集群上面,华为提供一个组件叫做FusionInsightManager,此组件是一个图形化界面,方便监控整个集群的运行状态,和所有安装的组件(如Flume,Kafka)的运行状态,具体请参见华为官方文档.
flume接到数据后配置两个sink,一个发送给hdfs,落地成文件,由hive创建外部表关联,做离线批处理.作为历史数据ETL到oracle数据库.
另外一个sink给到另一个节点的flume服务端(华为定义的),因为直接给到Kafka接不到数据,所以多了一步配置,具体后面的文章会讲.然后由这个flume服务端把数据给到Kafka,再由Spark2X消费Kafka的数据,做实时计算后,返回需要的结果.

关于log4j

这里log4j有一个地方需要注意,如果用普通的maven项目搭建发送给Flume,根据依赖的log4j版本可以使用.properties配置,如果用的是springboot项目,默认是使用log4j2,这里是不支持.properties配置的,如果过非要使用.properties配置,请依赖2.6以上的版本,详情参见官方文档,可以使用xml作为配置文件,log4j2所有版本都适用,下面贴上测试成功的部分截图:
maven项目使用log4j的依赖:
普通maven工程
样例代码:
在这里插入图片描述
log4j配置文件:
在这里插入图片描述
log4j的配置文件一定要放在resources下,不然找不到
在这里插入图片描述
下面是springboot的项目:
pom依赖:
一定要先排除掉springboot自带的log
在这里插入图片描述
下面添加log4j的依赖
在这里插入图片描述
flume依赖
在这里插入图片描述
在这里插入图片描述
下面是样例代码:
在这里插入图片描述
下面是log4j2的xml配置
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
注意:xml配置文件的名字必须是log4j2-spring.xml,不然会找不到而使用log4j2的默认配置

有不足之处还请多多指点!
未完待续!!

猜你喜欢

转载自blog.csdn.net/weixin_44336726/article/details/100011546