CN106021536A - 一种基于fics对象存储的数据插入方法与系统 - Google Patents
一种基于fics对象存储的数据插入方法与系统 Download PDFInfo
- Publication number
- CN106021536A CN106021536A CN201610359978.6A CN201610359978A CN106021536A CN 106021536 A CN106021536 A CN 106021536A CN 201610359978 A CN201610359978 A CN 201610359978A CN 106021536 A CN106021536 A CN 106021536A
- Authority
- CN
- China
- Prior art keywords
- data
- file
- address
- storage
- fics
- 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.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/13—File access structures, e.g. distributed indices
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种基于FICS对象存储的数据插入方法与系统,其方法包括以下步骤:S1.文件存储:对待存储文件的每个数据进行保存,并为待存储文件生成文件地址;S2.数据插入:将插入的数据进行保存,并为插入的数据生成数据地址,根据数据插入的位置将生成的数据地址插入对应的文件地址中。本发明在存储过程中对文件的每个数据进行保存,并为文件生成文件地址;在数据插入过程中将插入的数据进行保存,并为插入的数据生成数据地址,根据数据插入的位置将生成的数据地址插入对应的文件地址中,不再需要将文件中的全部内容依次覆盖写一次;提高了数据插入的速度,节省了数据插入所占用的读写带宽。
Description
技术领域
本发明涉及一种基于FICS对象存储的数据插入方法与系统。
背景技术
数据插入,即向文件中插入数据,在目前的本地文件系统及其他分布式文件系统等的管理的存储上,需要将文件中的数据内容全部依次覆盖写一次,在写的过程中加入新的数据,数据才能保存下来;这是非常耗时,耗带宽的;例如:在一个几百M或几个G的信号数据文件中,比如excel或其他格式的文件,我们要插入10个字符,在保存文件时,必须将所有的内容重新写一次,非常耗时(可能要几分钟,甚至几十分钟)、耗带宽。
发明内容
本发明的目的在于克服现有技术的不足,提供一种基于FICS对象存储的数据插入方法与系统,在存储过程中对文件的每个数据进行保存,并为文件生成文件地址;在数据插入过程中将插入的数据进行保存,并为插入的数据生成数据地址,根据数据插入的位置将生成的数据地址插入对应的文件地址中,不再需要将文件中的全部内容依次覆盖写一次;提高了数据插入的速度,节省了数据插入所占用的读写带宽。
本发明的目的是通过以下技术方案来实现的:一种基于FICS对象存储的数据插入方法,其特征在于:包括以下步骤:
S1.文件存储:对待存储文件的每个数据进行保存,并为待存储文件生成文件地址;
S2.数据插入:将插入的数据进行保存,并为插入的数据生成数据地址,根据数据插入的位置将生成的数据地址插入对应的文件地址中。
所述的步骤S1包括以下子步骤:
S11.依次输入每个待存储文件;
S12.将当前待存储文件分为多个数据;
S13.对每个数据进行保存;
S14.为每个数据生成一个数据地址,数据地址包括数据保存位置、数据在文件中的偏移和数据的长度;
S15.将当前待存储文件中每个数据地址按照数据前后顺序进行合并,生成当前待存储文件的文件地址。
所述的步骤S2包括以下子步骤:
S21.给定待插入数据,将待插入数据进行保存,并为待插入数据生成相应的数据地址;
S22.给定数据插入的源文件和在源文件中插入的位置;
S23.查询源文件的文件地址;
S24.根据插入的位置将生成的数据地址插入文件地址中。
所述的源文件为通过步骤S1进行存储的文件。
所述的步骤S24包括以下子步骤:
S241.根据给定数据在源文件中的插入位置将数据地址的插入分为三种情况:
(1)如果插入位置在源文件的首端,直接将生成的数据地址合并到文件地址首端;
(2)如果插入位置在源文件的末端,直接将生成的数据地址合并到文件地址末端;
(3)如果插入位置在源文件的中部,跳转至步骤S242;
S242.根据插入位置将源文件的文件地址分为两段,将生成的数据地址插入两段文件地址之间,再进行合并。
一种基于FICS对象存储的数据插入系统,包括:
FICS对象存储模块,用于待存储文件的每个数据进行保存,并为待存储文件生成文件地址;
数据插入模块,用于将插入的数据进行保存,并为插入的数据生成数据地址,根据数据插入的位置将生成的数据地址插入对应的文件地址中。
所述的FICS对象存储模块包括:
文件分解子模块,用于将输入的待存储文件分为多个数据;
存储数据库,用于对分解得到的每个数据进行保存;
数据地址生成子模块,用于对每个数据生成数据地址,该数据地址包括数据保存位置、数据在文件中的偏移和数据的长度;
文件地址生成子模块,用于将待存储文件中每个数据地址按照数据前后顺序进行合并,对应的文件地址。
所述的数据插入模块包括:
数据输入子模块,用于输入待插入数据,对待插入数据进行保存,并为待插入数据生成相应的数据地址;
文件设定子模块,用于设定给定数据插入的源文件;
插入设定子模块,用于设定数据在源文件中插入的位置;
地址查询子模块,用于查询源文件的文件地址;
地址插入子模块,用于将生成的数据地址插入到源文件的文件地址中。
本发明的有益效果是:在存储过程中对文件的每个数据进行保存,并为文件生成文件地址;在数据插入过程中将插入的数据进行保存,并为插入的数据生成数据地址,根据数据插入的位置将生成的数据地址插入对应的文件地址中,不再需要将文件中的全部内容依次覆盖写一次;提高了数据插入的速度,节省了数据插入所占用的读写带宽。
附图说明
图1为本发明的方法流程图;
图2为生成文件地址的流程图;
图3为数据插入流程图;
图4为数据插入过程示意图;
图5为本发明的系统原理框图。
具体实施方式
下面结合附图进一步详细描述本发明的技术方案,但本发明的保护范围不局限于以下所述。
如图1所示,一种基于FICS对象存储的数据插入方法,其特征在于:包括以下步骤:
S1.文件存储:对待存储文件的每个数据进行保存,并为待存储文件生成文件地址;
S2.数据插入:将插入的数据进行保存,并为插入的数据生成数据地址,根据数据插入的位置将生成的数据地址插入对应的文件地址中。
如图2所示,所述的步骤S1包括以下子步骤:
S11.依次输入每个待存储文件;
S12.将当前待存储文件分为多个数据;
S13.对每个数据进行保存;
S14.为每个数据生成一个数据地址,数据地址包括数据保存位置、数据在文件中的偏移和数据的长度;
S15.将当前待存储文件中每个数据地址按照数据前后顺序进行合并,生成当前待存储文件的文件地址。
如图3所示,所述的步骤S2包括以下子步骤:
S21.给定待插入数据,将待插入数据进行保存,并为待插入数据生成相应的数据地址;
S22.给定数据插入的源文件和在源文件中插入的位置;
S23.查询源文件的文件地址;
S24.根据插入的位置将生成的数据地址插入文件地址中。
所述的源文件为通过步骤S1进行存储的文件。
所述的步骤S24包括以下子步骤:
S241.根据给定数据在源文件中的插入位置将数据地址的插入分为三种情况:
(1)如果插入位置在源文件的首端,直接将生成的数据地址合并到文件地址首端;
(2)如果插入位置在源文件的末端,直接将生成的数据地址合并到文件地址末端;
(3)如果插入位置在源文件的中部,跳转至步骤S242;
S242.根据插入位置将源文件的文件地址分为两段,将生成的数据地址插入两段文件地址之间,再进行合并。
如图4所示,以数据插入位置在源文件中部为例,将待插入的数据进行保存,并为待插入的数据生成数据地址N;查询到源文件A的文件地址后根据具体的插入位置将其分为两段,将生成的数据地址N插入两段文件地址之间,再进行合并,皆可得到数据插入生成的文件F所对应的文件地址。
在本申请中,由于文件地址由多个数据地址构成,而数据地址均包括数据保存位置、数据在文件中的偏移和数据的长度,故在已知文件地址的情况下,能够根据构成文件地址的多个数据地址读取出文件中的所有数据,在文件地址变化时,读出的文件中包含的数据也会发生变化;因此,实现数据插入过程中,直接对文件地址进行插入处理,就能够实现文件的数据插入,从而提高了数据插入的速度,节省了数据插入的占用的读写带宽。
一种基于FICS对象存储的数据插入系统,包括:
FICS对象存储模块,用于待存储文件的每个数据进行保存,并为待存储文件生成文件地址;
数据插入模块,用于将插入的数据进行保存,并为插入的数据生成数据地址,根据数据插入的位置将生成的数据地址插入对应的文件地址中。
所述的FICS对象存储模块包括:
文件分解子模块,用于将输入的待存储文件分为多个数据;
存储数据库,用于对分解得到的每个数据进行保存;
数据地址生成子模块,用于对每个数据生成数据地址,该数据地址包括数据保存位置、数据在文件中的偏移和数据的长度;
文件地址生成子模块,用于将待存储文件中每个数据地址按照数据前后顺序进行合并,对应的文件地址。
所述的数据插入模块包括:
数据输入子模块,用于输入待插入数据,对待插入数据进行保存,并为待插入数据生成相应的数据地址;
文件设定子模块,用于设定给定数据插入的源文件;
插入设定子模块,用于设定数据在源文件中插入的位置;
地址查询子模块,用于查询源文件的文件地址;
地址插入子模块,用于将生成的数据地址插入到源文件的文件地址中。
Claims (8)
1.一种基于FICS对象存储的数据插入方法,其特征在于:包括以下步骤:
S1.文件存储:对待存储文件的每个数据进行保存,并为待存储文件生成文件地址;
S2.数据插入:将插入的数据进行保存,并为插入的数据生成数据地址,根据数据插入的位置将生成的数据地址插入对应的文件地址中。
2.根据权利要求1所述的一种基于FICS对象存储的数据插入方法,其特征在于:所述的步骤S1包括以下子步骤:
S11.依次输入每个待存储文件;
S12.将当前待存储文件分为多个数据;
S13.对每个数据进行保存;
S14.为每个数据生成一个数据地址,数据地址包括数据保存位置、数据在文件中的偏移和数据的长度;
S15.将当前待存储文件中每个数据地址按照数据前后顺序进行合并,生成当前待存储文件的文件地址。
3.根据权利要求1所述的一种基于FICS对象存储的数据插入方法,其特征在于:所述的步骤S2包括以下子步骤:
S21.给定待插入数据,将待插入数据进行保存,并为待插入数据生成相应的数据地址;
S22.给定数据插入的源文件和在源文件中插入的位置;
S23.查询源文件的文件地址;
S24.根据插入的位置将生成的数据地址插入文件地址中。
4.根据权利要求3所述的一种基于FICS对象存储的数据插入方法,其特征在于:所述的源文件为通过步骤S1进行存储的文件。
5.根据权利要求3所述的一种基于FICS对象存储的数据插入方法,其特征在于:所述的步骤S24包括以下子步骤:
S241.根据给定数据在源文件中的插入位置将数据地址的插入分为三种情况:
(1)如果插入位置在源文件的首端,直接将生成的数据地址合并到文件地址首端;
(2)如果插入位置在源文件的末端,直接将生成的数据地址合并到文件地址末端;
(3)如果插入位置在源文件的中部,跳转至步骤S242;
S242.根据插入位置将源文件的文件地址分为两段,将生成的数据地址插入两段文件地址之间,再进行合并。
6.一种基于FICS对象存储的数据插入系统,其特征在于:包括:
FICS对象存储模块,用于待存储文件的每个数据进行保存,并为待存储文件生成文件地址;
数据插入模块,用于将插入的数据进行保存,并为插入的数据生成数据地址,根据数据插入的位置将生成的数据地址插入对应的文件地址中。
7.根据权利要求6所述的一种基于FICS对象存储的数据插入系统,其特征在于:所述的FICS对象存储模块包括:
文件分解子模块,用于将输入的待存储文件分为多个数据;
存储数据库,用于对分解得到的每个数据进行保存;
数据地址生成子模块,用于对每个数据生成数据地址,该数据地址包括数据保存位置、数据在文件中的偏移和数据的长度;
文件地址生成子模块,用于将待存储文件中每个数据地址按照数据前后顺序进行合并,对应的文件地址。
8.根据权利要求6所述的一种基于FICS对象存储的数据插入系统,其特征在于:所述的数据插入模块包括:
数据输入子模块,用于输入待插入数据,对待插入数据进行保存,并为待插入数据生成相应的数据地址;
文件设定子模块,用于设定给定数据插入的源文件;
插入设定子模块,用于设定数据在源文件中插入的位置;
地址查询子模块,用于查询源文件的文件地址;
地址插入子模块,用于将生成的数据地址插入到源文件的文件地址中。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610359978.6A CN106021536A (zh) | 2016-05-27 | 2016-05-27 | 一种基于fics对象存储的数据插入方法与系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610359978.6A CN106021536A (zh) | 2016-05-27 | 2016-05-27 | 一种基于fics对象存储的数据插入方法与系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN106021536A true CN106021536A (zh) | 2016-10-12 |
Family
ID=57094291
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610359978.6A Pending CN106021536A (zh) | 2016-05-27 | 2016-05-27 | 一种基于fics对象存储的数据插入方法与系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106021536A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107229427A (zh) * | 2017-06-22 | 2017-10-03 | 上海七牛信息技术有限公司 | 一种文件存储方法、系统及计算机存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1622094A (zh) * | 2004-12-24 | 2005-06-01 | 北京中星微电子有限公司 | 一种合并文件的方法 |
CN101533408A (zh) * | 2009-04-21 | 2009-09-16 | 北京四维图新科技股份有限公司 | 一种海量数据的处理方法及处理装置 |
CN102301347A (zh) * | 2009-03-04 | 2011-12-28 | 日本电气株式会社 | 存储系统 |
CN103135957A (zh) * | 2013-02-01 | 2013-06-05 | 北京邮电大学 | 使用、管理多队列数据的共用缓存空间的方法和系统 |
US9256603B1 (en) * | 2013-06-28 | 2016-02-09 | Emc Corporation | File system over fully provisioned volume file in direct mode |
-
2016
- 2016-05-27 CN CN201610359978.6A patent/CN106021536A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1622094A (zh) * | 2004-12-24 | 2005-06-01 | 北京中星微电子有限公司 | 一种合并文件的方法 |
CN102301347A (zh) * | 2009-03-04 | 2011-12-28 | 日本电气株式会社 | 存储系统 |
CN101533408A (zh) * | 2009-04-21 | 2009-09-16 | 北京四维图新科技股份有限公司 | 一种海量数据的处理方法及处理装置 |
CN103135957A (zh) * | 2013-02-01 | 2013-06-05 | 北京邮电大学 | 使用、管理多队列数据的共用缓存空间的方法和系统 |
US9256603B1 (en) * | 2013-06-28 | 2016-02-09 | Emc Corporation | File system over fully provisioned volume file in direct mode |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107229427A (zh) * | 2017-06-22 | 2017-10-03 | 上海七牛信息技术有限公司 | 一种文件存储方法、系统及计算机存储介质 |
CN107229427B (zh) * | 2017-06-22 | 2019-10-18 | 上海七牛信息技术有限公司 | 一种文件存储方法、系统及计算机存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102541927B (zh) | 一种实现数据缓存的方法和装置 | |
CN103019884B (zh) | 基于虚拟机快照的内存页去重方法及装置 | |
CN105242881A (zh) | 分布式存储系统及其数据读写方法 | |
TW200508860A (en) | Systems and methods for storing data on computer systems | |
CN103914483A (zh) | 文件存储方法、装置及文件读取方法、装置 | |
CN113282249B (zh) | 一种数据处理方法、系统、设备以及介质 | |
CN104424240A (zh) | 多表关联方法、主服务节点、计算节点及系统 | |
CN107506466B (zh) | 一种小文件存储方法及系统 | |
CN103885721A (zh) | 一种在键-值系统中的数据存储或读取方法、装置 | |
CN106951456B (zh) | 一种内存数据库系统及数据处理系统 | |
CN103605478A (zh) | 存储地址标示、配置方法和数据存取方法及系统 | |
CN103176867A (zh) | 一种快速文件差异备份方法 | |
CN106021536A (zh) | 一种基于fics对象存储的数据插入方法与系统 | |
CN106874329A (zh) | 数据库表索引的实现方法和装置 | |
CN1979424A (zh) | 一种优先级队列的管理方法 | |
CN103077187A (zh) | 日志管理方法和日志管理系统 | |
US20130111145A1 (en) | Mapping of valid and dirty flags in a caching system | |
CN106021538A (zh) | 一种基于fics对象存储的文件分割方法与系统 | |
CN105354149A (zh) | 一种内存数据查找方法和装置 | |
CN102929976B (zh) | 备份数据访问方法及装置 | |
CN105677244A (zh) | 一种降低tlc闪存的固态硬盘写放大的方法 | |
US8868840B2 (en) | Information processing device and method, and program | |
CN106021537A (zh) | 一种基于fics对象存储的数据剔除方法与系统 | |
CN109521954A (zh) | 一种配网ftu定点文件管理方法及装置 | |
CN104932982A (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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20161012 |
|
RJ01 | Rejection of invention patent application after publication |