一种数据存储系统、方法及电子设备和存储介质技术方案

技术编号:36169270 阅读:9 留言:0更新日期:2022-12-31 20:19
本申请公开了一种数据存储系统、方法及一种电子设备和一种计算机可读存储介质,该系统包括:消息中间件,用于获取IPFIX流数据,并将所述IPFIX流数据按照时间戳的顺序进行排序;时序数据库,用于从所述消息中间件中读取并存储排序完成的IPFIX流数据。本申请提供的数据存储系统,利用消息中间件将IPFIX流数据按照时间戳的顺序进行排序,时序数据库可以直接从消息中间件中读取排序完成的IPFIX流数据,并对其进行直接存储,时序数据库不需要对IPFIX流数据进行排序。由此可见,本申请提供的数据存储系统,实现了IPFIX流数据的高效存储。实现了IPFIX流数据的高效存储。实现了IPFIX流数据的高效存储。

【技术实现步骤摘要】
一种数据存储系统、方法及电子设备和存储介质


[0001]本申请涉及计算机
,更具体地说,涉及一种数据存储系统、方法及一种电子设备和一种计算机可读存储介质。

技术介绍

[0002]IPFIX(IP Flow Information Export Protocol)是由IETF推出的一种基于Netflow v9发展而来的标准流数据导出协议,IPFIX数据一般从数据源按照一定的周期进行上传。
[0003]因此,如何实现IPFIX流数据的高效存储是本领域技术人员需要解决的技术问题。

技术实现思路

[0004]本申请的目的在于提供一种数据存储系统、方法及一种电子设备和一种计算机可读存储介质,实现了IPFIX流数据的高效存储。
[0005]为实现上述目的,本申请提供了一种数据存储系统,包括:
[0006]消息中间件,用于获取IPFIX流数据,并将所述IPFIX流数据按照时间戳的顺序进行排序;
[0007]时序数据库,用于从所述消息中间件中读取并存储排序完成的IPFIX流数据。
[0008]其中,所述消息中间件包括m个数据缓存区,每个所述数据缓存区中的IPFIX数据按照时间戳的顺序进行缓存;
[0009]相应的,所述消息中间件具体用于基于目标IPFIX数据的时间戳确定满足预设条件的目标数据缓存区,并将所述目标IPFIX数据缓存至所述目标数据缓存区中;
[0010]其中,所述预设条件为t
’‑
(i+1)T/m≤t≤t
’‑
>iT/m,t

=t0+[(t1‑
t0)/T]T,t0为所述IPFIX流数据初始到达所述消息中间件的时间,t1为当前时间,i为所述目标数据缓存区的标识,i=0,1,

,m

1,T为t

的更新周期,t为所述目标IPFIX数据的时间戳。
[0011]其中,所述消息中间件具体为kafka,所述数据缓存区具体为partition。
[0012]其中,所述时序数据库具体用于创建m个进程,并利用所述进程从所述消息中间件中对应的数据缓存区中读取并存储排序完成的IPFIX数据;其中,所述进程与所述数据缓冲区一一对应。
[0013]其中,所述时序数据库具体用于从所述消息中间件中读取排序完成的IPFIX数据,对读取到的数据进行不同时间粒度的分表压缩操作,并对压缩得到的多个数据表进行分别封装;其中,所述时间粒度包括分钟级、小时级和天级中任一项或任几项的组合。
[0014]为实现上述目的,本申请提供了一种数据存储方法,包括:
[0015]消息中间件获取IPFIX流数据;其中,所述IPFIX流数据包括多个IPFIX数据;
[0016]所述消息中间件将所述IPFIX数据按照时间戳的顺序进行排序;
[0017]时序数据库从所述消息中间件中读取并存储排序完成的IPFIX数据。
[0018]其中,所述消息中间件包括m个数据缓存区,每个所述数据缓存区中的IPFIX数据
按照时间戳的顺序进行缓存;
[0019]相应的,所述消息中间件将所述IPFIX数据按照时间戳的顺序进行排序,包括:
[0020]所述消息中间件基于目标IPFIX数据的时间戳确定满足预设条件的目标数据缓存区,并将所述目标IPFIX数据缓存至所述目标数据缓存区中;
[0021]其中,所述预设条件为t
’‑
(i+1)T/m≤t≤t
’‑
iT/m,t

=t0+[(t1‑
t0)/T]T,t0为所述IPFIX流数据初始到达所述消息中间件的时间,t1为当前时间,i为所述目标数据缓存区的标识,i=0,1,

,m

1,T为t

