一种数据实时分发处理装置及方法
【专利摘要】一种数据实时分发处理装置及方法,涉及海量数据分发处理领域,提高多个并发数据源的海量数据实时分发处理的实时性,减少数据积压。实时分发入库模块接收一个或者多个数据源发送的数据流,并查询本模块的当前入库状态,如果所述当前入库状态满足所述数据流的入库需求,则将所述数据流存入数据集中存储模块中,如果所述当前入库状态不满足所述数据流的入库需求,则根据所述多个实时分发入库模块的当前入库状态,确定满足数据流的入库需求的一个或多个实时分发入库模块,指示所确定的实时分发入库模块将所述数据流存入数据集中存储模块中;各个实时分发入库模块的数据流入库成功后,更新当前入库状态。
【专利说明】一种数据实时分发处理装置及方法
【技术领域】
[0001]本发明涉及海量数据分发处理领域,特别涉及一种数据实时分发处理装置及方法。
【背景技术】
[0002]截至2013年7月,以中国联通为例,全国31省平均移动用户(包括3G用户、2G用户及无线上网卡用户)的日均总流量0.9PB,通过在全国所有核心网网元设备部署分光采集,并对采集到的流量数据进行报文解析,全国31省移动用户平均生成流量话单文件9.5万个/日,流量记录600亿条/日,平均69.4万条/秒,流量记录占用存储空间为4TB/日。每条流量记录具有固定字段格式。
[0003]话单文件中流量记录的数据格式为:
[0004]
【权利要求】
1.一种数据实时分发处理装置,其特征在于,包括数据集中存储模块和多个实时分发入库模块, 实时分发入库模块,用于接收一个或者多个数据源发送的数据流,并查询本模块的当前入库状态,如果所述当前入库状态满足所述数据流的入库需求,则将所述数据流存入数据集中存储模块中,如果所述当前入库状态不满足所述数据流的入库需求,则根据所述多个实时分发入库模块的当前入库状态,确定满足数据流的入库需求的ー个或多个实时分发入库模块,指示所确定的实时分发入库模块将所述数据流存入数据集中存储模块中;在入库成功后,更新本模块的当前入库状态;还用于根据其它实时分发入库模块的指示将相应的数据流存入数据集中存储模块中; 所述数据集中存储模块,用于接收并存储各个实时分发入库模块发送的数据流。
2.如权利要求1所述的处理装置,其特征在于:当前入库状态包括可用存储空间和入库速度,当可用存储空间高于数据流的需求空间并且入库速度高于设置的最低阈值时,满足所述数据流的入库需求。
3.如权利要求2所述的处理装置,其特征在于:在本模块的当前入库状态都不满足所述数据流的入库需求时,所述实时分发入库模块确定满足数据流的入库需求的另ー个实时分发入库模块,由确定的另ー个实时分发入库模块将所述数据流存入数据集中存储模块中; 或者, 在所有实时分发入库模块的当前入库状态都不满足所述数据流的入库需求时,所述实时分发入库模块确定ー个入库速度高于设置的最低阈值并且可用存储空间最接近数据流的入库需求的实时分发入库模块,再确定ー个或者多个入库速度高于设置的最低阈值并且可用存储空间满足剰余数据流的入库需求的实时分发入库模块,由确定的两个或者多个时分发入库模块将所述数据流存入数据集中存储模块中; 或者, 在所有实时分发入库模块的当前入库状态都不满足所述数据流的入库需求时,所述实时分发入库模块确定两个或者多个实时分发入库模块入库速度高于设置的最低阈值、组合后可用存储空间满足数据流的入库需求并且最接近的数据流的入库需求,由所述两个或者多个实时分发入库模块将所述数据流存入数据集中存储模块中。
4.如权利要求1所述的处理装置,其特征在于:所述实时分发入库模块包括实时分发子模块和数据入库子模块, 所述实时分发子模块,在接收ー个或者多个数据源发送的数据流后,查询入库状态信息表,获得所述实时分发入库模块的当前入库状态,当所述实时分发入库模块的当前入库状态满足所述数据流的入库需求时,实时分发子模块发送数据入库消息给数据入库子模块;所述实时分发子模块还用于根据所述数据入库子模块发送的入库成功消息更新入库状态信息表;所述实时分发子模块还用于根据其它实时分发子模块的指示查询入库状态信息表,获得入库速度和分发存储空间信息,并将所述分发存储空间信息返回给其它实时分发子模块;所述分发存储空间小于或者等于可用存储空间; 所述数据入库子模块,将所述数据流存入数据集中存储模块中,并在存入成功后,发送入库成功消息给实时分发子模块。
5.如权利要求4所述的处理装置,其特征在于:当所述实时分发入库模块的当前入库状态不满足所述数据流的入库需求时,向其他的所有或者部分实时分发入库模块的实时分发子模块发送数据分发请求消息,接收到数据分发请求消息的一个或者多个实时分发子模块查询入库状态信息表,并向发送数据分发请求消息的实时分发子模块返回数据分发确认消息;所述数据分发确认消息中携帯入库速度和分发存储空间信息; 接收到数据分发确认消息的实时分发子模块,确定入库速度高于设置的最低阈值并且满足数据流的入库需求的另ー个实时分发入库模块或者入库速度高于设置的最低阈值并且组合后满足数据流的入库需求的多个实时分发入库模块,井向另ー个实时分发入库模块的实时分发子模块或者多个实时分发入库模块的实时分发子模块发送数据分发消息,并按照所述数据分发确认消息中的分发存储空间将所接收到的数据流进行实时分发,由另ー个实时分发入库模块I的数据入库子模块或者多个实时分发入库模块的数据入库子模块将所述数据流存入数据集中存储模块中,并在存入成功后,发送入库成功消息给对应的实时分发子模块; 所述另ー个实时分发入库模块的实时分发子模块或者多个实时分发入库模块的,还用于根据对应的数据入库子模块发送的入库成功消息更新入库状态信息表。
6.如权利要求5所述的处理装置,其特征在于:当前入库状态还包括正在服务的其他实时分发子模块任务数N,在接收到一次其他实时分发子模块发送的数据分发请求消息吋,N+1,在接收到一次数据入库子模块发送的IP地址为其他实时分发入库模块的地址的入库成功消息时,N-1。
7.如权利要求5所述的处理装置,其特征在于:实时分发子模块还用于为所述ー个或者多个数据源的数据流标记用于指示所述数据流来源的数据源标签;还用于向组合后满足数据流的入库需求的多个实时分发入库模块的实时分发子模块发送用于指示分发文件的文件名列表; 所述多个实时分发入库模块的数据入库子模块,还用于根据所述数据源标签和文件名列表,所述数据流存入数据·集中存储模块中。
8.一种数据实时分发处理方法,其特征在于,用于权利要求1所述的数据实时分发处理装置,包括: 实时分发入库模块接收ー个或者多个数据源发送的数据流,并查询本模块的当前入库状态,如果所述当前入库状态满足所述数据流的入库需求,则将所述数据流存入数据集中存储模块中,如果所述当前入库状态不满足所述数据流的入库需求,则根据所述多个实时分发入库模块的当前入库状态,确定满足数据流的入库需求的ー个或多个实时分发入库模块,指示所确定的实时分发入库模块将所述数据流存入数据集中存储模块中; 数据集中存储模块接收并存储各个实时分发入库模块发送的数据流; 各个实时分发入库模块的数据流入库成功后,更新当前入库状态。
9.如权利要求8所述的处理方法,其特征在于:当前入库状态包括可用存储空间和入库速度,当可用存储空间高于数据流的需求空间并且入库速度高于设置的最低阈值时,满足所述数据流的入库需求。
10.如权利要求9所述的处理方法,其特征在于: 确定满足数据流的入库需求的的一个或多个实时分发入库模块的策略为:确定满足数据流的入库需求的另ー个实时分发入库模块; 或者, 确定ー个入库速度高于设置的最低阈值并且可用存储空间最接近数据流的入库需求的实时分发入库模块,再确定ー个或者多个入库速度高于设置的最低阈值并且可用存储空间满足剰余数据流的入库需求的实时分发入库模块; 或者, 确定两个或者多个实时分发入库模块入库速度高于设置的最低阈值、组合后可用存储空间满足数据流的入库需求并且最接近的数据流的入库需求。
11.如权利要求9所述的处理方法,其特征在干: 确定组合后满足数据流的入库需求的多个实时分发入库模块的步骤包括: 所述实时分发入库模块向其他的所有或者部分实时分发入库模块发送数据分发请求消息,接收到数据分发请求消息的一个或者多个实时分发模块查询入库状态信息表,井向发送数据分发请求消息的实时分发子模块返回数据分发确认消息;所述数据分发确认消息中携帯入库速度和分发存储空间信息;所述分发存储空间小于或者等于可用存储空间; 接收到数据分发确认消息的实时分发子模块,确定入库速度高于设置的最低阈值并且满足数据流的入库需求的另ー个实时分发入库模块或者入库速度高于设置的最低阈值并且组合后满足数据流的入库需求的多个实时分发入库模块,并向所述另ー个实时分发入库模块或者多个实时分发入库模块发送数据分发消息,并按照所述数据分发确认消息中的分发存储空间将所接收到的数据流进行实时分发。
12.如权利要求11中任一项所述的处理方法,其特征在于:在实时分发子模块接收一个或者多个数据源发送的数`据流后,为所述一个或者多个数据源的数据流标记用于指示所述数据流来源的数据源标签; 实时分发子模块在确定组合后满足数据流的入库需求的多个实时分发入库模块后,向组合后满足数据流的入库需求的多个实时分发入库模块发送用于指示分发文件的文件名列表; 所述多个实时分发入库模块根据所述数据源标签和文件名列表,所述数据流存入数据集中存储模块中。
【文档编号】H04L29/08GK103595800SQ201310581497
【公开日】2014年2月19日 申请日期:2013年11月18日 优先权日:2013年11月18日
【发明者】王志军, 李娜 申请人:中国联合网络通信集团有限公司