一种基于fics对象存储的大文件数据的编辑方法与系统的制作方法

文档序号:10655068阅读:377来源:国知局
一种基于fics对象存储的大文件数据的编辑方法与系统的制作方法
【专利摘要】本发明公开了一种基于FICS对象存储的大文件数据的编辑方法与系统,其方法包括以下步骤:S1.文件存储:对待存储文件的每个数据进行保存,并为待存储文件生成文件地址;S2.文件编辑:通过对文件地址的处理实现文件编辑,包括以下四种情况:文件合并、文件分割、数据插入和数据剔除。本发明提供了一种基于FICS对象存储的大文件数据的编辑方法与系统,在存储过程中对文件的每个数据进行保存,并为文件生成文件地址,在文件编辑过程中通过对文件地址的处理实现文件合并、文件分割、数据插入和数据剔除,提高了文件编辑速度,节省了文件编辑的占用空间。
【专利说明】
一种基于FI CS对象存储的大文件数据的编辑方法与系统
技术领域
[0001]本发明涉及一种基于FICS对象存储的大文件数据的编辑方法与系统。
【背景技术】
[0002]文件存储和文件编辑是用户工作中所必不可少的一项任务,文件编辑主要包括文件合并、文件删除、数据插入和数据剔除;
目前文件合并过程,在本地文件系统及其他分布式文件系统等的管理存储上,需要将所有源文件的数据依次读出,并写入到新的文件中;目前的文件分割过程,本地文件系统及其他分布式文件系统等的管理的存储上,需要将大文件的数据内容全部依次读取出来,分别写入到小文件中,非常耗时的;如果合并或者分割的源文件是几百G大小,那么,文件的合并或分割可能会消耗几十分钟,甚至几小时;同时,也会消耗大量的存储读写带宽;并且,尽管源文件和目标文件的绝大部分数据内容是相同的,但是,实际占用的磁盘空间依然是比较大的,是所用文件数据大小之和。
[0003]目前的数据插入或者数据剔除过程,在目前的本地文件系统及其他分布式文件系统等的管理的存储上,需要将大文件编辑生成的新的数据内容全部依次覆盖写一次,数据才能保存下来;这是非常耗时,耗带宽的;例如:在一个几百M或几个G的信号数据文件中,excel或其他格式的文件,我们要插入10个字符,或者删除10个字符,在保存文件时,必须将所有的内容重新写一次,非常耗时,耗带宽。
[0004]目前文件编辑系统非常浪费时间和资源。

【发明内容】

