基于ElasticSearch和Hbase技术的网络传输数据存储系统技术方案

技术编号:20841944 阅读:228 留言:0更新日期:2019-04-13 08:40
本发明专利技术基于ElasticSearch和Hbase技术的网络传输数据存储系统,包括:Kafka模块,用于对网络传输数据进行接入和发布;Flume数据处理模块,包括:Flume Interceptors单元,用于对Kafka模块发布的网络传输数据解析为JSON格式,并进行数据处理;Channel选择单元,用于为每种数据类型定义特定的通道,及将Flume Interceptors单元处理后的网络传输数据按数据类型推送至对应通道;Flume Channel单元,用于接收及根据数据类型将网络传输数据传输;HBase Sink存储单元,用于根据设定的存储结构将网络传输数据中的元数据结合原始报文存储到HBase中;ES Sink存储单元,用于将提取的网络传输数据中的元数据存储到ES中。本发明专利技术接入处理速度和数据检索响应提高,实现快速的数据传输和存储,有效解决网络数据的快速存储及合理存储问题。

【技术实现步骤摘要】
基于ElasticSearch和Hbase技术的网络传输数据存储系统
本专利技术属于网络流量数据存储
,涉及一种基于ElasticSearch和Hbase技术的网络传输数据存储系统。
技术介绍
随着网络技术的快速发展,产生了大量的网络传输数据,针对这些数据的采集、监控、存储、分析等问题,日益成为政府、军队、以及互联网公司的重点研究方向。其中海量网络传输数据的存储问题,也是各个研究部分的难点问题。网络数据以IP数据包的形式进行传输,如何通过目前国内外的存储技术进行选型,针对以上数据有效地存储、保证数据存储性能及可靠性、为数据分析提供快速的查询接口是目前网络传输数据存储技术的关键。
技术实现思路
专利技术所要解决的课题是,解决目前网络中网络传输数据高速存储问题,并为网络分析提供支持快速检索及分布式查询的数据模型问题。用于解决课题的技术手段是,本专利技术提出一种基于ElasticSearch和Hbase技术的网络传输数据存储系统,包括:Kafka模块,用于对网络传输数据进行接入和发布;Flume数据处理模块,包括FlumeInterceptors单元、Channel选择单元、FlumeChannel单元、HBaseSink存储单元、ESSink存储单元;所述FlumeInterceptors单元,用于对Kafka模块发布的网络传输数据解析为JSON格式,并进行数据处理,包括增加消息序列、增加时间戳、增加DataRowkey;所述Channel选择单元,用于为每种数据类型定义特定的通道,及将FlumeInterceptors单元处理后的网络传输数据按数据类型推送至对应通道;所述FlumeChannel单元,用于接收Channel各通道推送的网络传输数据并缓存,及根据数据类型将网络传输数据传输至HBaseSink存储单元或ESSink存储单元;所述HBaseSink存储单元,用于根据设定的存储结构将网络传输数据中的元数据结合原始报文存储到HBase中;所述ESSink存储单元,用于将提取的网络传输数据中的元数据存储到ES中。进一步地,作为本专利技术的一种优选技术方案,所述Kafka模块将接入的网络传输数据发布为Topic。优选地,按照网络数据特征分为:单包数据类型接入Topic,应用日志类型接入Topic、统计数据类型接入Topic、文档数据Topic。进一步地,作为本专利技术的一种优选技术方案,所述FlumeInterceptors单元进行增加消息序列,包括设定增加到消息序列的随机数并作为接入网络传输数据的名称标识。进一步地,作为本专利技术的一种优选技术方案,所述FlumeInterceptors单元进行增加时间戳,包括按当前服务器时间生成时间戳及作为接入网络传输数据的时间标识。进一步地,作为本专利技术的一种优选技术方案,所述FlumeInterceptors单元增加的DataRowkey的组成为:数据秒数+(Long.Max-记录时间)+线路+数据类型+数据流水号,其中Long.Max-记录时间表示系统中最大值与当前时间戳的差值。进一步地,作为本专利技术的一种优选技术方案,所述HBaseSink存储单元存储过程具体为:按设定的Hbase存储结构创建Hbase表;接收和解析来自FlumeChannel单元中的网络传输数据,提取出数据中的DataRowKey字段,做为HBase表的RowKey;及提取出网络传输数据中的元数据,做为Hbase表的LogData列,同时提取出网络传输数据中的原始报文数据,做为Hbase表的RawPacket列,并将原始报文数据放入HBase存储队列中;根据HBase存储队列,按所需条数每次批量提交到HBase中。进一步地,作为本专利技术的一种优选技术方案,所述ESSink存储单元的存储过程具体为:按日期创建索引,并根据协议类型生成ES的索引映射关系Mapping;接收来自FlumeChannel单元中的网络传输数据,并提取出网络传输数据中的元数据,并获取数据协议类型后匹配至ES的索引映射关系Mapping,以将网络传输数据放入ES存储队列中;根据ES存储队列,按所需条数每次批量提交到ES中。专利技术效果为:本专利技术的基于ElasticSearch和Hbase技术的网络传输数据存储系统,利用Kafka对网络传输数据分主题进行接入,再利用Flume解析数据并清洗,然后利用ElasticSearch建立数据索引元数据,并提供全文索引接口,最后利用Hbase存储原始二进制数据和二级索引数据。该系统通过合理地技术选型和调优之后,在150TB数据总量前题下,数据接入处理速度可达到15000条/秒,数据检索响应达到秒级,同时还提供外部数据接口,支持分布式计算、分析。以及,本专利技术核心思想是针对网络采集的海量TB级网络传输IP数据包,将网络传输IP数据包解析为元数据及原始报文两部分,将元数据+原始报文数据存入HBase中,并使用ES对元数据进行冗余存储,通过对HBase表的Rokey设计及预分区技术、ES按时间创建索引库及按节点创建索引分片技术,解决网络数据的快速存储及合理存储问题。附图说明图1为本专利技术系统的结构框架示意图。图2为本专利技术系统的原理示意图图3为本专利技术系统的存储过程示意图。具体实施方式以下,基于附图针对本专利技术进行详细地说明。如图1所示,本专利技术设计了一种基于ElasticSearch和Hbase技术的网络传输数据存储系统,主要包括Kafka模块和Flume数据处理模块,通过Kafka接入网络传输数据,利用Flume数据处理模块对数据进行清洗处理,通过按日期分库方式存储到ES中,按秒对Rowkey进行划分方式,以及控制数据存储到HBase中。解决网络数据高速存储问题,并为网络分析提供支持快速检索及分布式查询的数据模型。具体地,所述Kafka模块用于对网络传输数据进行接入和发布,可以发布为Topic。其中Topic按照网络数据特征,分为四个:单包数据类型接入Topic,应用日志类型接入Topic、统计数据类型接入Topic、文档数据Topic。所述Flume数据处理模块,如图2所示,包括FlumeInterceptors单元、Channel选择单元、FlumeChannel单元、HBaseSink存储单元、ESSink存储单元。所述FlumeInterceptors单元,用于对Kafka模块发布的网络传输数据解析为JSON格式,并进行数据处理,包括增加消息序列、增加时间戳、增加DataRowkey;数据接入与处理采用Flume,从Kafka模块接入网络传输数据,通过FlumeInterceptors进行数据处理,将接入的网络数据包解析为JSON格式的对象。主要过程包括:增加消息序列、增加时间戳、增加DataRowkey三个步骤,同时也包括IP转换、日期转换等其他清洗过程。其中,增加到消息序列的随机数为1-20000,作为接入数据的名称标识;时间戳按当前服务器时间生成,作为接入数据的时间标识;DataRowkey的组成为:数据秒数(00-59)+(Long.Max-记录时间)+线路+数据类型+数据流水号,其中Long.Max-记录时间表示系统中最大值与当前时间戳的差值。所述Channel选择单元,用于为每种数据类型定义特本文档来自技高网...

