CN102968422B - 流数据存储控制系统及其方法 - Google Patents

流数据存储控制系统及其方法 Download PDF

Info

Publication number
CN102968422B
CN102968422B CN201110389239.9A CN201110389239A CN102968422B CN 102968422 B CN102968422 B CN 102968422B CN 201110389239 A CN201110389239 A CN 201110389239A CN 102968422 B CN102968422 B CN 102968422B
Authority
CN
China
Prior art keywords
flow data
volume
node
section
time
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201110389239.9A
Other languages
English (en)
Other versions
CN102968422A (zh
Inventor
牛中盈
黄志杰
王施人
严风
张科
陕振
张淑萍
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
BEIJING AEROSPACE AIWEI ELECTRONIC TECHNOLOGY CO., LTD.
Second Research Institute of China Aerospace Industry Group Seven 0 six
Original Assignee
BEIJING AIWEI ELECTRONIC TECHNOLOGY Co Ltd
No706 Institute Of No2 Research Institute China Aerospace Science & Industry Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by BEIJING AIWEI ELECTRONIC TECHNOLOGY Co Ltd, No706 Institute Of No2 Research Institute China Aerospace Science & Industry Corp filed Critical BEIJING AIWEI ELECTRONIC TECHNOLOGY Co Ltd
Priority to CN201110389239.9A priority Critical patent/CN102968422B/zh
Publication of CN102968422A publication Critical patent/CN102968422A/zh
Application granted granted Critical
Publication of CN102968422B publication Critical patent/CN102968422B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种流数据存储控制系统及其方法,该系统包括:RAID控制模块,用于将磁盘上的存储空间映射为多个RAID空间;逻辑卷管理模块,用于将多个RAID空间划分为多个逻辑卷,并提供存储接口;流数据存取接口模块,用于解析流数据及其控制命令,调用存储地址,并调用存储接口完成流数据的存取;时间索引与空间管理模块,用于为每一路流数据维护一个时间索引,并根据存储接口将时间索引定期写回到磁盘;主机接口驱动模块,用于获取流数据,并传送流数据及其控制命令;进一步地,流数据存取接口模块以时间为索引在一个具有连续物理地址空间的物理卷或逻辑卷上连续存放流数据。本发明克服了传统文件系统存储流数据效率低下的问题。

Description

流数据存储控制系统及其方法
技术领域
本发明属于计算机信息存储技术领域,具体涉及一种流数据存储控制系统及其方法。
背景技术
流数据是一组顺序、大量、快速、连续到达的数据序列,广泛出现在网络监控、传感器网络、航空航天、气象监控和金融服务等应用领域,通过对流数据研究可以进行卫星云图检测、股市走向分析、网络攻击判断等。与传统的数据业务相比,流数据具有数据实时到达,到达次序独立、不受应用系统控制,数据规模宏大且不能预知其最大值的特点,从而对存储系统的容量、性能、稳定性等方面有着特殊及严格的要求。
而现有存储系统普遍以文件方式存储和管理流数据,流数据在存储前,先经过流媒体服务器,几分钟到几十分钟的流数据转换成一个标准的流媒体文件。这种存储方式利用了传统文件系统自身的特性,系统开发比较简单,然而,由于普通文件系统不是专为流数据存储设计的,存在流数据存储效率低下的问题,主要体现在:①检索的单位是文件,粒度太大,精确度低;②文件系统使用过程中会形成大量的文件碎片,存储空间会逐渐变小,性能也会随之降低;③文件形成需要时间,在形成过程中若网络有误码、前端采集设备有故障/停电,服务器自身软件缺陷等情况出现,就会造成整段时间数据的丢失;④流媒体服务器集群能力有限,易成为整个系统的瓶颈,大量的媒体服务器不仅增加成本,管理也会变得更复杂,导致系统大规模部署困难。
因此,有必要针对流数据的特点,构造一种全新的存储结构,提高流数据的存储效率,满足高带宽流数据快速读、写、查询、删除的需求。
发明内容
本发明的目的在于提供一种流数据存储控制系统及其方法,目的在于克服传统文件系统存储流数据效率低下的问题,改变传统基于文件系统的流数据存储方式,构造一种专用于流数据的存储结构,保障高带宽流数据读、写、查询、删除操作的快速高效。
为了实现上述目的,本发明提供了一种流数据存储控制系统,其特征在于,包括:RAID控制模块、逻辑卷管理模块、流数据存取接口模块、时间索引与空间管理模块、主机接口驱动模块;
所述RAID控制模块,用于控制连接在SAS接口上的磁盘,并将所述磁盘上的存储空间映射为多个RAID空间,以使所述系统同时支持多种RAID级别;
所述逻辑卷管理模块,连接所述RAID控制模块,用于将所述多个RAID空间划分为多个逻辑卷,并提供进行流数据和时间索引存取的存储接口;
所述流数据存取接口模块,连接所述逻辑卷管理模块、所述时间索引与空间管理模块、所述主机接口驱动模块,用于解析所述主机接口驱动模块转发的流数据及其控制命令,依据控制命令,调用所述时间索引与空间管理模块获取流数据写入或读出的存储地址,并调用所述存储接口完成流数据的存取;
所述时间索引与空间管理模块,连接所述逻辑卷管理模块,用于负责磁盘空间的管理与分配,为每一路流数据维护一个时间索引,依据时间信息向所述流数据存取接口模块提供所述存储地址,并根据所述存储接口将时间索引定期写回到磁盘;
所述主机接口驱动模块,用于获取流数据,并传送流数据及其控制命令;
进一步地,所述流数据存储控制系统由所述时间索引与空间管理模块维护一时间点与该时间点对应的流数据存储地址之间的映射,由所述流数据存取接口模块依据所述存储地址,实现以时间为索引在一个具有连续物理地址空间的物理卷或所述逻辑卷上连续存放流数据。
所述的流数据存储控制系统,其中,还包括:
一存储管理模块,用于对系统运行状态进行监控,对所述RAID控制模块、所述逻辑卷管理模块、所述流数据存取接口模块、所述时间索引与空间管理模块及所述主机接口驱动模块的存储参数进行配置。
所述的流数据存储控制系统,其中,所述流数据的存储结构包括:
卷头,用于通过卷头存储物理卷或逻辑卷的全局信息,包含超级块、块位图、卷节点映射表和多个卷节点;
多个数据卷,用于通过多个数据卷存储流数据,每个数据卷对应一路流数据,不同时间区间的流数据划分为段,一路流数据包含多个段,多个段具有一段头,该段头记录段索引和描述信息,包含段索引表、段节点和时间索引表。
所述的流数据存储控制系统,其中,该超级块存储物理卷或逻辑卷的类型、卷总容量、空间分块大小、已分配出去的数据卷节点数、总数据块数和空闲数据块数;该块位图记录数据块的分配状态;该卷节点映射表实现数据卷节点的快速定位;该卷节点存储流数据标识符、分配给该数据卷的数据块、当前写入地址、流数据保存策略、流数据属性和描述信息。
所述的流数据存储控制系统,其中,该段索引表实现段节点的快速定位,段索引表的索引项与段节点一一对应,包含段开始时间和段结束时间;该段节点存储段属性和描述信息;该时间索引表存储时间、对应该时间的流数据的写入地址和写入长度,实现流数据的定位和检索。
为了实现上述目的,本发明提供了一种流数据存储控制方法,其特征在于,包括:
步骤一,控制连接在SAS接口上的磁盘,并将所述磁盘上的存储空间映射为多个RAID空间,以使流数据存储控制系统同时支持多种RAID级别,将所述多个RAID空间划分为多个逻辑卷,并提供进行流数据和时间索引存取的存储接口,为每一路流数据维护一个时间索引,依据时间信息提供流数据的存储地址;
步骤二,根据所述存储接口将时间索引定期写回到磁盘,解析流数据及其控制命令,依据控制命令,调用流数据写入或读出的存储地址,并调用所述存储接口完成流数据的存取;
维护一时间点与该时间点对应的流数据存储地址之间的映射,依据所述存储地址,实现以时间为索引在一个具有连续物理地址空间的物理卷或所述逻辑卷上连续存放流数据。
所述的流数据存储控制方法,其中,所述步骤二中,进一步包括:
将物理卷或逻辑卷划分为卷头、多个数据卷,并由卷头存储系统全局信息,包含超级块、块位图、卷节点映射表和多个卷节点;由多个数据卷存储单元存储流数据,每个数据卷对应一路流数据,不同时间区间的流数据划分为段,一路流数据包含多个段,多个段具有一段头,该段头记录段索引和描述信息,包含段索引表、段节点和时间索引表;
依据该数据卷、该段实现流数据的访问处理。
所述的流数据存储控制方法,其中,所述流数据的访问处理步骤中,包括:读流数据的步骤,具体为:
打开段;根据时间索引表查询拟读取时间区间内流数据的起始地址和结束地址;根据查询到的起始地址和结束地址读取流数据。
所述的流数据存储控制方法,其中,所述流数据的访问处理步骤中,包括:写流数据的步骤,具体为:
创建段;从卷节点中读取写入地址信息;根据写入地址信息写入流数据;向时间索引表增加一条新的索引项;修改卷节点中写入地址信息。
所述的流数据存储控制方法,其中,所述流数据的访问处理步骤中,包括:查询流数据的步骤,具体为:
打开段;获取段属性,从段节点中获取视频流数据的属性信息。
所述的流数据存储控制方法,其中,所述流数据的访问处理步骤中,包括:删除流数据的步骤,具体为:
步骤111,打开段;
步骤112,判断是否有对该段的读和写操作;
步骤113,根据拟删除流的开始时间和结束时间从时间索引表查询流数据的起始地址和结束地址;
步骤114,删除起始地址和结束地址之间的流数据;
步骤115,删除开始时间和结束时间之间的时间索引项;
步骤116,若开始时间和结束时间之间的流数据是一个整段,则删除对应的段节点和段索引项,并修改卷节点相关信息。
所述的流数据存储控制方法,其中,所述流数据的访问处理步骤中,包括:创建卷的步骤,具体为:
步骤121,判断是否存在流标识符相同的数据卷;
步骤122,修改块位图,为数据卷分配数据块;
步骤123,修改卷节点映射表,为卷分配一个未使用的卷节点;
步骤124,创建卷节点;
步骤125,修改超级块相关信息。
所述的流数据存储控制方法,其中,所述流数据的访问处理步骤中,包括:删除卷的步骤,具体为:
步骤131,判断是否有对该数据卷的读和写操作;
步骤132,修改块位图,回收分配给该数据卷的数据块;
步骤133,修改卷节点映射表,回收分配给该卷的卷节点;
步骤134,修改超级块相关信息。
所述的流数据存储控制方法,其中,所述流数据的访问处理步骤中,包括:打开段的步骤,具体为:
步骤141,判断对应的卷节点是否已读入内存,若是则转入步骤144;
步骤142,从卷节点映射表查找对应的卷节点;
步骤143,将卷节点读入内存;
步骤144,从卷节点获取对应数据卷地址;
步骤145,从段索引表中查找对应的段节点;
步骤146,将段节点读入内存。
本发明的有益技术效果是:
与传统基于文件系统的流存储方式不同,本发明在连续物理或逻辑地址空间上存储与组织流数据,流数据在存储前不需要转化为文件,杜绝了文件碎片的产生,提高了流数据的存储效率,基于时间信息索引和查询流数据,实现了流数据的精确定位和检索,适用于视频监控、传感器网络、航空航天、气象监控和金融服务等应用领域中视频、音频、图像、文本等流数据的存储,保障高带宽流数据读、写、查询、删除操作的快速高效。
附图说明
图1为本发明的流数据存储控制系统结构图;
图2为本发明的流数据的存储结构示意图;
图3为本发明的超级块存储结构示意图;
图4为本发明的录像卷节点存储结构示意图;
图5为本发明的块区间表结构示意图;
图6为本发明的录像段节点存储结构示意图;
图7为本发明的时间索引表结构示意图;
图8为本发明的读、写、查询和删除视频流业务流程图。
具体实施方式
以下结合附图和具体实施例对本发明进行详细描述,但不作为对本发明的限定。
如图1所示,是本发明的流数据存储控制系统结构图。该流数据存储控制系统100包括:RAID控制模块10、逻辑卷管理模块20、流数据存取接口模块30、时间索引与空间管理模块40、主机接口驱动模块50。
RAID控制模块10,通过SAS通道驱动程序向连接在SAS接口上的多个磁盘发送数据和状态读写命令,控制磁盘的读写和状态,通过RAID核心引擎实现RAID核心算法、缓存管理和I/O调度等功能,将这些磁盘上的存储空间映射为多个RAID空间,以使流数据存储控制系统100同时支持多种RAID级别(如0、1、5、6、10)。
不同的RAID级别实现流数据在多个磁盘上的不同分布,如RAID 0,则表示RAID控制模块10可实现流数据在多个磁盘上条带化分布,RAID 1,则表示RAID控制模块10可实现流数据在多个磁盘上镜像分布,从而实现流数据在多个磁盘上并发存取和容错分布,以提高流存储系统的读写性能和数据容错能力。
逻辑卷管理模块20,连接RAID控制模块10,将RAID控制模块10提供的RAID空间划分为若干个子空间,每个子空间称为一个逻辑卷,通过划分不同大小的逻辑卷及动态调整逻辑卷大小,实现存储空间的灵活管理,并提供存储接口以供流数据存取接口模块30和时间索引与空间管理模块40分别进行流数据和时间索引的存取;
流数据存取接口模块30,连接逻辑卷管理模块20、时间索引与空间管理模块40、主机接口驱动模块50,接收主机接口驱动模块50转发的流数据及其控制命令,依据控制命令类型,调用时间索引与空间管理模块40,获取时间索引与空间管理模块40查询时间索引得到的流数据写入或读出的存储地址,然后调用逻辑卷管理模块20提供的存储接口完成流数据的存或取;
时间索引与空间管理模块40,负责存储空间的管理与分配,并为每一路流数据维护一个时间索引,该时间索引维护时间点与该时间点对应的流数据存储地址之间的映射,从而时间索引与空间管理模块40可以依据时间信息向流数据存取接口模块30提供流数据写入或读出的存储地址,并调用逻辑卷管理模块20提供的存储接口将时间索引定期写回到磁盘,以保证系统重启后,能够恢复内存中的时间索引。
主机接口驱动模块50,获取以太网接口监听到的流数据及其控制命令,并采用标准数据传输协议,如TCP、UDP、iSCSI,或自定义传输协议对流数据及其控制命令进行解析,将解析后的流数据及其控制命令转交给流数据存取接口模块30;
进一步地,流数据存储控制系统100还包括存储管理模块60,用于对流数据存储控制系统100的运行状态进行监控,对RAID控制模块10、逻辑卷管理模块20、流数据存取接口模块30、时间索引与空间管理模块40及主机接口驱动模块50的存储参数进行配置。
进一步地,流数据存储控制系统100采用基于时间索引的流存储技术,由时间索引与空间管理模块40维护时间点与该时间点对应的流数据存储地址之间的映射,由流数据存取接口模块30依据从时间索引与空间管理模块40获取的存储地址,实现以时间为索引在一个具有连续物理地址空间的物理卷或逻辑卷管理模块20提供的逻辑卷上连续存放流数据,包含卷头和若干个数据卷,参见图2所示的本发明流数据的存储结构示意图:
(1)卷头存储系统全局信息,如存储容量、分块大小、已分配空间、未分配空间、卷索引和描述信息等,包含超级块、块位图、卷节点映射表和若干个卷节点;
A.所述的超级块记录逻辑卷类型、卷总容量、空间分块大小、已分配出去的数据卷节点数、总数据块数和空闲数据块数;
B.块位图记录数据块的分配状态,为0的位表示对应的数据块未分配,为1的位表示数据块已分配;
C.卷节点映射表实现卷节点的快速定位,每一路流数据的流标识符由Hash函数快速映射到表内相应位置;
D.卷节点存储流数据标识符、分配给该卷的数据块、当前写入地址、流数据保存策略、流数据属性和描述信息;
(2)数据卷存储流数据,每个数据卷对应一路流数据;不同时间区间的流数据划分为段,一路流数据包含若干个段;数据卷首部集中存放段头,段头记录段索引和描述信息,包含段索引表、段节点和时间索引表;
A.所述的段索引表实现段节点的快速定位,段索引表的索引项与段节点一一对应,包含段开始时间和段结束时间;
B.段节点存储段属性和描述信息;
C.时间索引表存储时间、对应该时间的流数据的写入地址和写入长度,实现流数据的精确定位和检索。
下面结合实施例给出采用本发明的流数据存储控制系统存储视频流的具体实施方式。该实施例在逻辑卷管理模块20提供的逻辑卷上存储与组织视频流,包含一个卷头和若干个录像卷(即数据卷),存储录像卷的逻辑地址空间按64GB大小分块。
卷头存放与录像卷管理和操作相关的全局信息,包括:超级块、块位图、卷节点映射表和1024个卷节点。
如图3所示,为本发明的超级块存储结构示意图。超级块记录整个逻辑卷地址空间的信息,共占用逻辑卷前128个字节,其中:
1)文件系统名字为6字节长,占用第0~5字节;
2)数据块大小为8字节长,用于指定存储录像卷的域地址空间的分块大小,占用第6~13字节;
3)总块数为4字节长,用于指定逻辑卷中用于存储录像卷的总数据块数,占用第14~17字节;
4)空闲块数为4字节长,用于指定未分配出去的数据块数,占用第18~21字节;
5)最后一次装载文件系统的时间为4字节长,占用第22~25字节;
6)超级块的最后一次写入时间为4字节长,占用第26~29字节;
7)幻数为2字节长,用来识别不同文件系统,占用第30~31字节;
8)第32~127字节保留。
块位图共占用32KB字节,块位图中每一位指定一个数据块的分配状态,0表示数据块未分配,1表示数据块已分配。
卷节点映射表共占用20KB,包含1024项,每一项20字节长,与1024个卷节点一一对应,用于快速定位录像卷节点。视频流的流标识符SID被快速映射到表内第k个位置,映射函数定义为k=Hash(SID)mod 1024,Hash(SID)值被存储在第k项内,若存在冲突项则自k项向下寻找最接近的未使用项。
如图4所示,为本发明的录像卷节点存储结构示意图,录像卷节点存储视频流的管理与配置信息,每个录像卷节点占用256字节,可管理一路视频流,1024个录像卷节点共占用256KB,最大可支持1024路视频流存储。如图4所示录像卷节点,其中:
1)摄像头标识符为50字节长,用于唯一标识一路视频流,占用第0~49字节;
2)摄像头别名为50字节长,用于概要描述摄像头的用途,占用第50~99字节;
3)块区间表为80字节长,占用第100~179字节,用于指定分配给该录像卷节点所对应录像卷使用的存储空间,表结构如图5所示,每一项占用4字节,前两个字节指定起始块号,后两个字节指定块数,共20项,最大可表示20个块区间;
4)下一次写入地址为8字节长,用于指定视频流数据下一次写入地址,占用第180~187字节;
5)当前录像段节点号为2字节长,用于指定最后一次写入的视频流数据对应的录像段节点号,占用第188~189字节;
6)时间索引表长度为4字节长,用于指定录像卷的时间索引表的字节数,占用第190~193字节;
7)下一次写入时间索引地址为8字节长,用于指定下一次写时间索引项的地址,占用第194~201字节;
8)段数据起始地址为8字节长,用于指定录像卷的首个录像段的起始地址,占用第202~209字节;
9)回转标志位为1字节长,用于指定循环写入的视频流是否覆盖了前期写入的视频流,占用第210字节;
10)录像保存天数为2字节长,用于指定视频流最短保留天数,占用第211~212字节;
11)录像覆盖策略为1字节长,用于指定是否循环写入视频流,占用第213字节,值为0表示顺序写入不覆盖,值为1表示循环覆盖写;
12)编码格式为1字节长,用于指定视频流的编码格式,占用第214字节,值为1表示H.264编码,值为2表示MJPEG编码,值为3表示MPEG4编码;
13)第215~255字节保留。
录像卷用于存储视频流数据,每个录像卷对应一路摄像头的视频流数据,摄像头不同时间区间的视频流数据被划分为若干录像段进行管理。卷首部集中存放段头,段头存储录像段的索引和描述信息,包含段索引表、1024个录像段节点和时间索引表。
段索引表包含1024项,共占用8KB空间,表内每一项8字节长,与一个录像段节点对应,记录录像段的开始和结束时间,其中前4个字节指定录像段开始时间,后4个字节指定录像段结束时间。
如图6所示,为本发明的录像段节点存储结构示意图,用于存储录像段的属性和头数据,每个录像段节点占用11KB,共1024个录像段节点,一路视频流最大允许创建1024个录像段。如图6所示录像段节点,其中:
1)帧率为4字节长,用于指定录像段每秒的帧数,占用第0~3字节;
2)宽分辨率为2字节长,用于指定录像段图像宽度方向的像素数,占用第4~5字节;
3)高分辨率为2字节长,用于指定录像段图像高度方向的像素数,占用第6~7字节;
4)描述信息长度为4字节长,用于指定录像段描述信息的字节数,占用第8~11字节;
5)头数据起始地址偏移为4字节长,用于指定录像段头数据起始地址相对录像段节点首地址的偏移,占用第12~15字节;
6)头数据大小为4字节长,用于指定头数据的字节数,占用第16~19字节;
7)第20~255字节保留;
8)描述信息为768字节长,占用第256~1023字节;
9)头数据为10KB长,占用第1024~11263字节。
如图7所示,为本发明的时间索引表结构示意图,存放某时刻视频流的写入地址和写入长度,用于实现视频流数据的精确定位和检索。时间索引表的索引粒度精确到1秒,每个索引项共占用18字节,一个月时长的时间索引表总共占用30×24×3600×18=46656000字节≈44.5MB。每个索引项包含时间、逻辑地址、长度三个字段,其中:
1)时间字段6字节长,用于指定该索引项对应视频流数据的起始时间,定义为1970年1月1日以来经过的毫秒数;
2)逻辑地址字段8字节长,用于指定该索引项对应视频流数据在逻辑卷域地址空间上的写入首地址;
3)长度字段4字节长,用于指定该索引项所代表时间区间内写入的视频流数据的字节数。
本发明的流存储系统的访问方法,包括以下步骤:
(1)创建卷的步骤,包括:
A.判断是否存在流标识符相同的卷;
B.修改块位图,为卷分配数据块;
C.修改卷节点映射表,为卷分配一个未使用的卷节点;
D.创建卷节点;
E.修改超级块相关信息。
(2)删除卷的步骤,包括:
A.判断是否有对该卷的读和写操作;
B.修改块位图,回收分配给该卷的数据块;
C.修改卷节点映射表,回收分配给该卷的卷节点;
D.修改超级块相关信息。
(3)创建段的步骤,包括:
A.在段索引表中增加一条新的索引项,为段分配一个未使用的段节点;
B.创建段节点;
C.修改卷节点相关信息。
(4)打开段的步骤,包括:
A.判断对应的卷节点是否已读入内存,若是则转入D;
B.从卷节点映射表查找对应的卷节点;
C.将卷节点读入内存;
D.从卷节点获取对应卷地址;
E.从段索引表中查找对应的段节点;
F.将段节点读入内存。
(5)写流数据的步骤,包括:
A.打开段;
B.从卷节点中读取写入地址信息;
C.根据写入地址信息,写入流数据;
D.向时间索引表增加一条新的索引项;
E.修改卷节点中写入地址信息。
(6)读流数据的步骤,包括:
A.打开段;
B.根据时间索引表查询拟读取时间区间内流数据的起始地址和结束地址;
C.根据查询到的起始地址和结束地址读取流数据。
(7)删除流数据的步骤,包括:
A.打开段;
B.判断是否有对该段的读和写操作;
C.根据拟删除流数据的开始时间和结束时间从时间索引表查询流数据的起始地址和结束地址;
D.删除起始地址和结束地址之间的流数据;
E.删除开始时间和结束时间之间的时间索引项;
F.若开始时间和结束时间之间的流数据是一个整段,则删除对应的段节点和段索引项,并修改卷节点相关信息。
(8)关闭段的步骤,包括:
A.判断是否有对该段的读和写操作;
B.若无将段节点写回设备,并回收内存。
(9)获取卷属性的步骤,包括:
A.判断卷是否已创建;
B.从卷节点映射表查找对应的卷节点;
C.访问卷节点获取卷属性。
(10)获取段属性的步骤,包括:
A.打开段;
B.访问段节点,获取段属性。
如图8所示,为采用本发明的访问方法实现的读、写、查询、删除视频流数据业务流程图,步骤如下:
步骤801,系统初始化;
步骤802,接受请求;
步骤803,判断请求的合法性,若合法,则执行读视频流数据、写视频流数据、查询视频流数据和/或删除视频流数据的操作,进入步骤804;否则执行非法请求处理,进入步骤804;
步骤804,结束请求处理。
进一步地,步骤803中,读视频流数据的步骤包括:
A.打开段,确认要读取的视频流数据是否存在,若存在进入下一步,否则返回错误码,结束操作;
B.读视频流数据;
C.获取段属性,从段节点中获取视频流数据的属性信息及视频流数据的头数据;
D.关闭段。
进一步地,步骤803中,写视频流数据的步骤包括:
A.创建段,创建成功进入下一步,否则返回错误码,结束操作;
B.写视频流数据;
C.关闭段。
进一步地,步骤803中,查询视频流数据的步骤包括:
A.打开段,确认要查询的视频流数据是否存在,若存在进入下一步,否则结束操作;
B.获取段属性,从段节点中获取视频流数据的属性信息;
C.关闭段。
进一步地,步骤803中,删除视频流数据的步骤包括:
A.打开段,确认要查询的视频流数据是否存在,若存在进入下一步,否则结束操作;
B.删除视频流数据;
C.关闭段。
本发明提供了一种视频流存储控制系统及其视频流访问方法,克服了传统文件系统存储流数据效率低下的问题。本发明在块设备上存储与组织流数据,流数据在存储前不需要转化为文件;在逻辑地址空间上按序连续存放流数据,杜绝磁盘碎片的产生;基于时间信息索引和查询流数据,实现流数据的精确定位和检索;采用开放的接入协议和SDK包,对流数据进行访问。
本发明改变了传统基于文件系统的流数据存储方式,创造性地采用了一种专用于流数据的存储结构,可用于视频监控、传感器网络、航空航天、气象监控和金融服务等应用领域中视频、音频、图像、文本等流数据的存储,保障高带宽流数据读、写、查询、删除操作的快速高效,具有广阔的应用前景。
当然,本发明还可有其它多种实施例,在不背离本发明精神及其实质的情况下,熟悉本领域的技术人员当可根据本发明做出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。

