基于移动互联网海量信息的流式预处理系统及其方法_2

文档序号:9708433阅读:来源:国知局
有Spark开源消息系统的Linux服务器,各节点之间使用Zookeeper协调管理。
[0019](I)Spark主节点3A0内嵌有Spark Streaming控制模块3A1;
Spark Streaming控制模块3A1读取Kafka集群中的数据,生成预处理任务分发给工作节点,自动控制预处理日志,写入HDFS日志存储目录401;
(2 )每个工作节点内嵌有数据预处理模块311;
数据预处理模块311按照指定的流程处理数据,最终写入HBase数据库402。
[0020]4)Hadoop 集群 400
Hadoop集群400包括第 IHadoop节点 410、第2Hadoop节点 420......第NHadoop节点 4P0 ;
每个节点是一种Hadoop开源软件的Linux服务器,内嵌有预处理的HDFS日志存储目录401和HBase数据库402。
[0021]3、工作机理
接口机100接收到移动互联网000的数据文件之后,将其解析并格式化存入到Kafka集群200进行缓存,同时,Spark集群300中的主节点在Spark Streaming控制模块的控制下从kafka缓存中读取数据,自动写入HDFS日志存储目录,生成预处理任务,分发给工作节点处理,并自动地周期性地设置检查点,保证零数据丢失,预处理完成之后,数据存入Hadoop集群40中的HBase数据库。
[0022]二、方法
*步骤⑤
如图2,Spark Streaming控制模块3A1读取Kafka集群200中缓存的数据并生成预处理任务的工作流程如下:
A、SparkStreaming初始化,设置预处理日志存储目录-51 ;
B、连接Kafka集群Zookeeper,获取Kafka集群的连接-52;
C、SparkStreaming循环读取Kafka中的数据-53 ;
D、判断是否有数据-54,是则进入步骤E,否则暂停60S-58后跳转到步骤C;
E、将数据转换成DStream-55;
F、将DStream重新分区-56;
G、将重新分区的DStream以分区为单位转换成一个新的DStream,分发任务给Spark工作节点-57。
[0023]*步骤⑥
如图3,预处理模块处理数据的工作流程如下:a、数据解析-61;
b、根据提取规则提取业务数据-62;
c、判断是否有异常-63,是则跳转到步骤b,否则进入步骤d;
d、根据过滤规则过滤海量数据-64;
e、判断是否有异常-65,是则跳转到步骤b,否则进入步骤f;
f、将业务数据和海量原始数据入库-66;
g、判断是否有异常-67,是则跳转到步骤b,否则流程结束;
h、流程结束-68。
【主权项】
1.一种基于移动互联网海量信息的流式预处理系统,包括移动互联网000,其特征在于: 设置有接 口机(100 )、Kaf ka 集群(200 )、Spark 集群(300 )和 Hadoop 集群(400 ); 移动互联网(000)、接口机(100)、Kafka集群(200)、Spark集群(300)和Hadoop集群(400)依次连通。2.按权利要求1所述的流式预处理系统,其特征在于: 所述的接口机(100)包括第I接口机(110)、第2接口机(120)……第M接口机(IMO),M是自然数,1<M<5; 每个接口机内嵌有依次交互的文件轮询模块(101)、文件解析模块(102)和数据缓存模块(103)。3.按权利要求1所述的流式预处理系统,其特征在于: 所述的Kaf ka集群(200 )包括第IKaf ka节点(210 )、第2Kaf ka节点(220 )……第NKaf ka节点(2勵)小为自然数,1<1^10;; 每个Kafka节点是一种内嵌有Kafka开源消息系统的Linux服务器,各节点之间使用Zookeeper协调管理。4.按权利要求1所述的流式预处理系统,其特征在于: 所述的Spark集群(300)包括Spark主节点(3A0)和分别与其连接的第I Spark工作节点(310)、第2Spark工作节点(320)……第OSpark工作节点(300),O为自然数,I < O < 10; 每个节点是一种内嵌有Spark开源计算系统的Linux服务器,各节点之间使用Zookeeper协调管理; Spark主节点(3A0)内嵌有Spark Streaming控制模块(3A1); Spark Streaming控制模块(3A1)读取Kafka集群中的数据,生成预处理任务分发给工作节点,自动控制预处理日志,写入HDFS; 每个工作节点内嵌有数据预处理模块(311); 数据预处理模块(311)按照指定的流程处理数据,最终写入HBase。5.按权利要求1所述的流式预处理系统,其特征在于: 所述的Hadoop集群(400)包括第IHadoop节点(410)、第2Hadoop节点(420)......第PHadoop节点(4P0),P为自然数,I SPS 10; 每个节点是一种Hadoop开源软件的Linux服务器,内嵌有预处理的HDFS日志存储目录(401)和HBase 数据库(402)。6.基于权利要求1-5所述系统的流式预处理方法,其特征在于包括以下步骤: ①移动互联网海量数据以文件的形式通过FTP的方式上传到接口机指定目录; ②接口机文件轮询模块定时扫描接口机指定目录,获取目录中的文件列表,发送至文件解析模块; ③文件解析模块解析文件并格式化其内容,将其发送至流数据缓存模块; ④流数据缓存模块通过Zookeeper连接Kafka集群,将数据批量写入Kafka集群; ⑤Spark主节点中的SparkStreaming控制模块通过Zookeeper连接Kafka集群,读取Kafka集群中缓存的数据,存入HDFS日志存储目录,生成预处理任务分发至各个Spark工作节点,并周期性地设置检查点,如果任务执行失败,可以通过读取HDFS存储的日志重新执行任务; ⑥预处理模块按照指定的处理流程处理数据,最终写入HBase数据库。7.按权利要求6所述的流式预处理方法,其特征在于步骤⑤的工作流程是: A、SparkStreaming初始化,设置预处理日志存储目录(51); B、连接Kafka集群Zookeeper,获取Kafka集群的连接(52); C、SparkStreaming循环读取Kafka中的数据(53); D、判断是否有数据(54),是则进入步骤E,否则暂停60s(58)后跳转到步骤C; 已、将数据转换成03壮册111(55); F、将DStream重新分区(56); G、将重新分区的DStream以分区为单位转换成一个新的DStream,分发任务给Spark工作节点(57)。8.按权利要求6所述的流式预处理方法,其特征在于步骤⑥的工作流程是: a、数据解析(61); b、根据提取规则提取业务数据(62); c、判断是否有异常(63),是则跳转到步骤b,否则进入步骤d; d、根据过滤规则过滤海量数据(64); e、判断是否有异常(65),是则跳转到步骤(b),否则进入步骤f; f、将业务数据和海量原始数据入库(66); g、判断是否有异常(67),是则跳转到步骤b,否则流程结束; h、流程结束(68)。
【专利摘要】本发明公开了一种基于移动互联网海量信息的流式预处理系统及其方法,属于大数据领域。本系统是移动互联网(000)、接口机(100)、Kafka集群(200)、Spark集群(300)和Hadoop集群(400)依次连通。本方法主要是:控制模块通过Zookeeper连接Kafka集群,读取Kafka集群中缓存的数据;预处理模块按照指定的处理流程处理数据,最终写入HBase数据库。本发明弥补了MapReduce不支持流式数据处理的不足;处理速度快,且具有容错性;通过整合分布式消息系统、分布式流式处理框架、hadoop分布式文件系统三种大数据领域的技术,为其它大数据技术之间的模块化整合提供了参考;能够对所有移动互联网的海量信息进行实时处理,可以为运营商的实时业务提供技术支持。
【IPC分类】G06F17/30
【公开号】CN105468735
【申请号】CN201510818371
【发明人】严雄伟
【申请人】武汉虹旭信息技术有限责任公司
【公开日】2016年4月6日
【申请日】2015年11月23日
当前第2页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1