【技术实现步骤摘要】
一种数据管理系统
[0001]本专利技术涉及计算机
,具体涉及一种数据管理系统。
技术介绍
[0002]在一般软件运行过程中,采用内存作为程序运行时的数据中心。但在采集软件中,常遇到大量频繁的数据输入,对于内存容量要求更大,从而提升了采集软件的应用成本。
[0003]例如,在采集控制软件中,每台下位机通过网线连接交换机,交换机通过网线连接软件所在电脑。每台下位机以100hz的频率,每通道向上发送110字节长的内容。若存在两台下位机,每台下位机共有32个通道,则采集软件每秒接收到110*64*100=704000字节长的内容,约687.5KB,而每110字节长内容,又可以解析出166字节长的采集数据内容。由此可见,在采集软件运行中内存将面大量的数据输入,极大提升了硬件成本。
[0004]为了解决上述问题,当前普遍借助虚拟内存和内存映射技术用硬盘代替部分内存,降低硬件成本。然而由于硬盘的读写性能远低于内存,导致无法完全使用硬盘代替内存。
技术实现思路
[0005]针对上述存在的拘束局限性,本专利技术提出了一种数据管理系统,基于虚拟内存和内存映射技术,完全采用硬盘代替内存,作为程序运行时的数据中心。
[0006]为实现上述目的,本专利技术采用了以下技术方案:一种数据管理系统;所述系统用于借助硬盘以文件形式实现对有序数据的存储、读取、查找,代替内存作为程序运行中的数据交互中心。所述有序数据是指时间上连续的数据流。
[0007]所述系统包括输入模块、初始化模块、文件操作模块 ...
【技术保护点】
【技术特征摘要】
1.一种数据管理系统,其特征在于,所述系统包括输入模块、初始化模块、文件操作模块、读取模块、写入模块、查找模块、清空模块;所述系统按照以下方式实现数据管理功能:(1)输入模块获得本地存储路径;初始化模块进行系统初始化操作;(2)在进行数据读取、写入时,均需要借由文件操作模块进行文件操作;(3)若进行数据读取,则由读取模块从文件中循环读取文件中的数据;(4)若进行数据写入,则由写入模块将数据循环写入文件;(5)若进行数据查找,则由查找模块查找对应文件,通过二分法查找具体位置,通过顺序查找法符合条件的位置,并返回结果;(5)若需要清空数据,则由清空模块循环清空所有文件,删除文件信息。2.根据权利要求1所述的系统,其特征在于,所述初始化模块用于实现系统的初始化操作,所述初始化操作包括以下步骤:步骤11、创建uuid;步骤12、在所述本地存储路径下创建子文件夹,并将子文件夹路径作为实际数据存储路径;步骤13、初始化读写锁;步骤14、数组总数置为0。3.根据权利要求1所述的系统,其特征在于,所述文件操作模块进行文件操作包括打开文件;所述文件操作模块打开文件通过以下步骤实现:步骤211、获得文件路径、操作类型、数据结构大小、数据开始位置、数据个数;步骤212、获取系统内存粒度;步骤213、根据数据开始位置、数据结构大小、内存粒度、数据个数计算字节偏移与字节长度;步骤214、按照所述操作类型打开文件,若文件不存在则创建文件;步骤215、按照操作类型配置文件读写锁,具体包括:若操作类型为只读,则文件读写锁进行读保护;若操作类型为读写,则文件读写锁进行写保护;文件读写锁操作的数据长度为字节偏移加字节长度;步骤216、按照操作类型创建文件的文件映射对象;步骤217、将文件映射对象中的目标内容映射到进程内,得到基址;步骤218、根据基址计算数据地址,并输出所述数据地址;所述数据地址的计算方法为:;其中address为数据地址,base为基址,start为数据开始位置,datasize为数据结构大小,offset为字节偏移。4.根据权利要求3所述的系统,其特征在于,
所述字节偏移的计算方式为:;其中offset为字节偏移,start为数据开始位置,datasize为数据结构大小,granulesize为内存粒度;所述字节长度的计算方式为:;其中blength为字节长度,start为数据开始位置,datasize为数据结构大小,offset为字节偏移,datanum为数据个数。5.根据权利要求1所述的系统,其特征在于,所述读取模块按照以下步骤进行数据读取操作:步骤31、获得第一输入地址、第一输入位置及第一输入个数;步骤32、打开清空锁的读保护;步骤33、获得此时的数据总数,并获得第一目标数据结构大小及第一单文件最大数据数;步骤34、进行读取初始化,循环读取数据;步骤35、关闭清空锁的读保护,返回第一输出个数。6.根据权利要求5所述的系统,其特征在于,步骤34中,所述循环读取数据包括以下步骤:步骤3421、判断当前的文件整体位置与第一输入位置的关系以及当前的第一输出个数与第一输入个数的大小关系;若文件整体位置不小于第一输入位置或第一输出个数不小于第一输入个数,则执行步骤35;否则执行步骤3422;步骤3422、调用文件操作模块,打开当前第一文件编号对应的文件;步骤3423、若成功打开文件,则取出第一目标数据量的数据,第一文件编...
【专利技术属性】
技术研发人员:陈天,李煜,薛旭洪,盛经纬,
申请(专利权)人:北京昆迈医疗科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。