的更新周期,t为所述目标IPFIX数据的时间戳。
[0022]其中,所述消息中间件具体为kafka,所述数据缓存区具体为partition。
[0023]其中,所述时序数据库从所述消息中间件中读取并存储排序完成的IPFIX数据,包括:
[0024]所述时序数据库创建m个进程,并利用所述进程从所述消息中间件中对应的数据缓存区中读取并存储排序完成的IPFIX数据;其中,所述进程与所述数据缓冲区一一对应。
[0025]其中,所述时序数据库从所述消息中间件中读取并存储排序完成的IPFIX数据,包括:
[0026]所述时序数据库从所述消息中间件中读取排序完成的IPFIX数据,对读取到的数据进行不同时间粒度的分表压缩操作,并对压缩得到的多个数据表进行分别封装;其中,所述时间粒度包括分钟级、小时级和天级中任一项或任几项的组合。
[0027]为实现上述目的,本申请提供了一种电子设备,包括:
[0028]存储器,用于存储计算机程序;
[0029]处理器,用于执行所述计算机程序时实现如上述数据存储系统中消息中间件或时序数据库执行的步骤。
[0030]为实现上述目的,本申请提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上述数据存储系统中消息中间件或时序数据库执行的步骤。
[0031]通过以上方案可知,本申请提供的一种数据存储系统,包括:消息中间件,用于获取IPFIX流数据,并将所述IPFIX流数据按照时间戳的顺序进行排序;时序数据库,用于从所述消息中间件中读取并存储排序完成的IPFIX流数据。
[0032]本申请提供的数据存储系统,利用消息中间件将IPFIX流数据按照时间戳的顺序进行排序,时序数据库可以直接从消息中间件中读取排序完成的IPFIX流数据,并对其进行直接存储,时序数据库不需要对IPFIX流数据进行排序。由此可见,本申请提供的数据存储系统,实现了IPFIX流数据的高效存储。本申请还公开了一种数据存储方法及一种电子设备和一种计算机可读存储介质,同样能实现上述技术效果。
[0033]应当理解的是,以上的一般描述和后文的细节描述仅是示例性的,并不能限制本申请。
附图说明
[0034]为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以
根据这些附图获得其他的附图。附图是用来提供对本公开的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本公开,但并不构成对本公开的限制。在附图中:
[0035]图1为根据一示例性实施例示出的一种数据存储系统的结构图;
[0036]图2为根据一示例性实施例示出的一种数据分表的示意图;
[0037]图3为根据一示例性实施例示出的一种数据存储方法的流程图;
[0038]图4为根据一示例性实施本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种数据存储系统,其特征在于,包括:消息中间件,用于获取IPFIX流数据,并将所述IPFIX流数据按照时间戳的顺序进行排序;时序数据库,用于从所述消息中间件中读取并存储排序完成的IPFIX流数据。2.根据权利要求1所述数据存储系统,其特征在于,所述消息中间件包括m个数据缓存区,每个所述数据缓存区中的IPFIX数据按照时间戳的顺序进行缓存;相应的,所述消息中间件具体用于基于目标IPFIX数据的时间戳确定满足预设条件的目标数据缓存区,并将所述目标IPFIX数据缓存至所述目标数据缓存区中。3.根据权利要求2所述数据存储系统,其特征在于,所述预设条件为t
’‑
(i+1)T/m≤t≤t
’‑
iT/m,t

=t0+[(t1‑
t0)/T]T,t0为所述IPFIX流数据初始到达所述消息中间件的时间,t1为当前时间,i为所述目标数据缓存区的标识,i=0,1,

,m

1,T为t

的更新周期,t为所述目标IPFIX数据的时间戳。4.根据权利要求2所述数据存储系统,其特征在于,所述消息中间件具体为kafka,所述数据缓存区具体为partition。5.根据权利要求2所述数据存储系统,其特征在于,所述时序数据库具体用于创建m个进程,并利用所述进程从所述消息中间件中对应的数据缓存区中读取并存储排序完成的IPFIX数据;其中,所述进程与所述数据缓冲区一一对应。6.根据权利要求1所述数据存储系统,其特征在于,所述时序数据库具体用于从所述消息中间件中读取排序完成的IPFIX数据,对读取到的数据进行不同时间粒度的分表压缩操作,并对压缩得到的多个数据表进行分别封装;其中,所述时间粒度包括分钟级、小时级和天级中任一项或任几项的组合。7.一种数据存储方法,其特征在于,包括:消息中间件获取IPFIX流数据;其中,所述IPFIX流数据包括多个IPFIX数...

【专利技术属性】
技术研发人员:李德方陈晓帆朱林杰杨兰平马耀泉
申请(专利权)人:深信服科技股份有限公司
类型:发明
国别省市:

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

1