Claims (14)

1.一种流数据存储控制系统,其特征在于,包括:RAID控制模块、逻辑卷管理模块、流数据存取接口模块、时间索引与空间管理模块、主机接口驱动模块;
所述RAID控制模块,用于控制连接在SAS接口上的磁盘,并将所述磁盘上的存储空间映射为多个RAID空间,以使所述系统同时支持多种RAID级别;
所述逻辑卷管理模块,连接所述RAID控制模块,用于将所述多个RAID空间划分为多个逻辑卷,并提供进行流数据和时间索引存取的存储接口;
所述流数据存取接口模块,连接所述逻辑卷管理模块、所述时间索引与空间管理模块、所述主机接口驱动模块,用于解析所述主机接口驱动模块转发的流数据及其控制命令,依据控制命令,调用所述时间索引与空间管理模块获取流数据写入或读出的存储地址,并调用所述存储接口完成流数据的存取;
所述时间索引与空间管理模块,连接所述逻辑卷管理模块,用于负责磁盘空间的管理与分配,为每一路流数据维护一个时间索引,依据时间信息向所述流数据存取接口模块提供所述存储地址,并根据所述存储接口将时间索引定期写回到磁盘;
所述主机接口驱动模块,用于获取流数据,并传送流数据及其控制命令;
进一步地,所述流数据存储控制系统由所述时间索引与空间管理模块维护一时间点与该时间点对应的流数据存储地址之间的映射,由所述流数据存取接口模块依据所述存储地址,实现以时间为索引在一个具有连续物理地址空间的物理卷或所述逻辑卷上连续存放流数据。
2.根据权利要求1所述的流数据存储控制系统,其特征在于,还包括:
一存储管理模块,用于对系统运行状态进行监控,对所述RAID控制模块、所述逻辑卷管理模块、所述流数据存取接口模块、所述时间索引与空间管理模块及所述主机接口驱动模块的存储参数进行配置。
3.根据权利要求1或2所述的流数据存储控制系统,其特征在于,所述流数据具有一存储结构,该存储结构包括:
卷头,用于通过卷头存储物理卷或逻辑卷的全局信息,包含超级块、块位图、卷节点映射表和多个卷节点;
多个数据卷,用于通过多个数据卷存储流数据,每个数据卷对应一路流数据,不同时间区间的流数据划分为段,一路流数据包含多个段,多个段具有一段头,该段头记录段索引和描述信息,包含段索引表、段节点和时间索引表。
4.根据权利要求3所述的流数据存储控制系统,其特征在于,该超级块存储物理卷或逻辑卷的类型、卷总容量、空间分块大小、已分配出去的数据卷节点数、总数据块数和空闲数据块数;该块位图记录数据块的分配状态;该卷节点映射表实现数据卷节点的快速定位;该卷节点存储流数据标识符、分配给该数据卷的数据块、当前写入地址、流数据保存策略、流数据属性和描述信息。
5.根据权利要求3所述的流数据存储控制系统,其特征在于,该段索引表实现段节点的快速定位,段索引表的索引项与段节点一一对应,包含段开始时间和段结束时间;该段节点存储段属性和描述信息;该时间索引表存储时间、对应该时间的流数据的写入地址和写入长度,实现流数据的定位和检索。
6.一种流数据存储控制方法,其特征在于,包括:
步骤一,控制连接在SAS接口上的磁盘,并将所述磁盘上的存储空间映射为多个RAID空间,以使流数据存储控制系统同时支持多种RAID级别,将所述多个RAID空间划分为多个逻辑卷,并提供进行流数据和时间索引存取的存储接口,为每一路流数据维护一个时间索引,依据时间信息提供流数据的存储地址;
步骤二,根据所述存储接口将时间索引定期写回到磁盘,解析流数据及其控制命令,依据控制命令,调用流数据写入或读出的存储地址,并调用所述存储接口完成流数据的存取;
维护一时间点与该时间点对应的流数据存储地址之间的映射,依据所述存储地址,实现以时间为索引在一个具有连续物理地址空间的物理卷或所述逻辑卷上连续存放流数据。
7.根据权利要求6所述的流数据存储控制方法,其特征在于,所述步骤二中,进一步包括:
将物理卷或逻辑卷划分为卷头、多个数据卷,并由卷头存储系统全局信息,包含超级块、块位图、卷节点映射表和多个卷节点;由多个数据卷存储单元存储流数据,每个数据卷对应一路流数据,不同时间区间的流数据划分为段,一路流数据包含多个段,多个段具有一段头,该段头记录段索引和描述信息,包含段索引表、段节点和时间索引表;
依据该数据卷、该段实现流数据的访问处理。
8.根据权利要求7所述的流数据存储控制方法,其特征在于,所述流数据的访问处理步骤中,包括:读流数据的步骤,具体为:
打开段;根据时间索引表查询拟读取时间区间内流数据的起始地址和结束地址;根据查询到的起始地址和结束地址读取流数据。
9.根据权利要求7所述的流数据存储控制方法,其特征在于,所述流数据的访问处理步骤中,包括:写流数据的步骤,具体为:
创建段;从卷节点中读取写入地址信息;根据写入地址信息写入流数据;向时间索引表增加一条新的索引项;修改卷节点中写入地址信息。
10.根据权利要求7所述的流数据存储控制方法,其特征在于,所述流数据的访问处理步骤中,包括:查询流数据的步骤,具体为:
打开段;获取段属性,从段节点中获取视频流数据的属性信息。
11.根据权利要求7所述的流数据存储控制方法,其特征在于,所述流数据的访问处理步骤中,包括:删除流数据的步骤,具体为:
步骤111,打开段;
步骤112,判断是否有对该段的读和写操作;
步骤113,根据拟删除流的开始时间和结束时间从时间索引表查询流数据的起始地址和结束地址;
步骤114,删除起始地址和结束地址之间的流数据;
步骤115,删除开始时间和结束时间之间的时间索引项;
步骤116,若开始时间和结束时间之间的流数据是一个整段,则删除对应的段节点和段索引项,并修改卷节点相关信息。
12.根据权利要求7所述的流数据存储控制方法,其特征在于,所述流数据的访问处理步骤中,包括:创建卷的步骤,具体为:
步骤121,判断是否存在流标识符相同的数据卷;
步骤122,修改块位图,为数据卷分配数据块;
步骤123,修改卷节点映射表,为卷分配一个未使用的卷节点;
步骤124,创建卷节点;
步骤125,修改超级块相关信息。
13.根据权利要求7所述的流数据存储控制方法,其特征在于,所述流数据的访问处理步骤中,包括:删除卷的步骤,具体为:
步骤131,判断是否有对该数据卷的读和写操作;
步骤132,修改块位图,回收分配给该数据卷的数据块;
步骤133,修改卷节点映射表,回收分配给该卷的卷节点;
步骤134,修改超级块相关信息。
14.根据权利要求8-13任一所述的流数据存储控制方法,其特征在于,所述流数据的访问处理步骤中,包括:打开段的步骤,具体为:
步骤141,判断对应的卷节点是否已读入内存,若是则转入步骤144;
步骤142,从卷节点映射表查找对应的卷节点;
步骤143,将卷节点读入内存;
步骤144,从卷节点获取对应数据卷地址;
步骤145,从段索引表中查找对应的段节点;
步骤146,将段节点读入内存。
CN201110389239.9A 2011-08-31 2011-11-30 流数据存储控制系统及其方法 Active CN102968422B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201110389239.9A CN102968422B (zh) 2011-08-31 2011-11-30 流数据存储控制系统及其方法

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
CN2011102542152 2011-08-31
CN201110254215 2011-08-31
CN201110254215.2 2011-08-31
CN201110389239.9A CN102968422B (zh) 2011-08-31 2011-11-30 流数据存储控制系统及其方法

