一种海量数据的实时存储系统和方法

文档序号:8905069阅读:337来源:国知局
一种海量数据的实时存储系统和方法
【技术领域】
[0001]本发明属于数据通信和数据存储的技术领域,具体涉及到一种海量数据的实时存储系统,以及采用该实时存储系统的方法。
【背景技术】
[0002]传统的文件系统(windows平台的FAT32、NTFS,Iinux的EXT2)适用于计算机日常数据量较小情况下的数据存储、查询与交换等需求;针对海量数据的实时存储(数据量为lGB/s),嵌入式解决方案中的ARM/DSP采用传统文件系统无法满足海量数据的实时处理要求。
[0003]嵌入式解决方案中海量数据实时存储有两点瓶颈:第一,ARM/DSP针对海量数据的实时处理,系统中断请求已经成为限制CPU的短板,目前ARM/DSP没有intel CPU高主频特性来响应底层设备的频繁中断;第二,传统文件系统存储的文件越多,会对文件系统的扇区管理带来越大负担,会出现存储文件越多存储速度越慢的现象。

【发明内容】

[0004]本发明的技术解决问题是:克服现有技术的不足,提供一种海量数据的实时存储系统,其存储速率快、存储速率稳定、文件管理简单。
[0005]本发明的技术解决方案是:这种海量数据的实时存储系统,其包括基于现场可编程门阵列FPGA、固态硬盘SSD、系统时间模块RTC、内存颗粒DDR ;FPGA通过对外数据接收端口来接收4路低压差分信号LVDS,通过4路高速串行总线接口 SATA将输入数据存储至SSD硬盘,FPGA通过DDR接口与DDR连接;系统上电之初获取磁盘中的文件系统信息,将文件系统信息存储于DDR中,FPGA进行海量数据记录时实时更新DDR中的文件系统信息镜像,FPGA通过串行低速通信总线IIC与RTC连接而将DDR中存储的文件系统信息镜像刷新到磁盘文件系统信息所在的空间中。
[0006]还提供了采用这种海量数据的实时存储系统的方法,包括以下步骤:
[0007](I)系统上电;
[0008](2)系统初始化;
[0009](3)获取磁盘中的文件系统信息;
[0010](4)将文件系统信息存储于DDR中;
[0011](5)开始存储数据文件;
[0012](6)更新文件系统信息至DDR;
[0013](7)当前数据文件存储完成;
[0014](8)判断文件系统镜像更新是否完成,如果是则执行步骤(10),如果不是并且镜像刷新使能开启则执行步骤(9),如果不是并且镜像刷新使能关闭则执行步骤(5);
[0015](9)输入数据存储至DDR ;
[0016](10)更新文件系统信息至SSD ;
[0017](11)判断存储使能是否开启,是则执行步骤(5),否则执行步骤(12);
[0018](12)结束。
[0019]本发明通过基于FPGA实现的文件系统和SSD来满足海量数据实时存储的需求,避免了文件记录过程中由于频繁刷新文件系统信息表导致的SATA2.0通道带宽下降,避免了由于频繁刷新文件系统扇区位置导致磁盘使用寿命的快速耗损,FPGA通过对硬盘扇区的DMA读写操作大幅度提高了硬盘数据的读写速度,通过提高磁盘文件写入和读取速率能够满足用户海量数据记录和导出的需求,本发明的文件系统与通用文件系统不兼容,能够对存储在硬盘中的数据内容起到保护的作用,数据不会被通用操作系统所获取,从而起到了数据保护的功能,通过文件系统分区信息双备份的特性,能够达到损坏分区信息的自动恢复功能,因此存储速率快、存储速率稳定、文件管理简单。
【附图说明】
[0020]图1为根据本发明的文件系统分区示意图;
[0021]图2为根据本发明的海量数据的实时存储系统的结构示意图;
[0022]图3为根据本发明的文件系统功能模块划分示意图;
[0023]图4为根据本发明的文件系统模块逻辑连接示意图;
[0024]图5为根据本发明的海量数据的实时存储方法的流程图。
【具体实施方式】
[0025]如图2所示,这种海量数据的实时存储系统,其包括基于现场可编程门阵列FPGA、固态硬盘SSD、系统时间模块RTC、内存颗粒DDR ;FPGA通过对外数据接收端口来接收4路低压差分信号LVDS,通过4路高速串行总线接口 SATA将输入数据存储至SSD硬盘,FPGA通过DDR接口与DDR连接;系统上电之初获取磁盘中的文件系统信息,将文件系统信息存储于DDR中,FPGA进行海量数据记录时实时更新DDR中的文件系统信息镜像,FPGA通过串行低速通信总线Iic与RTC连接而将DDR中存储的文件系统信息镜像刷新到磁盘文件系统信息所在的空间中。
[0026]优选地,如图3-4所示,所述文件系统包括文件系统主控模块、上电文件系统自检模块、文件系统初始化模块、写文件模块、读文件模块、文件系统定时刷新模块,文件系统主控模块分别连接上电文件系统自检模块、文件系统初始化模块、写文件模块、读文件模块、文件系统定时刷新模块、寄存器,上电文件系统自检模块、文件系统初始化模块、写文件模块、读文件模块、文件系统定时刷新模块分别通过交互矩阵模块与DDR接口、SATA通信。
[0027]优选地,IIC获取时间的指令延时在10ms级别。
[0028]优选地,SATA的带宽大于200MB/S。
[0029]优选地,RTC更新时间长度以分钟为单位。
[0030]还提供了采用这种海量数据的实时存储系统的方法,包括以下步骤:
[0031](I)系统上电;
[0032](2)系统初始化;
[0033](3)获取磁盘中的文件系统信息;
[0034](4)将文件系统信息存储于DDR中;
[0035](5)开始存储数据文件;
[0036](6)更新文件系统信息至DDR;
[0037](7)当前数据文件存储完成;
[0038](8)判断文件系统镜像更新是否完成,如果是则执行步骤(10),如果不是并且镜像刷新使能开启则执行步骤(9),如果不是并且镜像刷新使能关闭则执行步骤(5);
[0039](9)输入数据存储至DDR ;
[0040](10)更新文件系统信息至SSD ;
[0041](11)判断存储使能是否开启,是则执行步骤(5),否则执行步骤(12);
[0042](12)结束。
[0043]本发明通过基于FPGA实现的文件系统和SSD来满足海量数据实时存储的需求,避免了文件记录过程中由于频繁刷新文件系统信息表导致的SATA2.0通道带宽下降,避免了由于频繁刷新文件系统扇区位置导致磁盘使用寿命的快速耗损,FPGA通过对硬盘扇区的DMA读写操作大幅度提高了硬盘数据的读写速度,通过提高磁盘文件写入和读取速率能够满足用户海量数据记录和导出的需求,本发明的文件系统与通用文件系统不兼容,能够对存储在硬盘中的数据内容起到保护的作用,数据不会被通用操作系统所获取,从而起到了数据保护的功能,通过文件系统分区信息双备份的特性,能够达到损坏分区信息的自动恢复功能,因此存储速率快、存储速率稳定、文件管理简单。
[0044]以下结合附图和具体的实施例对本发明作进一步的详细说明。
[0045]为简洁描述本发明的文件系统,以后用FAST (File Access Speed Table)作为其简称,图1是本发明文件系统分区示意图。
[0046]文件分析表由文件系统版本信息及文件描述符两部分所组成;文件分区表采用自定义的格式实现文件的存储及查询工作;
[0047]图2为海量数据记录设备系统框图,系统上电之初需要获取磁盘中的FAST系统信息,将FAST系统信息存
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1