CN101067826A - 数据分散存取方法 - Google Patents

数据分散存取方法 Download PDF

Info

Publication number
CN101067826A
CN101067826A CN 200710110290 CN200710110290A CN101067826A CN 101067826 A CN101067826 A CN 101067826A CN 200710110290 CN200710110290 CN 200710110290 CN 200710110290 A CN200710110290 A CN 200710110290A CN 101067826 A CN101067826 A CN 101067826A
Authority
CN
China
Prior art keywords
data
host
data block
block
document
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
Application number
CN 200710110290
Other languages
English (en)
Inventor
张孟钧
游宏文
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Via Technologies Inc
Original Assignee
Via Technologies Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Via Technologies Inc filed Critical Via Technologies Inc
Priority to CN 200710110290 priority Critical patent/CN101067826A/zh
Publication of CN101067826A publication Critical patent/CN101067826A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Information Transfer Between Computers (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明涉及一种数据分散存取方法,其应用于一文件与一使用者主机之间,该数据分散存取方法包含下列步骤:将该文件分割成多个数据块;将所述数据块分散存放在所述数据主机中;所述数据主机中的一数据主机响应该使用者主机所发出的一文件读取指令而与其它数据主机完成一信息交换;以及该使用者主机响应该信息交换的结果来将分散在所述数据主机中的数据块取回而组合出该文件。

Description

数据分散存取方法
技术领域
本发明涉及一种数据分散存取方法,特别涉及应用于文件与一使用者主机的一种数据分散存取方法。
背景技术
随着计算机网络硬件技术与数字数据存储装置的快速发展,应用于计算机网络上的文件分享已经是常见的技术。举例来说,散布各地的技术研发机构分部可利用计算机网络系统来共同分享与维护共同拥有的技术文件。而常见的现有作法是如图1所示,利用连接于因特网10上的一数据主机11来存放所有的共享文件110,如此一来,散布各地的技术研发机构分部的研发人员,可利用其个人的使用者主机12、13...、1n来读取甚或更新数据主机11存放的共享文件110。但是此类现有作法存在有下列缺失:
第一,由于技术文件内容复杂,假如单纯利用传统技术手段中的文字编号来进行分类与索引,将会让使用者有数据检索上的困难。
第二,若将所有的共享文件仅存放同一个数据主机,不但数据传送速度受限,若数据发生损毁将导致严重后果。
第三,若当数据主机被不当入侵,入侵者能够直接取得完整的文件。而如何改善上述种种缺失,是发展本发明的主要目的。
发明内容
本发明的一方面是提供一种数据分散存取方法,应用于一文件、一使用者主机与多个数据主机之间,所述数据主机与该使用者主机可通过一网络进行连接,而该数据分散存取方法包含下列步骤:将该文件分割成多个数据块;将所述数据块分散存放在所述数据主机中;所述数据主机中的一数据主机响应该使用者主机所发出的一文件读取指令而与其它数据主机完成一信息交换;以及该使用者主机响应该信息交换的结果来将分散于所述数据主机中的数据块取回而组合出该文件。
本发明的另一方面是提供一种数据分散存储方法,应用于一文件与多个数据主机之间,所述数据主机可通过一网络进行连接,而该数据分散存取方法包含下列步骤:将该文件分割成多个数据块;将所述数据块复制成多份;以及将所述数据块分别存放在所述数据主机中,但每一个数据主机不具有完整的该文件。
本发明发展出来的数据分散存取方法可有效改善现有缺失,不但可增加数据的安全性,更可加速数据的存取速度。
附图说明
本发明得藉由下列附图及说明,以得一更深入的了解:
图1,其是常见的数据分享现有方块示意图。
图2,其是本发明为改善现有手段缺失所发展出来的数据索引产生方法流程示意图。
图3,其是本发明发展出来以功能方块图方式完成的文件索引范例图。
图4,其是本发明所发展出来的文件分散存取方法流程图。
图5,其是本发明所发展出来的文件分散存取系统的功能方块图。
图6,其是本发明所发展出来的文件分散存取方法的较佳实施例步骤流程图。
图7(a)(b)(c)(d)(e),其是本发明所发展出来的将文件切割成数据块的示意图。
图8,其是本发明所发展出来的将文件切割成数据块的另一示意图。
附图符号说明
因特网10                数据主机11
共享文件110             使用者主机12、13..、1n
系统30                  子系统301、302
关系303                 技术文件50
数据块A、B、C、D、E     因特网51
第一数据主机501         第二数据主机502
第三数据主机503         第四数据主机504
第五数据主机505         使用者主机59。
实施方式
请参见图2,其是本发明为改善上述现有手段缺失所发展出来的数据索引产生方法流程示意图。首先,在步骤201中,对一个系统(system)进行分析,进而完成一个功能方块图或一方法流程图。接着,在步骤202中,取得属于该系统的所有相关技术文件后,先取出属于该系统阶层(systemlevel)的第零阶(level 0)数据及其相关技术文件,并完成一文字列连结(text list link)来表达出第零阶(level 0)数据及其相关技术文件两者间的索引对应关系,进而让阅读者可通过该文字列连结的帮助,快速找到该相关技术文件的放置点。然后,在步骤203中,将所有相关技术文件中不属于第零阶(level 0)数据的其它数据进行分类,进而划分出多个属于第一阶(level 1)的子系统以及各个子系统间的关系,进而可根据所述子系统以及各个子系统间的关系来完成一图形式连结(graphical link),而该图形式连结(graphica link)也是用一功能方块图或一方法流程图来完成。而以功能方块图方式完成的索引,可参见由图3所示的范例,其中,系统30可分为子系统301、302以及关系303。接着,在步骤204中,可将上述每一个子系统(例如图3中的子系统301、302)或子系统间的关系(例如图3中的关系303)再当成如步骤201中的系统来看待,反复进行步骤202与步骤203中的步骤,直到子系统被划分到无法再切割的一简单零组件(simple component)为止。最后,在步骤205中,可完成一文字列连结(text list link)来表达出每一个简单零组件与其相关的技术文件两者间的索引对应关系,进而让阅读者可通过该文字列连结的帮助,快速找到每一个简单零组件的相关技术文件的放置点。
接着,为能以安全的方式存放相对应每一个简单零组件的一技术文件,便发展出如图4所示的文件分散存取方法流程图。首先,在步骤401中,将该技术文件切割成多个数据块(block),以图5所示的文件系统功能方块图为例,该技术文件50被切割成5个数据块(block)A、B、C、D、E。然后,在步骤402中,设置多个数据主机来存放所述数据块(block)并将数据块(block)复制成多份,再以图5为例,可通过因特网51连接的第一数据主机501、第二数据主机502、第三数据主机503、第四数据主机504以及第五数据主机505分别用于存放多个数据块(block),而在步骤403中,根据一个重要的原则来分散文件,也就是每一个数据主机都没有存放所有的数据块(block),也就是使用者无法从一台数据主机上取得该技术文件50的所有数据块(block),最后通过步骤404来判断数据块(block)是否皆分散存储完毕。而以图5为例,每一台数据主机存放着5个数据块(block)中的某三个数据块(block)。因此使用者无法从一台数据主机上取得该技术文件50的所有数据块(block),而增加了数据保密的安全性。另外,在5个数据主机中只要是有3个数据主机正常运作,使用者就能取回完整的该技术文件50。相较于将5个数据块(block)分别存储于5个数据主机,上述的存储方式可增加数据存活率。
此外,在步骤402中,设置多个数据主机来存放所述数据块(block)并将数据块(block)复制成多份会产生一数据块统计表。以一个技术文件被切割成5个数据块(block)A、B、C、D、E,并复制3份为例,数据块统计表为:数据块A:3个,数据块B:3个,数据块C:3个,数据块D:3个,数据块E:3个。接着,在步骤403中,可根据此数据块统计表将这些数据块分别存放在这些数据主机中。在一较佳实施例中,会响应数据块统计表中数据块统计数的大小来决定存放数据块的优先级,其中,统计数较大的数据块优先存放。举例来说,假设每一数据主机提供三个数据块存储位置,由于数据块A、B、C、D、E的数量相同,因此,对于第一个数据主机而言,可以存放数据块A、B、C、D、E中的任意三个,例如为:数据块A、数据块B与数据块C。然后,数据块统计表会改变,所得到新的数据块统计表为:数据块A:2个,数据块B:2个,数据块C:2个,数据块D:3个,数据块E:3个。由于数据块D与数据块E的数目较多,因此对于第二个数据主机而言,会先存放数据块D与数据块E,而剩下的一个存放空间,则可以存放数据块A、B、C中的任意一个。通过这样的方式,可以确保这些数据主机至少存放一份数据块A、B、C、D、E。
而为能取回完整的该技术文件50,使用者可通过连结至因特网51的使用者主机59上所执行的一应用程序(图中未示出),向数据主机群中的任一数据主机发出取得该技术文件的一请求,以第一数据主机501为例,当第一数据主机501收到该请求后,便可对该文件读取指令而进行验证,若不通过,则拒绝其文件读取的请求,进而达到数据保密的目的。若验证通过则可与其它数据主机完成信息交换,进而达成任务分配,而分别让各个数据主机传送部份数据块(block)给使用者主机59,最后通过应用程序将所述数据块(block)组合还原出该技术文件。
而上述方法的较佳实施例步骤流程图可参见图6的所示,首先,在步骤601中,使用者先在使用者主机上执行一应用程序,通过应用程序,在步骤602中,使用者主机向数据主机群中的任一数据主机发出取得一技术文件的一请求,当某一数据主机收到该请求后,便在步骤603中向其它数据主机发出询问,并根据回报而产生一数据块分配表(block table),该数据块分配表中记录有每一个数据块分别被那些个数据主机所存放。举例来说,该技术文件被分成四个数据块(block)且被分配到五个数据主机A、B、C、D、E上存放,于是,该数据块分配表的内容如下表一所示:
表一
  数据主机A   数据块1   数据块2   数据块3
  数据主机B   数据块2   数据块3   数据块4
  数据主机C   数据块3   数据块4   数据块1
  数据主机D   数据块4   数据块1   数据块2
  数据主机E   数据块1   数据块2   数据块3
接着便在步骤604中对该数据块分配表进行检查,用于统计出每一个数据块被存放在数据主机上的数量,再根据数量的大小,由小至大来决定出数据块读取的优先级。以上为例,经统计后可得到:数据块1:4个,数据块2:4个,数据块3:4个,数据块4:3个,所以以读取数据块4为最优先。于是在步骤605中,数据主机A选择一个存放有数据块4的数据主机来传送数据块4,例如按字母顺序而选择了数据主机B来传送数据块4。紧接着在步骤606中对数据块分配表(block table)进行更新,用于把已经传送的数据块以及正在进行传送的数据主机从该表中去除,然后经过步骤607来对于数据块表内的数据主机是否皆已传送一轮来进行判断,若否便回到步骤604,若是便进入步骤608来对主机A是否已搜集到所有数据块来进行判断,若是便可完成此次任务,若否则需重新列表(步骤609),将已搜集到的数据块去除,留下未搜集到的数据块来重制一数据块分配表,然后再回到步骤603再执行一遍,直到所有的数据块都被送至使用者主机为止。
再举一例,当该技术文件被分成五个数据块(block)且被分配到三个数据主机A、B、C上存放,于是,该数据块分配表的内容如下表二所示:
表二
  数据主机A  数据块1  数据块2  数据块3  数据块4
  数据主机B  数据块2  数据块3  数据块4  数据块5
  数据主机C  数据块3  数据块4  数据块5  数据块1
而经统计后可得到:数据块1:2个,数据块2:2个,数据块3:3个,数据块4:3个,数据块5:2个,所以以读取数据块1、2、5为最优先。于是利用数据主机A来传送数据块1,利用数据主机B来传送数据块2,利用数据主机C来传送数据块5,并在每次传送完成便进行数据块表(block table)的更新。但由于数据主机数小于数据块数,所以经过第一轮数据主机的传送后(通过步骤607的判断),尚无法传送完所有的数据块,于是,进入步骤609来进行重新列表并去除已传送的数据块而如下列表三所示:
表三
  数据主机A  数据块3  数据块4
  数据主机B  数据块3  数据块4
  数据主机C  数据块3  数据块4
然后再回到步骤603再执行一遍,用于进行第二轮的传送,此例便为利用数据主机A来传送数据块3,利用数据主机B来传送数据块4,如此便可让所有的数据块被送至使用者主机。
而为能更清楚了解上述将文件切割成数据块的各种方式,请先参见图7(a)(b)(c)(d)(e)所示的示意图,首先,图7(a)表示出一个包含有100个数据字节(data byte)的文件,图中是以10*10的空格来存放以英文字母来代表的100个数据字节。至于图7(b),其表示出将上述100个数据字节切割成五个数据块的第一实例图,图中是将相邻两列(当然也可以是相邻两行)组成一数据块,如此便简单地将文件分割成了五个数据块。
再参见图7(c),其表示出将上述100个数据字节切割成五个数据块的第二实例图,图中是将每一块2*5的空格中的数据字节按照一特定分配图来平均分配成五个数据块,以本图为例,上列一及下列五的两个数据字节分配到第一数据块,而上列二及下列四的两个数据字节分配到第二数据块,上列三及下列三的两个数据字节分配到第三数据块,上列四及下列二的两个数据字节分配到第四数据块,至于上列五及下列一的两个数据字节则分配到第五数据块。如此一来,也可将文件分割成了五个数据块。
再参见图7(d),其表示出将上述100个数据字节切割成五个数据块的第三实例图,图中是将每一块2*2的空格中的数据字节视为一单位,接着进行随机分配后来平均分配成五个数据块。至于图7(e),其表示出将上述100个数据字节切割成五个数据块的第四实例图,图中是连单位长度都是随机配置的,图中的长度为1到5之间,然后接着进行随机分配来平均分配成五个数据块。
另外,再请参见图8,其表示出将以二维数据排列的字节切割成五个数据块的第五实例图,图中是将一块4*11的空格中的数据字节视为一单位,接着使用者可依其意愿输入图案(本例为三个字母,”VIA”)以进行设定,设定完成后便可照其图案形状来分配成五个数据块的示意图,其中,标号为“1”的数据位就是将分配给第一数据块的数据位,标号为“2”的数据位就是将分配给第二数据块的数据位,其它依此类推,如此也可分割出五个数据块。
综上所述,本发明发展出来的数据分散存取方法可有效改善现有缺失,不但可增加数据的安全性,更可加速数据的存取速度,上述应用的因特网也可以是广域网络、局域网络等不同范围或不同规范的网络。另外,各式文件都可以应用本发明的分散存取方法来进行存取,不限于上述的技术文件,因此凡其它未脱离本发明所揭示的精神下所完成的等效改变或修饰,均应包含在本发明的申请专利范围内。

Claims (10)

1.一种数据分散存取方法,应用于一文件、一使用者主机与多个数据主机之间,所述数据主机与该使用者主机可通过一网络进行连接,而该数据分散存取方法包含下列步骤:
将该文件分割成多个数据块;
将所述数据块分散存放在所述数据主机中;
所述数据主机中的一数据主机响应该使用者主机所发出的一文件读取指令而与其它数据主机完成一信息交换;以及
该使用者主机响应该信息交换的结果来将分散在所述数据主机中的数据块取回而组合出该文件。
2.如权利要求1所述的数据分散存取方法,其中,该数据主机与其它数据主机完成该信息交换的结果是产生一数据块分配表,而该使用者主机根据该数据块分配表将分散在所述数据主机中的数据块取回而组合出该文件。
3.如权利要求2所述的数据分散存取方法,其中,响应该数据块分配表中数据块统计数的大小来决定取回数据块的优先级,其中,统计数较小的数据块优先取回。
4.如权利要求3所述的数据分散存取方法,其中,当经过一轮数据主机的传送后尚无法传送完所有的数据块时,需进行重新产生一数据块分配表并去除已传送的数据块后再进行传送。
5.一种数据分散存储方法,应用于一文件与多个数据主机之间,所述数据主机可通过一网络进行连接,而该数据分散存取方法包含下列步骤:
将该文件分割成多个数据块;
将所述数据块复制成多份;以及
将所述数据块分别存放在所述数据主机中,但每一个数据主机不具有完整的该文件。
6.如权利要求5所述的数据分散存储方法,其中,将该文件平均分割成所述数据块的方法为将相邻数据组成一数据块。
7.如权利要求5所述的数据分散存储方法,其中,将该文件平均分割成所述数据块的方法为将N的倍数个的相邻数据按照一特定分配图来平均分配,然后再将位于该特定分配图中相同位置的数据分配到同一数据块。
8.如权利要求5所述的数据分散存储方法,其中,将该文件分割成所述数据块的方法包含:
提供使用者输入一图案;以及
响应该图案的线条来分配数据,进而分割出所述数据块。
9.如权利要求5所述的数据分散存储方法,其中,将所述数据块复制成多份的结果是产生一数据块统计表,而根据该数据块统计表将所述数据块分别存放在所述数据主机中。
10.如权利要求9所述的数据分散存储方法,其中,响应该数据块统计表中数据块统计数的大小来决定存放数据块的优先级,其中,统计数较大的数据块优先存放。
CN 200710110290 2007-06-08 2007-06-08 数据分散存取方法 Pending CN101067826A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN 200710110290 CN101067826A (zh) 2007-06-08 2007-06-08 数据分散存取方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN 200710110290 CN101067826A (zh) 2007-06-08 2007-06-08 数据分散存取方法

Publications (1)

Publication Number Publication Date
CN101067826A true CN101067826A (zh) 2007-11-07

Family

ID=38880381

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 200710110290 Pending CN101067826A (zh) 2007-06-08 2007-06-08 数据分散存取方法

Country Status (1)

Country Link
CN (1) CN101067826A (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102236681A (zh) * 2010-04-20 2011-11-09 中兴通讯股份有限公司 一种数据存储及获取的系统及方法
CN103631792A (zh) * 2012-08-22 2014-03-12 鸿富锦精密工业(深圳)有限公司 海量资料索引建立系统及方法
US20150268558A1 (en) * 2014-03-19 2015-09-24 Samsung Sdi Co., Ltd. Monomer for hardmask composition, hardmask composition including the monomer, and method of forming patterns using the hardmask composition
CN107784013A (zh) * 2016-08-30 2018-03-09 福建福昕软件开发股份有限公司 一种将分散文档互联进行分布式管理的方法

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102236681A (zh) * 2010-04-20 2011-11-09 中兴通讯股份有限公司 一种数据存储及获取的系统及方法
CN103631792A (zh) * 2012-08-22 2014-03-12 鸿富锦精密工业(深圳)有限公司 海量资料索引建立系统及方法
CN103631792B (zh) * 2012-08-22 2017-01-25 北京华财会计股份有限公司 海量资料索引建立系统及方法
US20150268558A1 (en) * 2014-03-19 2015-09-24 Samsung Sdi Co., Ltd. Monomer for hardmask composition, hardmask composition including the monomer, and method of forming patterns using the hardmask composition
CN107784013A (zh) * 2016-08-30 2018-03-09 福建福昕软件开发股份有限公司 一种将分散文档互联进行分布式管理的方法

Similar Documents

Publication Publication Date Title
US11960726B2 (en) Method and apparatus for SSD storage access
JP6560308B2 (ja) データ記憶サービスを実装するシステム及び方法
CN1320483C (zh) 用于在多节点环境中实施日志处理的系统和方法
KR102034833B1 (ko) 플래시 저장장치의 내부 병렬성을 이용하는 키 값 기반의 데이터 액세스 장치 및 방법
EP3238106A1 (en) Compaction policy
CN109547566B (zh) 一种基于内存分配的多线程上传优化方法
CN1622087A (zh) 管理文件系统版本
CN101382953A (zh) 在用户空间访问文件系统的接口系统与文件读、写方法
AU2014212780A1 (en) Data stream splitting for low-latency data access
CN101375241A (zh) 集群文件系统中的有效数据管理
CN1916862A (zh) 把存储单元和相关元数据复制到存储器的方法和系统
CN1648899A (zh) 用于文档索引的非频繁字索引
CN101046772A (zh) 回收存储器中的空间的方法和装置
CN103218316A (zh) 采用多个页替换算法的高速缓存
CN1448857A (zh) 电子帐票管理方法和程序
CN103559319A (zh) 分布式集群文件系统的缓存同步方法和设备
CN1717686A (zh) 自动数据合并
CN101067826A (zh) 数据分散存取方法
CN1292352C (zh) 利用存储元数据处理管理数据访问请求的方法和系统
CN101057219A (zh) 本地机构分割客户机资源的方法和系统
Singh et al. Non-replicated dynamic data allocation in distributed database systems
US20070250664A1 (en) Sorting large data sets
CN1627279A (zh) 指配优先权的方法、系统、和程序
CN1904855A (zh) 自动使卷容器中的存储区域网络的组件相关的系统和方法
CN1920826A (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
C12 Rejection of a patent application after its publication
RJ01 Rejection of invention patent application after publication

Open date: 20071107