CN110083306A - 一种分布式对象存储系统及存储方法 - Google Patents
一种分布式对象存储系统及存储方法 Download PDFInfo
- Publication number
- CN110083306A CN110083306A CN201910192834.XA CN201910192834A CN110083306A CN 110083306 A CN110083306 A CN 110083306A CN 201910192834 A CN201910192834 A CN 201910192834A CN 110083306 A CN110083306 A CN 110083306A
- Authority
- CN
- China
- Prior art keywords
- backup
- distributed objects
- disk
- blockid
- equipment
- 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
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1448—Management of the data involved in backup or backup restore
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/0643—Management of files
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0656—Data buffering arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
- G06F3/0689—Disk arrays, e.g. RAID, JBOD
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Quality & Reliability (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
一种分布式对象存储系统及存储方法,涉及存储系统领域,包括Zookeeper集群、主控服务器、数据服务器和客户端,所述Zookeeper集群包括建模模块,所述建模模块包括标准模型和定制模型,所述主控服务器包括主设备和备用设备,所述主设备和备用设备的节点中存储有大文件对象,所述数据服务器包括备份磁盘,所述备份磁盘包括与大文件对象对应的索引文件,所述客户端包括接口,所述数据服务器包括存储组。该分布式对象存储系统及存储方法,加快了小文件的访问速度,同时减小了读写IO次数的开销,能够避免系统故障时造成信息缺失,提高了系统的安全性能,同时能够避免预先分类创建大文件对象时需要耗费较多的时间进行分类的问题。
Description
技术领域
本发明涉及存储系统领域,具体为一种分布式对象存储系统及存储方法。
背景技术
存储系统是指计算机中由存放程序和数据的各种存储设备、控制部件及管理信息调度的设备(硬件)和算法(软件)所组成的系统,计算机的主存储器不能同时满足存取速度快、存储容量大和成本低的要求,在计算机中必须有速度由慢到快、容量由大到小的多级层次存储器,以最优的控制调度算法和合理的成本,构成具有性能可接受的存储系统。但是现有的存储系统及存储方法应对海量小文件存储与访问时效率较低,同时存储的安全性能较低,在预先分类创建大文件对象时需要耗费较多的时间分类。
发明内容
(一)解决的技术问题
针对现有技术的不足,本发明提供了一种分布式对象存储系统及存储方法,解决了现有的存储系统及存储方法应对海量小文件存储与访问时效率较低,同时存储的安全性能较低,在预先分类创建大文件对象时需要耗费较多的时间进行分类的问题。
(二)技术方案
为实现以上目的,本发明通过以下技术方案予以实现:一种分布式对象存储系统,包括Zookeeper集群、主控服务器、数据服务器和客户端,所述Zookeeper集群包括建模模块,所述建模模块包括标准模型和定制模型,所述主控服务器包括主设备和备用设备,所述主设备和备用设备的节点中存储有大文件对象,所述数据服务器包括备份磁盘,所述备份磁盘包括与大文件对象对应的索引文件,所述客户端包括接口。
优选的,所述数据服务器包括存储组,所述存储组包括备用磁盘一、备用磁盘二和备用磁盘三,所述备用磁盘一、备用磁盘二和备用磁盘三中均含有索引文件。
优选的,所述接口包括读取接口、写入接口、删除接口和修改接口。
优选的,所述大文件对象包括BlockID和FileID。
优选的,所述一种分布式对象存储方法,包括以下步骤,
(1)建模,在系统使用前预先使用Zookeeper集群在数据服务器中建立标准模型,标准模型为适应性较广的BlockID,然后使用者根据自己的喜好在数据服务器中建立独特的BlockID;
(2)磁盘选举,存储组中的备份磁盘根据Zookeeper模块按Master/Slave主从结构进行选举,产生该存储组的主备份磁盘,另外两个备份磁盘为从备份磁盘;
(3)存储,调用客户端的写入接口,获取系统分配的BlockID和存储组并发送写入请求到该存储组的主备份磁盘,主数据节点根据大文件对象分配FildID,将文件写入主备份磁盘中;
(4)备份文件存储,从备份磁盘同样根据大文件对象分配FildID进行文件的写入。
优选的,所述文件获取BlockID前Zookeeper集群检测缓存信息,当缓存信息为最新时继续进行存储步骤。
优选的,所述缓存信息不是最新时访问主控节点,主控节点返回更新的缓存。
优选的,所述大文件对象被写满时,客户端通过写入接口向系统申请新的BlockID,Zookeeper集群生成新的BlockID。
优选的,所述主设备宕机后自动切换到备用设备。
优选的,所述主设备宕机恢复之后备用设备将数据同步到主设备。
(三)有益效果
本发明提供了一种分布式对象存储系统及存储方法。具备以下有益效果:
该分布式对象存储系统及存储方法,通过调用客户端的写入接口,获取系统分配的BlockID和存储组并发送写入请求到该存储组的主备份磁盘,主数据节点根据大文件对象分配FildID,将文件写入主备份磁盘中,将各类小文件抽象为大文件对象统一存储,为每个对象文件的元数据建立外部索引,大大减轻了海量小文件管理的负担,且读取文件只需要访问一次磁盘即可,加快了小文件的访问速度,同时减小了读写IO次数的开销。
该分布式对象存储系统及存储方法,调用客户端的写入接口,获取系统分配的BlockID和存储组并发送写入请求到该存储组的主备份磁盘,主数据节点根据大文件对象分配FildID,将文件写入主备份磁盘中,从备份磁盘同样根据大文件对象分配FildID进行文件的写入,主设备宕机后自动切换到备用设备,主控服务器中的主设备宕机后自动转入备用设备,主设备恢复后将数据同步到主设备,磁盘发生故障时仍有备份磁盘中同时存储的信息,能够避免系统故障时造成信息缺失,提高了系统的安全性能。
本发明在系统使用前预先使用Zookeeper集群在数据服务器中建立标准模型,标准模型为适应性较广的BlockID,然后使用者根据自己的喜好在数据服务器中建立独特的BlockID,系统自动生成部分BlockID模板,同时使用者个人创建独特的BlockID,能够避免预先分类创建大文件对象时需要耗费较多的时间进行分类的问题。
附图说明
图1为本发明系统结构框图;
图2为本发明接口结构框图;
图3为本发明大文件对象标记框图。
具体实施方式
为了使本发明实现的技术手段、创作特征、达成目的与功效易于明白了解,下面结合具体实施例,进一步阐述本发明。
实施例一
一种分布式对象存储系统,包括Zookeeper集群、主控服务器、数据服务器和客户端,Zookeeper集群包括建模模块,建模模块包括标准模型和定制模型,主控服务器包括主设备和备用设备,主设备和备用设备的节点中存储有大文件对象,数据服务器包括备份磁盘,备份磁盘包括与大文件对象对应的索引文件,客户端包括接口。
数据服务器包括存储组,存储组包括备用磁盘一、备用磁盘二和备用磁盘三,备用磁盘一、备用磁盘二和备用磁盘三中均含有索引文件。
接口包括读取接口、写入接口、删除接口和修改接口。
大文件对象包括BlockID和FileID。
一种分布式对象存储方法,包括以下步骤,
(1)建模,在系统使用前预先使用Zookeeper集群在数据服务器中建立标准模型,标准模型为适应性较广的BlockID,然后使用者根据自己的喜好在数据服务器中建立独特的BlockID;
(2)磁盘选举,存储组中的备份磁盘根据Zookeeper模块按Master/Slave主从结构进行选举,产生该存储组的主备份磁盘,另外两个备份磁盘为从备份磁盘;
(3)存储,调用客户端的写入接口,获取系统分配的BlockID和存储组并发送写入请求到该存储组的主备份磁盘,主数据节点根据大文件对象分配FildID,将文件写入主备份磁盘中;
(4)备份文件存储,从备份磁盘同样根据大文件对象分配FildID进行文件的写入。
文件获取BlockID前Zookeeper集群检测缓存信息,当缓存信息为最新时继续进行存储步骤。
大文件对象被写满时,客户端通过写入接口向系统申请新的BlockID,Zookeeper集群生成新的BlockID。
实施例二
一种分布式对象存储系统,包括Zookeeper集群、主控服务器、数据服务器和客户端,Zookeeper集群包括建模模块,建模模块包括标准模型和定制模型,主控服务器包括主设备和备用设备,主设备和备用设备的节点中存储有大文件对象,数据服务器包括备份磁盘,备份磁盘包括与大文件对象对应的索引文件,客户端包括接口。
数据服务器包括存储组,存储组包括备用磁盘一、备用磁盘二和备用磁盘三,备用磁盘一、备用磁盘二和备用磁盘三中均含有索引文件。
接口包括读取接口、写入接口、删除接口和修改接口。
大文件对象包括BlockID和FileID。
一种分布式对象存储方法,包括以下步骤,
(1)建模,在系统使用前预先使用Zookeeper集群在数据服务器中建立标准模型,标准模型为适应性较广的BlockID,然后使用者根据自己的喜好在数据服务器中建立独特的BlockID;
(2)磁盘选举,存储组中的备份磁盘根据Zookeeper模块按Master/Slave主从结构进行选举,产生该存储组的主备份磁盘,另外两个备份磁盘为从备份磁盘;
(3)存储,调用客户端的写入接口,获取系统分配的BlockID和存储组并发送写入请求到该存储组的主备份磁盘,主数据节点根据大文件对象分配FildID,将文件写入主备份磁盘中;
(4)备份文件存储,从备份磁盘同样根据大文件对象分配FildID进行文件的写入。
文件获取BlockID前Zookeeper集群检测缓存信息,缓存信息不是最新时访问主控节点,主控节点返回更新的缓存。
大文件对象被写满时,客户端通过写入接口向系统申请新的BlockID,Zookeeper集群生成新的BlockID。
主设备宕机后自动切换到备用设备。
主设备宕机恢复之后备用设备将数据同步到主设备。
以上显示和描述了本发明的基本原理和主要特征和本发明的优点。本行业的技术人员应该了解,本发明不受上述实施例的限制,上述实施例和说明书中描述的只是说明本发明的原理,在不脱离本发明精神和范围的前提下,本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明范围内。本发明要求保护范围由所附的权利要求书及其等效物界定。
Claims (10)
1.一种分布式对象存储系统,包括Zookeeper集群、主控服务器、数据服务器和客户端,其特征在于:所述Zookeeper集群包括建模模块,所述建模模块包括标准模型和定制模型,所述主控服务器包括主设备和备用设备,所述主设备和备用设备的节点中存储有大文件对象,所述数据服务器包括备份磁盘,所述备份磁盘包括与大文件对象对应的索引文件,所述客户端包括接口。
2.根据权利要求1所述的一种分布式对象存储系统,其特征在于:所述数据服务器包括存储组,所述存储组包括备用磁盘一、备用磁盘二和备用磁盘三,所述备用磁盘一、备用磁盘二和备用磁盘三中均含有索引文件。
3.根据权利要求1所述的一种分布式对象存储系统,其特征在于:所述接口包括读取接口、写入接口、删除接口和修改接口。
4.根据权利要求1所述的一种分布式对象存储系统,其特征在于:所述大文件对象包括BlockID和FileID。
5.根据权利要求1所述的一种分布式对象存储方法,其特征在于:包括以下步骤,
(1)建模,在系统使用前预先使用Zookeeper集群在数据服务器中建立标准模型,标准模型为适应性较广的BlockID,然后使用者根据自己的喜好在数据服务器中建立独特的BlockID;
(2)磁盘选举,存储组中的备份磁盘根据Zookeeper模块按Master/Slave主从结构进行选举,产生该存储组的主备份磁盘,另外两个备份磁盘为从备份磁盘;
(3)存储,调用客户端的写入接口,获取系统分配的BlockID和存储组并发送写入请求到该存储组的主备份磁盘,主数据节点根据大文件对象分配FildID,将文件写入主备份磁盘中;
(4)备份文件存储,从备份磁盘同样根据大文件对象分配FildID进行文件的写入。
6.根据权利要求5所述的一种分布式对象存储方法,其特征在于:所述文件获取BlockID前Zookeeper集群检测缓存信息,当缓存信息为最新时继续进行存储步骤。
7.根据权利要求6所述的一种分布式对象存储方法,其特征在于:所述缓存信息不是最新时访问主控节点,主控节点返回更新的缓存。
8.根据权利要求5所述的一种分布式对象存储方法,其特征在于:所述大文件对象被写满时,客户端通过写入接口向系统申请新的BlockID,Zookeeper集群生成新的BlockID。
9.根据权利要求5所述的一种分布式对象存储方法,其特征在于:所述主设备宕机后自动切换到备用设备。
10.根据权利要求9所述的一种分布式对象存储方法,其特征在于:所述主设备宕机恢复之后备用设备将数据同步到主设备。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910192834.XA CN110083306A (zh) | 2019-03-14 | 2019-03-14 | 一种分布式对象存储系统及存储方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910192834.XA CN110083306A (zh) | 2019-03-14 | 2019-03-14 | 一种分布式对象存储系统及存储方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110083306A true CN110083306A (zh) | 2019-08-02 |
Family
ID=67412552
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910192834.XA Pending CN110083306A (zh) | 2019-03-14 | 2019-03-14 | 一种分布式对象存储系统及存储方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110083306A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110457281A (zh) * | 2019-08-14 | 2019-11-15 | 北京博睿宏远数据科技股份有限公司 | 数据处理方法、装置、设备及介质 |
CN110764695A (zh) * | 2019-09-23 | 2020-02-07 | 合肥富煌君达高科信息技术有限公司 | 一种基于高速采集的存储方法和系统 |
CN111026337A (zh) * | 2019-12-30 | 2020-04-17 | 中科星图股份有限公司 | 一种基于机器学习和ceph思想的分布式储存方法 |
CN111190538A (zh) * | 2019-12-20 | 2020-05-22 | 北京淇瑀信息科技有限公司 | 文件存储方法、系统、设备和计算机可读介质 |
CN111309794A (zh) * | 2020-01-17 | 2020-06-19 | 青梧桐有限责任公司 | 一种数据存储引擎 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102662992A (zh) * | 2012-03-14 | 2012-09-12 | 北京搜狐新媒体信息技术有限公司 | 一种海量小文件的存储、访问方法及装置 |
CN102855239A (zh) * | 2011-06-28 | 2013-01-02 | 清华大学 | 一种分布式地理文件系统 |
CN102982033A (zh) * | 2011-09-05 | 2013-03-20 | 深圳市快播科技有限公司 | 小文件的存储方法及系统 |
CN105549905A (zh) * | 2015-12-09 | 2016-05-04 | 上海理工大学 | 一种多虚拟机访问分布式对象存储系统的方法 |
WO2017088572A1 (zh) * | 2015-11-23 | 2017-06-01 | 华为技术有限公司 | 一种处理数据的方法、装置及系统 |
-
2019
- 2019-03-14 CN CN201910192834.XA patent/CN110083306A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102855239A (zh) * | 2011-06-28 | 2013-01-02 | 清华大学 | 一种分布式地理文件系统 |
CN102982033A (zh) * | 2011-09-05 | 2013-03-20 | 深圳市快播科技有限公司 | 小文件的存储方法及系统 |
CN102662992A (zh) * | 2012-03-14 | 2012-09-12 | 北京搜狐新媒体信息技术有限公司 | 一种海量小文件的存储、访问方法及装置 |
WO2017088572A1 (zh) * | 2015-11-23 | 2017-06-01 | 华为技术有限公司 | 一种处理数据的方法、装置及系统 |
CN105549905A (zh) * | 2015-12-09 | 2016-05-04 | 上海理工大学 | 一种多虚拟机访问分布式对象存储系统的方法 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110457281A (zh) * | 2019-08-14 | 2019-11-15 | 北京博睿宏远数据科技股份有限公司 | 数据处理方法、装置、设备及介质 |
CN110764695A (zh) * | 2019-09-23 | 2020-02-07 | 合肥富煌君达高科信息技术有限公司 | 一种基于高速采集的存储方法和系统 |
CN111190538A (zh) * | 2019-12-20 | 2020-05-22 | 北京淇瑀信息科技有限公司 | 文件存储方法、系统、设备和计算机可读介质 |
CN111026337A (zh) * | 2019-12-30 | 2020-04-17 | 中科星图股份有限公司 | 一种基于机器学习和ceph思想的分布式储存方法 |
CN111309794A (zh) * | 2020-01-17 | 2020-06-19 | 青梧桐有限责任公司 | 一种数据存储引擎 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110083306A (zh) | 一种分布式对象存储系统及存储方法 | |
US10778751B2 (en) | Method of micro-service transformation for power trading functions | |
CN104965850B (zh) | 一种基于开源技术的数据库高可用实现方法 | |
CN102857577B (zh) | 一种集群存储自动负载均衡的系统及方法 | |
CN108804112A (zh) | 一种区块链落账处理方法及系统 | |
US20100198920A1 (en) | High performant information sharing and replication for single-publisher and multiple-subscriber configuration | |
CN104735110B (zh) | 元数据管理方法和系统 | |
CN103455577A (zh) | 云主机镜像文件的多备份就近存储和读取方法及系统 | |
CN104407926B (zh) | 一种云计算资源的调度方法 | |
CN109840166A (zh) | 一种跨集群对象存储异步备份方法、装置和系统 | |
CN102033889A (zh) | 分布式数据库并行处理系统 | |
CN104657497A (zh) | 一种基于分布式计算的海量用电信息并行计算系统及方法 | |
CN105426427A (zh) | 基于raid 0 存储的mpp 数据库集群副本实现方法 | |
CN109657007A (zh) | 基于异步提交的数据库数据同步并行执行方法及设备 | |
CN102693312B (zh) | 一种键值库数据存储中柔性事务管理方法 | |
CN105635311A (zh) | 一种云管理平台中资源池信息同步的方法 | |
CN102820998B (zh) | 实现面向办公应用的双机容错服务系统及其数据存储方法 | |
CN103763368A (zh) | 一种跨数据中心的数据同步方法 | |
WO2024001079A1 (zh) | 一种数据库主备同步操作的加速方法和系统 | |
CN103036952B (zh) | 一种企业级异构融合存储管理系统 | |
CN109361777A (zh) | 分布式集群节点状态的同步方法、同步系统及相关装置 | |
CN106951456B (zh) | 一种内存数据库系统及数据处理系统 | |
CN104281673A (zh) | 一种数据库的缓存构建系统及对应的构建方法 | |
CN113297159B (zh) | 数据存储方法以及装置 | |
CN114706836A (zh) | 一种基于机载嵌入式数据库的数据生命周期管理方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190802 |