【技术保护点】
1.基于ElasticSearch和Hbase技术的网络传输数据存储系统,其特征在于,包括:Kafka模块,用于对网络传输数据进行接入和发布;Flume数据处理模块,包括Flume Interceptors单元、Channel选择单元、Flume Channel单元、HBase Sink存储单元、ES Sink存储单元;所述Flume Interceptors单元,用于对Kafka模块发布的网络传输数据解析为JSON格式,并进行数据处理,包括增加消息序列、增加时间戳、增加DataRowkey;所述Channel选择单元,用于为每种数据类型定义特定的通道,及将Flume Interceptors单元处理后的网络传输数据按数据类型推送至对应通道;所述Flume Channel单元,用于接收Channel选择单元的各通道推送的网络传输数据并缓存,并根据数据类型将网络传输数据传输至HBase Sink存储单元或ES Sink存储单元;所述HBase Sink存储单元,用于根据设定的存储结构将网络传输数据中的元数据结合原始报文存储到HBase中;所述ES Sink存储单元,用于将提取的网络传输数据中的元数据存储到ES中。...

【技术特征摘要】
1.基于ElasticSearch和Hbase技术的网络传输数据存储系统,其特征在于,包括:Kafka模块,用于对网络传输数据进行接入和发布;Flume数据处理模块,包括FlumeInterceptors单元、Channel选择单元、FlumeChannel单元、HBaseSink存储单元、ESSink存储单元;所述FlumeInterceptors单元,用于对Kafka模块发布的网络传输数据解析为JSON格式,并进行数据处理,包括增加消息序列、增加时间戳、增加DataRowkey;所述Channel选择单元,用于为每种数据类型定义特定的通道,及将FlumeInterceptors单元处理后的网络传输数据按数据类型推送至对应通道;所述FlumeChannel单元,用于接收Channel选择单元的各通道推送的网络传输数据并缓存,并根据数据类型将网络传输数据传输至HBaseSink存储单元或ESSink存储单元;所述HBaseSink存储单元,用于根据设定的存储结构将网络传输数据中的元数据结合原始报文存储到HBase中;所述ESSink存储单元,用于将提取的网络传输数据中的元数据存储到ES中。2.根据权利要求1所述基于ElasticSearch和Hbase技术的网络传输数据存储系统,其特征在于,所述Kafka模块将接入的网络传输数据发布为Topic。3.根据权利要求2所述基于ElasticSearch和Hbase技术的网络传输数据存储系统,其特征在于,所述Kafka模块发布的Topic按照网络数据特征分为:单包数据类型接入Topic,应用日志类型接入Topic、统计数据类型接入Topic、文档数据Topic。4.根据权利要求1所述基于ElasticSearch和Hbase技术的网络传输数据存储系统,其特征在于,所述FlumeInterceptors单元进行增加消息序列,包括设定增加到消息...

【专利技术属性】
技术研发人员:龚虹瑞王永程夏延钊刘明明杨家红邱祥吉
申请(专利权)人:航天恒星科技有限公司
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1