Publications (2)

Publication Number Publication Date
CN102968422A CN102968422A (zh) 2013-03-13
CN102968422B true CN102968422B (zh) 2015-06-17

Family

ID=47798568

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201110389239.9A Active CN102968422B (zh) 2011-08-31 2011-11-30 流数据存储控制系统及其方法

Country Status (1)

Country Link
CN (1) CN102968422B (zh)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104427351B (zh) * 2013-08-30 2017-11-21 北京计算机技术及应用研究所 用于视频监控的时间重叠视频流的快速定位方法及系统
CN104049690A (zh) * 2014-06-10 2014-09-17 浪潮电子信息产业股份有限公司 一种关键应用主机应对高并发业务模型的设计方法
CN105989141B (zh) * 2015-02-28 2021-02-23 中兴通讯股份有限公司 一种查找流数据的方法和查询服务器
CN105100815A (zh) * 2015-07-22 2015-11-25 电子科技大学 基于时间序列的流式数据分布式元数据管理方法
CN105100716B (zh) * 2015-07-23 2018-09-18 浙江立元通信技术股份有限公司 一种用于网络视频监控的安全存储单元及其系统
CN105389376B (zh) * 2015-11-18 2020-01-03 武汉微创光电股份有限公司 基于连续块的无碎片化多媒体数据存储方法及系统
CN106933970B (zh) * 2017-02-10 2019-11-22 福州瑞芯微电子股份有限公司 一种快速烧录数据至ext分区的方法和装置
JP6901005B2 (ja) * 2017-11-09 2021-07-14 日本電信電話株式会社 情報蓄積装置、データ処理システム、およびプログラム
WO2020014869A1 (zh) * 2018-07-17 2020-01-23 华为技术有限公司 处理i/o请求的方法及设备
CN109600600B (zh) * 2018-10-31 2020-11-03 万维科研有限公司 涉及深度图转换的编码器、编码方法以及三层表达式的存储方法和格式
CN110825061B (zh) * 2019-11-29 2023-08-11 新疆新能集团有限责任公司乌鲁木齐电力建设调试所 一种分散处理单元的流数据二维处理方法
CN111309639B (zh) * 2020-01-17 2022-03-08 深圳市风云实业有限公司 一种多通道数据弹性存储装置和方法
CN111694988B (zh) * 2020-06-09 2022-10-28 中国民用航空飞行学院 Ae300航空发动机事件记录文件解析方法及设备
CN112579361B (zh) * 2020-12-25 2024-04-02 深圳市科力锐科技有限公司 备份数据重建方法、装置、设备及存储介质
CN113655961B (zh) * 2021-08-18 2022-09-09 浩鲸云计算科技股份有限公司 基于多位编码实现逻辑卷名称唯一性和准确定位的方法
CN114911419A (zh) * 2022-05-07 2022-08-16 阿里巴巴达摩院(杭州)科技有限公司 数据存储方法、系统、存储介质以及计算机终端

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101644996A (zh) * 2009-09-25 2010-02-10 杭州华三通信技术有限公司 索引数据的存储方法和存储控制装置
CN101656094A (zh) * 2009-09-25 2010-02-24 杭州华三通信技术有限公司 数据存储方法和存储设备
CN102096698A (zh) * 2010-12-14 2011-06-15 青岛海信网络科技股份有限公司 一种视频数据存储格式、存储方法及检索方法
CN102135862A (zh) * 2011-03-10 2011-07-27 浪潮(北京)电子信息产业有限公司 一种磁盘存储系统及其数据访问方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE112006002677T5 (de) * 2005-10-07 2008-11-13 Agere Systems, Inc. Verfahren und Vorrichtung für RTP-Ausgabe-Streaming unter Verwendung von komplementären Richtungsdateien

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101644996A (zh) * 2009-09-25 2010-02-10 杭州华三通信技术有限公司 索引数据的存储方法和存储控制装置
CN101656094A (zh) * 2009-09-25 2010-02-24 杭州华三通信技术有限公司 数据存储方法和存储设备
CN102096698A (zh) * 2010-12-14 2011-06-15 青岛海信网络科技股份有限公司 一种视频数据存储格式、存储方法及检索方法
CN102135862A (zh) * 2011-03-10 2011-07-27 浪潮(北京)电子信息产业有限公司 一种磁盘存储系统及其数据访问方法

