CN101419828B - 一种模拟磁带串行模式的硬盘视频记录及检索方法 - Google Patents
一种模拟磁带串行模式的硬盘视频记录及检索方法 Download PDFInfo
- Publication number
- CN101419828B CN101419828B CN2008101622745A CN200810162274A CN101419828B CN 101419828 B CN101419828 B CN 101419828B CN 2008101622745 A CN2008101622745 A CN 2008101622745A CN 200810162274 A CN200810162274 A CN 200810162274A CN 101419828 B CN101419828 B CN 101419828B
- Authority
- CN
- China
- Prior art keywords
- data
- disk
- write
- video recording
- file
- 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
Links
Landscapes
- Signal Processing For Digital Recording And Reproducing (AREA)
Abstract
本发明涉及一种模拟磁带串行模式的硬盘视频记录及检索方法,其特征是:包括磁盘轨道文件的预创建过程,录像数据缓冲串行写入过程,保证写优先的令牌管理过程和录像数据的快速检索读取过程。本发明有益的效果是:1)使用磁盘预分配模式,解决临时创建和删除文件产生的磁盘碎片问题,延长磁盘寿命。2)由于在磁盘使用过程中,不涉及创建和删除文件的操作,极大的降低了在某些极端情况下磁盘损坏的概率。3)使用数据缓冲技术,串行写技术,轨道文件技术,最大限度的减少了磁盘的操作次数和磁头的移动频率,减少磁盘发热,延长磁盘寿命。4)利用令牌技术,更加适应在视频监控应用中确保录像正常工作的要求。
Description
技术领域
本发明涉及在普通硬盘上持续纪录和管理视频文件的方法,特别是一种模拟磁带串行模式的硬盘视频记录及检索方法。
背景技术
目前视频监控已经由模拟转为数字,记录的载体也由磁带变为磁盘,在实际的应用环境中需要实时记录多路大量的音视频压缩数据流到硬盘(包括移动硬盘)上,传统的音视频文件管理方法是这样的:先格式化硬盘并创建分区,当开始录像工作时,把一个固定时间段(比如30分钟)的数据存储为一个文件。即某一路开始录像时创建一个新文件,持续将压缩后的音视频数据写入该文件,由于监控场景的不同,同样记录时间的数据文件长度一般是不同的;当磁盘被写满,如果没有另外可用的空磁盘而需要继续录像时,就必须删除本磁盘上的旧文件,并重新创建新的文件继续写入。当多路视频同时写入的时候,磁盘的并行处理方式会不停的移动磁头进行定位写入操作,这不仅会降低磁盘的写入效率,降低磁盘寿命;由于在删除文件的同时录像仍然在继续,所以将不可避免的产生磁盘碎片。传统视频录像系统需要不定期的对磁盘碎片进行整理,这对优化系统性能非常重要,但是整理磁盘碎片是一件费时费力的事情,对磁盘的寿命有着不小的副作用,而且磁盘整理工作也会对正常的录像工作产生影响。磁盘碎片过多不仅会导致系统读写文件时不停的来回寻到,从而引起系统性能下降(这是因为对磁盘的读写操作包括以下三个步骤:寻道,读写数据,数据在磁盘高速缓存和内存中传输的后处理/前处理,由于有磁头机械运动构成的寻道时间在很大程度上影响着文件的读写效率,因此磁盘读写位于磁头下放一个扇区数据所需要时间仅为将磁头移到另一磁道再读写相同数据所需时间的五分之一),严重时甚至引起在删除和建立文件过程中,系统超负荷运行,来不及记录新的音视频数据,造成录像资料丢失及磁盘寿命缩短。所以,如何提高磁盘的读写效率及解决磁盘碎片问题是视频监控领域必须解决的问题之一。
发明内容
本发明的目的正是为了克服上述技术的不足,而提供的一种模拟磁带串行模式的硬盘视频记录及检索方法,针对视频监控领域中减少磁头巡道时间,提高磁盘写效率,防止文件碎片产生,延长磁盘寿命的一种视频文件组织及管理方案。
实现本发明目的的技术方案是:这种模拟磁带串行模式的硬盘视频记录及检索方法,其特征是:包括磁盘轨道文件的预创建过程,录像数据缓冲串行写入过程,保证写优先的令牌管理过程和录像数据的快速检索读取过程;
(1)、磁盘轨道文件的预创建过程包括以下步骤:
11)、格式化磁盘并创建分区;
12)、按顺序在各分区上预先创建索引文件和n个固定大小的数据轨道文件,每个硬盘分区分为索引文件区和数据文件区2个部分,索引文件记录当前分区录像数据的起始时间和结束时间、当前轨道文件写指针位置、当前分区是否为起始分区、轨道文件中所有数据块的索引信息;数据文件名称按自然数顺序编号,使得数据文件存放在硬盘的连续扇区中,轨道文件的大小是单个数据块大小的整数倍;
(2)、录像数据缓冲串行写入过程包括以下步骤:
21)、音视频数据接受并缓冲,数据假设当前有m路音视频数据同时写入,每一路写任务分配一个同轨道数据文件中定义的数据块大小相同一个缓冲,接收到的音视频数据首先写入该缓冲中;
22)、缓冲数据满或者缓冲中剩余空间不足时,将数据缓冲推入待写入磁盘的等待队列中,等待队列的长度根据实际需要支撑的录像路数进行确定;
23)、磁盘写入工作线程按照先进先出的策略顺序将等待队列中的数据块串行写入磁盘的数据文件中,写入数据块的同时更新相关分区的索引文件信息,当所有数据文件都被写满的情况下,根据覆盖最老数据的原则从最早写入的分区开始覆盖写,在写数据的同时维护分区上录像时间的起始和结束时间信息;
(3)、保证写优先的令牌管理过程包括以下步骤:
31)、包括独立的写硬盘线程和读硬盘线程,写线程相对于读线程有更高的优先级别;
32)、唯一的一个硬盘操作令牌,写线程和读线程将对该令牌竞争,获得令牌的线程才能执行具体的硬盘操作,使得写数据是串行的,读和写的操作也是串行化。
录像数据的快速检索读取过程包括以下步骤:
1)、将所有分区的索引信息都会调入内存维护,所有分区的索引在程序启动的时候就会读入内存,在内存进行维护,并定期更新到硬盘上;
2)、按时间检索时,按要求的检索时间和每个分区的录像开始和结束时间进行比较,只对两个时间段有重叠的分区进行进一步的检索操作。
在格式化磁盘并创建分区步骤中,根据存储时间要求选择配备硬盘,根据硬盘容量,把每个硬盘分成若干个分区。
所述数据块的索引信息包括该数据块所在文件信息、数据开始位置、数据块大小和有效数据块大小。
数据文件中定义的单个数据块的大小定义为2MB,或是2MB的整数倍。
优先级别的提高是通过提高写线程在获得令牌时的操作时长。
本发明有益的效果是:1)使用磁盘预分配模式(预先创建文件并实际写入固定大小的数据-比如128M),解决临时创建和删除文件产生的磁盘碎片问题,延长磁盘寿命。2)由于在磁盘使用过程中,不涉及创建和删除文件的操作,极大的降低了在某些极端情况下(比如震动和突然断电等)磁盘损坏的概率。3)使用数据缓冲技术,串行写技术,轨道文件技术,在视频监控这样的应用场合中,最大限度的减少了磁盘的操作次数和磁头的移动频率,减少磁盘发热,延长磁盘寿命。4)利用令牌技术,提升了磁盘写的优先等级(相对与读操作),更加适应在视频监控应用中确保录像正常工作的要求。
附图说明
图1是本发明的磁盘文件管理及轨道模拟图;
图2是本发明的录像数据缓冲串行写入过程示意图;
图3是本发明的令牌竞争策略图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明,但本发明的内容并不局限于此。
本发明所述的这种模拟磁带串行模式的硬盘视频记录及检索方法,其特征是:包括磁盘轨道文件的预创建过程,录像数据缓冲串行写入过程,保证写优先的令牌管理过程和录像数据的快速检索读取过程;
组成技术方案的磁盘轨道文件的预创建过程包括以下步骤:
11)格式化磁盘并创建分区。根据存储时间要求选择配备硬盘,根据硬盘容量,把每个硬盘分成若干个分区。
12)按顺序在各分区上预先创建索引文件和n个固定大小的数据轨道文件。每个硬盘分区分为索引文件区和数据文件区2个部分。索引文件记录当前分区录像数据的起始时间和结束时间,当前轨道文件写指针位置,当前分区是否为起始分区,轨道文件中所有数据块的索引信息(包括该数据块所在文件信息,数据开始位置,数据块大小,有效数据块大小)。数据文件名称按自然数顺序编号(track001,trace002….),由于是连续创建数据文件,所以可以保证数据文件存放在硬盘的连续扇区中。数据文件中定义的单个数据块的大小一般定义为2MB,或是2MB的整数倍,轨道文件的大小必须是单个数据块大小的整数倍。
组成技术方案的录像数据缓冲串行写入过程包括以下步骤:
21)音视频数据接受并缓冲。数据假设当前有m路音视频数据同时写入,每一路写任务分配一个同轨道数据文件中定义的数据块大小相同一个缓冲,接收到得音视频数据首先写入该缓冲中;
22)缓冲数据满或者缓冲中剩余空间不足时,将数据缓冲推入待写入磁盘的等待队列中。等待队列的长度可以根据软件实际需要支撑的录像路数进行确定,一般取值为录像路数的2倍;
23)磁盘写入工作线程按照先进先出的策略顺序将等待队列中的数据块串行写入磁盘的数据文件中。写入数据块的同时更新相关分区的索引文件信息,当所有数据文件都被写满的情况下,根据覆盖最老数据的原则从最早写入的分区开始覆盖写。在写数据的同时维护分区上录像时间的起始和结束时间信息。
组成技术方案的保证写优先的令牌管理过程包括以下步骤:
31)方案包括独立的写硬盘线程和读硬盘线程;
32)方案包括唯一的一个硬盘操作令牌。写线程和读线程将对该令牌竞争,获得令牌的线程才能执行具体的硬盘操作,这样以来,不仅写数据是串行的,读和写的操作也被串行化;
33)方案赋予写线程更高的优先级别(相对于读线程)。优先级别的提高是通过提高写线程在获得令牌时的操作时长来体现的,比如说:如果写线程获得令牌,写线程可以最多处理完24个数据块才返回令牌。而读线程在获得令牌时,最多只能读取2个数据块就必须返回令牌。这样处理的好处是:能够保证不会因为大量的读操作而出现来不及写数据的情况出现;
组成技术方案的录像数据的快速检索读取过程包括以下步骤:
41)方案将所有分区的索引信息都会调入内存维护。方案设计中,所有分区的索引在程序启动的时候就会读入内存,在内存进行维护,并定期更新到硬盘上。这样可以减少硬盘的操作频率,而且检索的效率会提高;
42)按时间检索时,方案会按要求的检索时间和个分区的录像开始和结束时间进行比较,只对两个时间段有重叠的分区进行进一步的检索操作。
当然,本发明还可以有其他多种实施例,在不背离本发明精神及实质的情况下,熟悉本领域的技术人员当可根据本发明做出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。
Claims (5)
1.一种模拟磁带串行模式的硬盘视频记录及检索方法,其特征是:包括数据轨道文件的预创建过程,录像数据缓冲串行写入过程,保证写优先的令牌管理过程和录像数据的快速检索读取过程;
(1)、数据轨道文件的预创建过程包括以下步骤:
11)、格式化磁盘并创建分区;
12)、按顺序在各分区上预先创建索引文件和n个固定大小的数据轨道文件,每个硬盘分区分为索引文件区和数据轨道文件区2个部分,索引文件记录当前分区录像数据的起始时间和结束时间、当前数据轨道文件写指针位置、当前分区是否为起始分区、数据轨道文件中所有数据块的索引信息;数据轨道文件名称按自然数顺序编号,使得数据轨道文件存放在硬盘的连续扇区中,数据轨道文件的大小是单个数据块大小的整数倍;
(2)、录像数据缓冲串行写入过程包括以下步骤:
21)、接受音视频数据并写入缓冲,假设当前有m路音视频数据同时写入,每一路写任务分配一个和数据轨道文件中定义的数据块大小相同一个缓冲,接收到的音视频数据首先写入该缓冲中;
22)、缓冲数据满或者缓冲中剩余空间不足时,将数据缓冲推入待写入磁盘的等待队列中,等待队列的长度根据实际需要的录像路数进行确定;
23)、磁盘写入工作线程按照先进先出的策略顺序将等待队列中的数据块串行写入磁盘的数据轨道文件中,写入数据块的同时更新相关分区的索引文件信息,当所有数据轨道文件都被写满的情况下,根据覆盖最老数据的原则从最早写入的分区开始覆盖写,在写数据的同时维护分区上录像时间的起始和结束时间信息;
(3)、保证写优先的令牌管理过程包括以下步骤:
31)、设定独立的写硬盘线程和读硬盘线程,写线程相对于读线程有更高的优先级别;
32)、设定一个硬盘操作令牌,写线程和读线程将对该令牌竞争,获得令牌的线程才能执行具体的硬盘操作,使得写数据是串行的,读和写的操作也是串行化;
(4)、录像数据的快速检索读取过程包括以下步骤:
41)、将所有分区的索引信息都调入内存维护,所有分区的索引在程序启动的时候就会读入内存,在内存进行维护,并定期更新到硬盘上;
42)、按时间检索时,按要求的检索时间和每个分区的录像开始和结束时间进行比较,只对两个时间段有重叠的分区进行进一步的检索操作。
2.根据权利要求1所述的模拟磁带串行模式的硬盘视频记录及检索方法,其特征在于:在格式化磁盘并创建分区步骤中,根据存储时间要求选择配备硬盘,根据硬盘容量,把每个硬盘分成若干个分区。
3.根据权利要求1所述的模拟磁带串行模式的硬盘视频记录及检索方法,其特征在于:所述数据块的索引信息包括该数据块所在文件信息、数据开始位置、数据块大小和有效数据块大小。
4.根据权利要求1所述的模拟磁带串行模式的硬盘视频记录及检索方法,其特征在于:数据轨道文件中定义的单个数据块的大小定义为2MB的整数倍。
5.根据权利要求1所述的模拟磁带串行模式的硬盘视频记录及检索方法,其特征在于:优先级别的提高是通过提高写线程在获得令牌时的操作时长。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2008101622745A CN101419828B (zh) | 2008-11-20 | 2008-11-20 | 一种模拟磁带串行模式的硬盘视频记录及检索方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2008101622745A CN101419828B (zh) | 2008-11-20 | 2008-11-20 | 一种模拟磁带串行模式的硬盘视频记录及检索方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101419828A CN101419828A (zh) | 2009-04-29 |
CN101419828B true CN101419828B (zh) | 2011-02-09 |
Family
ID=40630581
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2008101622745A Active CN101419828B (zh) | 2008-11-20 | 2008-11-20 | 一种模拟磁带串行模式的硬盘视频记录及检索方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101419828B (zh) |
Families Citing this family (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101593125B (zh) * | 2009-07-02 | 2012-03-14 | 上海交通大学 | 使用监控线程对二进制翻译程序执行流程动态监控的方法 |
CN101872639B (zh) * | 2010-01-11 | 2013-02-13 | 杭州海康威视数字技术股份有限公司 | 在数字硬盘录像机上存储及检索图片数据的方法及装置 |
CN101853306A (zh) * | 2010-06-11 | 2010-10-06 | 深圳市黄河数字技术有限公司 | 硬盘存储的读写方法 |
CN102541869B (zh) * | 2010-12-07 | 2016-08-10 | 腾讯科技(深圳)有限公司 | 写入文件的方法和装置 |
CN102331953B (zh) * | 2011-09-28 | 2013-06-12 | 奇智软件(北京)有限公司 | 一种磁盘分区故障修复方法及装置 |
CN102662609B (zh) * | 2012-04-16 | 2016-03-30 | 华为软件技术有限公司 | 视频访问的方法及装置 |
CN102932622B (zh) * | 2012-11-08 | 2015-08-05 | 珠海全志科技股份有限公司 | 数字录像设备的录像方法及装置 |
CN103024360A (zh) * | 2012-12-28 | 2013-04-03 | 河南辉煌科技股份有限公司 | 一种模拟多路视频编码器输入视频监控系统的方法 |
CN103745007A (zh) * | 2014-01-24 | 2014-04-23 | 深圳市华宝电子科技有限公司 | 一种文件管理方法及装置 |
CN104811646B (zh) * | 2015-05-15 | 2018-07-24 | 电子科技大学 | 基于连续存储模型的多视频流数据并发调制及缓冲的存储方法 |
CN105306865B (zh) * | 2015-10-29 | 2019-05-17 | 四川奇迹云科技有限公司 | 一种视频监控数据系统 |
CN105700824B (zh) * | 2015-12-29 | 2018-12-07 | 浪潮(北京)电子信息产业有限公司 | 一种存储系统机械硬盘的读操作请求处理方法及系统 |
CN105892938A (zh) * | 2016-03-28 | 2016-08-24 | 乐视控股(北京)有限公司 | 一种磁盘缓存系统的优化方法及系统 |
CN107341154A (zh) * | 2016-04-29 | 2017-11-10 | 北京京东尚科信息技术有限公司 | 一种数据导出的方法和装置 |
CN107122133B (zh) * | 2017-04-24 | 2020-08-07 | 珠海全志科技股份有限公司 | 数据存储方法及装置 |
CN108491161B (zh) * | 2018-03-13 | 2020-12-29 | 深圳市图敏智能视频股份有限公司 | 一种高效多通道预分配磁盘录像方法 |
CN110515535B (zh) * | 2018-05-22 | 2021-01-01 | 杭州海康威视数字技术股份有限公司 | 硬盘读写控制方法、装置、电子设备及存储介质 |
CN108763531B (zh) * | 2018-05-31 | 2021-08-27 | 深圳市易甲文技术有限公司 | 一种mdvr文件存储系统及其运行方法 |
CN110737389B (zh) * | 2018-07-19 | 2023-05-16 | 杭州海康威视系统技术有限公司 | 存储数据的方法和装置 |
CN113259689A (zh) * | 2021-05-10 | 2021-08-13 | 杭州叙简科技股份有限公司 | 一种分布式视频存储方法、装置及电子设备 |
-
2008
- 2008-11-20 CN CN2008101622745A patent/CN101419828B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN101419828A (zh) | 2009-04-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101419828B (zh) | 一种模拟磁带串行模式的硬盘视频记录及检索方法 | |
CN100578470C (zh) | 基于裸设备的音视频数据存取方法和装置 | |
CN100362492C (zh) | 一种防止文件碎片产生的数字硬盘录像机文件管理方法 | |
US8510504B2 (en) | SMR storage device with user controls and access to status information and parameter settings | |
US8327076B2 (en) | Systems and methods of tiered caching | |
CN102136290A (zh) | 一种嵌入式实时视频文件存储方法 | |
US20010047451A1 (en) | Method and apparatus for disc drive defragmentation | |
CN107526689B (zh) | 读高速缓存管理 | |
CN102902709B (zh) | 一种固定空间分配的文件存储系统及实现方法 | |
CA2469402A1 (en) | Disk driver cluster management of time shift buffer with file allocation table structure | |
US20150062736A1 (en) | Cache data management for program execution | |
CN103985393B (zh) | 一种多光盘数据并行管理方法及装置 | |
CN100454426C (zh) | 记录装置 | |
CN103226965A (zh) | 基于时间位图的音视频数据存取方法 | |
CN100383881C (zh) | 一种嵌入式设备中硬盘关键信息区的保护方法 | |
CN103123645A (zh) | 一种降低磁盘碎片的方法 | |
US7984313B2 (en) | Method, apparatus and system for reducing power consumption involving data storage devices | |
CN100580669C (zh) | 在Flash存储介质上的关于文件分配表的缓存实现方法 | |
JP4502375B2 (ja) | ファイルシステムおよびその制御方法 | |
CN100543748C (zh) | 一种利用文件分配表进行文件寻道的方法及系统 | |
US20070223875A1 (en) | Storage device and method of accessing storage device | |
JP2004517399A (ja) | フラグメンテーションを減少させるための方法及びシステム | |
US8296512B2 (en) | Recording method for a disk device having recording regions different in recording density | |
CN111427513B (zh) | 一种提高高速信号采集系统存储性能的方法 | |
JP4079244B2 (ja) | 追記型記憶媒体ボリュームの再編成処理方法 |
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 |