[0005]本发明的目的在于克服现有技术的不足,提供一种基于FICS对象存储的大文件数据的编辑方法与系统,在存储过程中对文件的每个数据进行保存,并为文件生成文件地址,在文件编辑过程中通过对文件地址的处理实现文件合并、文件分割、数据插入和数据剔除,提高了文件编辑速度,节省了文件编辑的占用空间。
[0006]本发明的目的是通过以下技术方案来实现的:一种基于FICS对象存储的大文件数据的编辑方法,包括以下步骤:
51.文件存储:对待存储文件的每个数据进行保存,并为待存储文件生成文件地址;
52.文件编辑:通过对文件地址的处理实现文件编辑,包括以下四种情况:
(1)文件合并:将文件地址进行合并;
(2)文件分割:将文件地址分割成多个子文件地址,并将分割出来的子文件地址分别赋予每个子文件;
(3)数据插入:为插入的数据生成数据地址,根据数据插入的位置将生成的数据地址插入对应的文件地址中;
(4)数据剔除:将待剔除数据对应的数据地址从对应的文件地址中剔除。
[0007]所述的步骤SI包括以下子步骤: SI 1.依次输入每个待存储文件;
512.将当前待存储文件分为多个数据;
513.对每个数据进行保存;
514.为每个数据生成一个数据地址,数据地址包括数据保存位置、数据在文件中的偏移和数据的长度;
515.将当前待存储文件中每个数据地址按照数据前后顺序进行合并,生成当前待存储文件的文件地址。
[0008]步骤S2中所述的文件合并包括以下子步骤:
5201.查询所有待合并文件的文件地址;
5202.将所有文件地址按照设定顺序进行合并,生成新文件地址;
5203.将生成的新文件地址赋值给合成的目标新文件,完成文件的合并操作;
步骤S2中所述的文件分割包括以下子步骤:
5211.查询待分割文件的文件地址;
5212.将文件地址分割为多个子文件地址;
5213.将分割得到的子文件地址赋值给要生成的目标子文件。
[0009]步骤S2中所述的数据插入包括以下子步骤:
5221.给定待插入数据,将待插入数据进行保存,并为待插入数据生成相应的数据地址;
5222.给定数据插入的源文件和在源文件中插入的位置;
5223.查询源文件的文件地址,根据插入的位置将生成的数据地址插入文件地址中。
[0010]步骤S2中所述的数据剔除包括以下子步骤:
5231.给定源文件和源文件中的待剔除数据;
5232.查询源文件的文件地址和待剔除数据的数据地址;
5233.将该数据地址从源文件的文件地址中删除。
[0011 ] 一种基于FICS对象存储的大文件数据的编辑系统,包括FICS对象存储模块和文件编辑模块;
所述的FICS对象存储模块用于待存储文件的每个数据进行保存,并为该文件生成文件地址;
所述的文件编辑模块用于对文件进行地址的处理实现文件编辑,包括:
文件合并子模块,用于对于文件地址进行合并;
文件分割子模块,用于将文件地址分割为多个子文件地址;
数据插入子模块,用于将待插入数据的数据地址插入对应的文件地址中;
数据剔除子模块,用于将待剔除数据的数据地址从对应的文件地址中删除。
[0012]所述的FICS对象存储模块包括:
文件分解子模块,用于将输入的待存储文件分为多个数据;
存储数据库,用于对分解得到的每个数据进行保存;
数据地址生成子模块,用于对每个数据生成数据地址,该数据地址包括数据保存位置、数据在文件中的偏移和数据的长度;
文件地址生成子模块,用于将待存储文件中每个数据地址按照数据前后顺序进行合并,对应的文件地址。
[0013]本发明的有益效果是:在存储过程中对文件的每个数据进行保存,并为文件生成文件地址,在文件编辑过程中通过对文件地址的处理实现文件合并、文件分割、数据插入和数据剔除,提高了文件编辑速度,节省了文件编辑的占用空间。
【附图说明】
[0014]图1为本发明的方法流程图;
图2为生成文件地址的流程图;
图3为文件合并的示意图;
图4为文件分割的示意图;
图5为数据插入的原理示意图;
图6为数据剔除原理示意图;
图7为本发明的系统原理框图。
【具体实施方式】
[0015]下面结合附图进一步详细描述本发明的技术方案,但本发明的保护范围不局限于以下所述。
[0016]如图1所示,一种基于FICS对象存储的大文件数据的编辑方法,包括以下步骤:
51.文件存储:对待存储文件的每个数据进行保存,并为待存储文件生成文件地址;
52.文件编辑:通过对文件地址的处理实现文件编辑,包括以下四种情况:
(1)文件合并:将文件地址进行合并;
(2)文件分割:将文件地址分割成多个子文件地址,并将分割出来的子文件地址分别赋予每个子文件;
(3)数据插入:为插入的数据生成数据地址,根据数据插入的位置将生成的数据地址插入对应的文件地址中;
(4)数据剔除:将待剔除数据对应的数据地址从对应的文件地址中剔除。
[0017]如图2所示,所述的步骤SI包括以下子步骤:
511.依次输入每个待存储文件;
512.将当前待存储文件分为多个数据;
513.对每个数据进行保存;
514.为每个数据生成一个数据地址,数据地址包括数据保存位置、数据在文件中的偏移和数据的长度;
515.将当前待存储文件中每个数据地址按照数据前后顺序进行合并,生成当前待存储文件的文件地址。
[0018]步骤S2中所述的文件合并包括以下子步骤:
5201.查询所有待合并文件的文件地址;
5202.将所有文件地址按照设定顺序进行合并,生成新文件地址;
5203.将生成的新文件地址赋值给合成的目标新文件,完成文件的合并操作;
如图3所示,为文件合并的示意图,以两个待合成文件为例,分别为文件A和文件B;只需要将文件A和文件B的文件地址进行合成,将合成得到的文件地址赋予目标新文件C即可。
[0019]待合成文件也可以有多个,根据设定顺序依次合成文件地址即可。
[0020]步骤S2中所述的文件分割包括以下子步骤:
5211.查询待分割文件的文件地址;
5212.将文件地址分割为多个子文件地址;
5213.将分割得到的子文件地址赋值给要生成的目标子文件。
[0021 ]如图4所示,为文件分割的示意图;以将待分割文件A分割为文件D和文件E为例,只需要将文件A的文件地址按照分割要求(对应于文件中的数据的分割要求)进行分割成两个,再将分割成的两个子文件地址赋予文件D和文件E即可。
[0022]分割成多个时同理。
[0023]步骤S2中所述的数据插入包括以下子步骤:
5221.给定待插入数据,将待插入数据进行保存,并为待插入数据生成相应的数据地址;
5222.给定数据插入的源文件和在源文件中插入的位置;
5223.查询源文件的文件地址,根据插入的位置将生成的数据地址插入文件地址中。
[0024]如图5所示,首先将待插入的数据进行保存,并为待插入的数据生成数据地址N;然后给定数据插入的源文件A,以及在源文件A中插入的位置;接着查询源文件A的文件地址;将数据地址N插入到文件地址的相应位置,即可得到新文件F的文件地址,完成数据插入。
[0025]每个数据地址按照数据前后顺序进行合并);故根据在目标文件中插入的位置,将数据地址N插入文件A的文件地址即可。
[0026]步骤S2中所述的数据剔除包括以下子步骤:
5231.给定源文件和源文件中的待剔除数据;
5232.查询源文件的文件地址和待剔除数据的数据地址;
5233.将该数据地址从源文件的文件地址中删除。
[0027]如图6所示,给定源文件A和源文件A中待剔除的数据后,先查询源文件A的文件地址,再查询得到待剔除数据的数据地址,将该数据地址从源文件A的文件地址中删除,即可得到新文件G的文件地址,完成数据剔除。
[0028]在本申请中,由于文件地址由多个数据地址构成,而数据地址均包括数据保存位置、数据在文件中的偏移和数据的长度,故在已知文件地址的情况下,能够根据构成文件地址的多个数据地址读取出文件中的所有数据,在文件地址变化时,读出的文件中包含的数据也会发生变化;因此,实现编辑过程中(文件合并、文件分割、数据插入和数据剔除),直接对文件地址进行处理,就能够实现文件的编辑,从而提高了文件编辑速度,节省了文件编辑的占用空间。
[0029]如图7所示,一种基于FICS对象存储的大文件数据的编辑系统,包括FICS对象存储模块和文件编辑模块;
所述的FICS对象存储模块用于待存储文件的每个数据进行保存,并为该文件生成文件地址;
所述的文件编辑模块用于对文件进行地址的处理实现文件编辑,包括:
文件合并子模块,用于对于文件地址进行合并; 文件分割子模块,用于将文件地址分割为多个子文件地址;
数据插入子模块,用于将待插入数据的数据地址插入对应的文件地址中;
数据剔除子模块,用于将待剔除数据的数据地址从对应的文件地址中删除。
[0030]所述的FICS对象存储模块包括:
文件分解子模块,用于将输入的待存储文件分为多个数据;
存储数据库,用于对分解得到的每个数据进行保存;
数据地址生成子模块,用于对每个数据生成数据地址,该数据地址包括数据保存位置、数据在文件中的偏移和数据的长度;
文件地址生成子模块,用于将待存储文件中每个数据地址按照数据前后顺序进行合并,对应的文件地址。
【主权项】
1.一种基于FICS对象存储的大文件数据的编辑方法,其特征在于:包括以下步骤: 51.文件存储:对待存储文件的每个数据进行保存,并为待存储文件生成文件地址; 52.文件编辑:通过对文件地址的处理实现文件编辑,包括以下四种情况: (1)文件合并:将文件地址进行合并; (2)文件分割:将文件地址分割成多个子文件地址,并将分割出来的子文件地址分别赋予每个子文件; (3)数据插入:为插入的数据生成数据地址,根据数据插入的位置将生成的数据地址插入对应的文件地址中; (4)数据剔除:将待剔除数据对应的数据地址从对应的文件地址中剔除。2.根据权利要求1所述的一种基于FICS对象存储的大文件数据的编辑方法,其特征在于:所述的步骤SI包括以下子步骤: SI 1.依次输入每个待存储文件; 512.将当前待存储文件分为多个数据; 513.对每个数据进行保存; 514.为每个数据生成一个数据地址,数据地址包括数据保存位置、数据在文件中的偏移和数据的长度; 515.将当前待存储文件中每个数据地址按照数据前后顺序进行合并,生成当前待存储文件的文件地址。3.根据权利要求1所述的一种基于FICS对象存储的大文件数据的编辑方法,其特征在于:步骤S2中所述的文件合并包括以下子步骤: 5201.查询所有待合并文件的文件地址; 5202.将所有文件地址按照设定顺序进行合并,生成新文件地址; 5203.将生成的新文件地址赋值给合成的目标新文件,完成文件的合并操作。4.根据权利要求1所述的一种基于FICS对象存储的大文件数据的编辑方法,其特征在于:步骤S2中所述的文件分割包括以下子步骤: 5211.查询待分割文件的文件地址; 5212.将文件地址分割为多个子文件地址; 5213.将分割得到的子文件地址赋值给要生成的目标子文件。5.根据权利要求1所述的一种基于FICS对象存储的大文件数据的编辑方法,其特征在于:步骤S2中所述的数据插入包括以下子步骤: 5221.给定待插入数据,将待插入数据进行保存,并为待插入数据生成相应的数据地址; 5222.给定数据插入的源文件和在源文件中插入的位置; 5223.查询源文件的文件地址,根据插入的位置将生成的数据地址插入文件地址中。6.根据权利要求1所述的一种基于FICS对象存储的大文件数据的编辑方法,其特征在于:步骤S2中所述的数据剔除包括以下子步骤: 5231.给定源文件和源文件中的待剔除数据; 5232.查询源文件的文件地址和待剔除数据的数据地址; 5233.将该数据地址从源文件的文件地址中删除。7.一种基于FICS对象存储的大文件数据的编辑系统,其特征在于:包括FICS对象存储模块和文件编辑模块; 所述的FICS对象存储模块用于待存储文件的每个数据进行保存,并为该文件生成文件地址; 所述的文件编辑模块用于对文件进行地址的处理实现文件编辑,包括: 文件合并子模块,用于对于文件地址进行合并; 文件分割子模块,用于将文件地址分割为多个子文件地址; 数据插入子模块,用于将待插入数据的数据地址插入对应的文件地址中; 数据剔除子模块,用于将待剔除数据的数据地址从对应的文件地址中删除。8.—种基于FICS对象存储的大文件数据的编辑系统,其特征在于:所述的FICS对象存储模块包括: 文件分解子模块,用于将输入的待存储文件分为多个数据; 存储数据库,用于对分解得到的每个数据进行保存; 数据地址生成子模块,用于对每个数据生成数据地址,该数据地址包括数据保存位置、数据在文件中的偏移和数据的长度; 文件地址生成子模块,用于将待存储文件中每个数据地址按照数据前后顺序进行合并,对应的文件地址。
【文档编号】G06F17/30GK106021217SQ201610359980
【公开日】2016年10月12日
【申请日】2016年5月27日
【发明人】李科, 韩志宏, 刘盾
【申请人】成都索贝数码科技股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1