Also Published As

Publication number Publication date
CN102968422A (zh) 2013-03-13

Similar Documents

Publication Publication Date Title
CN102968422B (zh) 流数据存储控制系统及其方法
CN103092775B (zh) 一种基于键值结构的空间数据双缓存方法及机制
CN104346357B (zh) 一种嵌入式终端的文件存取方法及系统
US8909887B1 (en) Selective defragmentation based on IO hot spots
US8312217B2 (en) Methods and systems for storing data blocks of multi-streams and multi-user applications
CN103226965B (zh) 基于时间位图的音视频数据存取方法
CN107704211B (zh) 一种磁光电混合光盘库及其管理方法和管理系统
CN102663086B (zh) 一种数据块索引的检索方法
US10001942B1 (en) Asynchronous semi-inline deduplication
CN106708427A (zh) 一种适用于键值对数据的存储方法
US20060212495A1 (en) Method and system for storing data into a database
CN102096698B (zh) 一种视频数据存储格式、存储方法及检索方法
US20080126684A1 (en) Caching method for nand flash translation layer
CN103888499A (zh) 一种分布式对象处理的方法及系统
CN103399823B (zh) 业务数据的存储方法、设备和系统
CN106970765B (zh) 数据存储方法及装置
CN104881481A (zh) 一种存取海量时间序列数据的方法及装置
US20180253252A1 (en) Storage system
CN103514249A (zh) 一种数据自精简方法和系统及存储装置
CN108399050B (zh) 一种数据处理方法及装置
CN104699416A (zh) 一种数据存储系统以及一种数据存储方法
CN113626431A (zh) 一种基于lsm树的延迟垃圾回收的键值分离存储方法及系统
CN102982182A (zh) 一种数据存储规划方法及装置
CN103164528B (zh) 一种音视频数据的索引建立方法
CN105897859A (zh) 一种存储系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CP01 Change in the name or title of a patent holder
CP01 Change in the name or title of a patent holder

Address after: 100854 Building 96, West Industrial Zone, 51 Yongding Road, Haidian District, Beijing

Co-patentee after: BEIJING AEROSPACE AIWEI ELECTRONIC TECHNOLOGY CO., LTD.

Patentee after: Second Research Institute of China Aerospace Industry Group Seven 0 six

Address before: 100854 Building 96, West Industrial Zone, 51 Yongding Road, Haidian District, Beijing

Co-patentee before: Beijing Aiwei Electronic Technology Co., Ltd.

Patentee before: Second Research Institute of China Aerospace Industry Group Seven 0 six