CN111831221B - 一种基于云存储的分布式存储方法及系统 - Google Patents
一种基于云存储的分布式存储方法及系统 Download PDFInfo
- Publication number
- CN111831221B CN111831221B CN202010457226.XA CN202010457226A CN111831221B CN 111831221 B CN111831221 B CN 111831221B CN 202010457226 A CN202010457226 A CN 202010457226A CN 111831221 B CN111831221 B CN 111831221B
- Authority
- CN
- China
- Prior art keywords
- data
- storage
- server
- address
- node
- 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.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 title claims abstract description 30
- 238000013500 data storage Methods 0.000 claims abstract description 40
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 26
- 238000004590 computer program Methods 0.000 claims description 8
- 230000007246 mechanism Effects 0.000 claims description 4
- 230000004083 survival effect Effects 0.000 claims description 3
- 238000004364 calculation method Methods 0.000 claims 2
- 238000012545 processing Methods 0.000 abstract description 9
- 230000008569 process Effects 0.000 description 4
- 238000010586 diagram Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 230000005012 migration Effects 0.000 description 1
- 238000013508 migration Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- 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/0604—Improving or facilitating administration, e.g. storage management
-
- 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
-
- 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/067—Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供一种基于云存储的分布式存储方法及系统,该方法包括:接收用户的数据存储请求,通过Vmware Esxi建立宿主机,并通过数据分发算法将预存储数据分发至对应的数据节点,其中,所述数据分发算法根据预存储数据大小、从服务器存储容量和从服务器读写性能进行数据分发;获取数据节点的数据地址及存储容量,并通过zookeeper将数据存储地址同步至宿主服务器。通过该方案解决了现有分布式存储方法数据处理效率低的问题,基于宿主机及数据分发算法可有效提高数据处理效率,保障数据读写效率,实现对云存储数据可靠有效的管理。
Description
技术领域
本发明涉及云存储领域,尤其涉及一种基于云存储的分布式存储方法及系统。
背景技术
随着云存储技术的成熟,越来越多的企业或个人将将用户数据存储至云端,通过云存储可以方便数据存取及应用,便捷数据备份、维护、安全等。然而,由于用户端数据量增大,为方便横向扩展、避免数据迁移等,有必要采用分布式存储。当前的分布式存储为满足水平拓展,多采用哈希环的实现存储设备拓展,保障数据一致性,然而,随着针对用户不同数据存储请求,以及高并发的数据分发处理,采用哈希环实现分布式存储,数据处理效率较低。
发明内容
有鉴于此,本发明实施例提供了一种基于云存储的分布式存储方法及系统,以解决现有的分布式云存储方法数据处理效率低的问题。
在本发明实施例的第一方面,提供了一种基于云存储的分布式存储方法,包括:
接收用户的数据存储请求,通过Vmware Esx i建立宿主机,并通过数据分发算法将预存储数据分发至对应的数据节点,其中,所述数据分发算法根据预存储数据大小、从服务器存储容量和从服务器读写性能进行数据分发;
获取数据节点的数据地址及存储容量,并通过zookeeper将数据存储地址同步至宿主服务器。
在本发明实施例的第二方面,提供了一种基于云存储的分布式存储系统,包括:
分发模块,用于接收用户的数据存储请求,通过Vmware Esx i建立宿主机,并通过数据分发算法将预存储数据分发至对应的数据节点,其中,所述数据分发算法根据预存储数据大小、从服务器存储容量和从服务器读写性能进行数据分发;
同步模块,用于获取数据节点的数据地址及存储容量,并通过zookeeper将数据存储地址同步至宿主服务器。
在本发明实施例的第三方面,提供了一种终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如本发明实施例第一方面所述方法的步骤。
本发明实施例的第四方面,提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现本发明实施例第一方面提供的所述方法的步骤。
本发明实施例中,通过Vmware Esx i建立宿主机,并基于数据分发算法将预存储数据分发至对应的数据节点,所述数据分发算法根据预存储数据大小、从服务器存储容量和从服务器读写性能进行数据分发;获取数据节点的数据地址及存储容量,并通过zookeeper将数据存储地址同步至宿主服务器。从而解决了分布式云存储方法数据处理效率低的问题,可以有效提高数据处理效率,通过宿主服务器与从服务器配合,并结合数据分发算法可实现高效用户请求处理,可以将不同类别数据按不同需求存储至对应的数据节点,保障数据读写速度。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单介绍,显而易见地,下面描述的附图仅仅是本发明的一些实施例,对本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获取其他附图。
图1为本发明的一个实施例提供的基于云存储的分布式存储方法的流程示意图;
图2为本发明的一个实施例提供的的基于云存储的分布式存储系统的结构示意图。
具体实施方式
为使得本发明的发明目的、特征、优点能够更加的明显和易懂,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,下面所描述的实施例仅仅是本发明一部分实施例,而非全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
本发明的说明书或权利要求书及上述附图中的术语“包括”以及其他相近意思表述,意指覆盖不排他的包含,如包含一系列步骤或单元的过程、方法或系统、设备没有限定于已列出的步骤或单元。此外,“第一”“第二”用于区分不同对象,并非用于描述特定顺序。
参见图1,图1为本发明实施例提供的一种基于云存储的分布式存储方法的流程示意图,包括:
S101、接收用户的数据存储请求,通过Vmware Esxi建立宿主机,并通过数据分发算法将预存储数据分发至对应的数据节点,其中,所述数据分发算法根据预存储数据大小、从服务器存储容量和从服务器读写性能进行数据分发;
所述Vmware Esxi为企业级的管理程序,用于在共享存储上管理虚拟机文件的群集文件系统,基于创建的宿主机可以接收用户数据存储请求,将预存储数据分发至各从服务器。
所述数据分发算法根据预存储数据大小、从服务器存储容量和从服务器读写性能进行数据分发。具体的,宿主服务器会实时获取各从服务器的存储容量,根据预存储数据大小,将预存储数据尽量分发至存储容量较大的从服务器,避免读取数据时需要从多个服务器的磁盘获取,同时,综合考虑从服务器的读写性能。
优选的,对云存储数据类型及大小、从服务器可用容量及读写性能、用户类别等进行加权计算,匹配确定预存储数据对应的写入节点。
可选的,通过消息中间体创建数据存储任务,宿主服务器获取数据存储任务后,通过数据分发算法将预存储数据分发至对应的数据节点。每接收到一个用户数据存储请求,就在消息中间体中发布数据存储任务,宿主服务器按顺序同步获取数据存储任务,并进行处理,分发至各从服务器的数据节点。
S102、获取数据节点的数据地址及存储容量,并通过zookeeper将数据存储地址同步至宿主服务器。
从服务器接收到存储数据流后,将数据存放至服务器的磁盘上,存放完成后,会返回一个数据存储地址,通过zookeeper缓存返回的数据地址。从服务器获取并记录存储后的数据地址及剩余存储容量,并可通过zookeeper将数据地址同步至宿主服务器,并返回数据存储成功的提示。
优选的,通过zookeeper的心跳机制判断每个数据节点的存储设备是否存活。Zookeeper可以定期对接入到宿主服务器的从服务器进行存活检查,当从服务器宕机或出现其他不能正常工作的问题,可以将此服务器剔除,避免再给该服务器分发存储数据,同时,当有新服务器接入或新存储设备接入,也可以通过zookeeper进行查询判断。
优选的,定期扫描宿主服务器和从服务器,对内存中缓存的数据存储地址进行备份。由于服务器在工作时,数据分发地址以及从服务器记录的存储地址都是存放至内存中,一旦服务器出现断电停机等问题,数据地址就会丢失,因此通过定期备份可以保障数据存储安全,保障数据存储管理的可靠性。
本实施例提供的方法,相对于传统的分布式存储方法,可有效提高数据处理效率,保障存储数据的读写速度,方便可靠有效管理。
应理解,上述实施例中各步骤的序号大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定,
图2为本发明实施例二提供的一种的基于云存储的分布式存储系统的结构示意图,该系统包括:
分发模块210,用于接收用户的数据存储请求,通过Vmware Esx i建立宿主机,并通过数据分发算法将预存储数据分发至对应的数据节点,其中,所述数据分发算法根据预存储数据大小、从服务器存储容量和从服务器读写性能进行数据分发;
可选的,所述通过数据分发算法将预存储数据分发至对应的数据节点还包括:
通过消息中间体创建数据存储任务,宿主服务器获取数据存储任务后,通过数据分发算法将预存储数据分发至对应的数据节点。
同步模块220,用于获取数据节点的数据地址及存储容量,并通过zookeeper将数据存储地址同步至宿主服务器。
优选的,所述同步模块220还包括:
存活判断模块,用于通过zookeeper的心跳机制判断每个数据节点的存储设备是否存活。
优选的,所述同步模块220还包括。
备份模块,用于定期扫描宿主服务器和从服务器,对内存中缓存的数据存储地址进行备份。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,所述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,包括步骤S101至S102,所述的存储介质包括如:ROM/RAM、磁碟、光盘等。
以上所述,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (8)
1.一种基于云存储的分布式存储方法,其特征在于,包括:
接收用户的数据存储请求,通过Vmware Esxi建立宿主机,并通过数据分发算法将预存储数据分发至对应的数据节点,其中,所述数据分发算法根据预存储数据大小、从服务器存储容量和从服务器读写性能进行数据分发;
其中,所述通过数据分发算法将预存储数据分发至对应的数据节点还包括:
通过消息中间体创建数据存储任务,宿主服务器获取数据存储任务后,通过数据分发算法将预存储数据分发至对应的数据节点;
其中,对云存储数据类型及大小、从服务器可用容量及读写性能、用户类别进行加权计算,匹配确定预存储数据对应的写入节点;
获取数据节点的数据地址及存储容量,并通过zookeeper将数据存储地址同步至宿主服务器。
2.根据权利要求1所述的方法,其特征在于,所述获取数据节点的数据地址及存储容量,并通过zookeeper将数据存储地址同步至宿主服务器还包括:
通过zookeeper的心跳机制判断每个数据节点的存储设备是否存活。
3.根据权利要求1所述的方法,其特征在于,所述获取数据节点的数据地址及存储容量,并通过zookeeper将数据存储地址同步至宿主服务器还包括:
定期扫描宿主服务器和从服务器,对内存中缓存的数据存储地址进行备份。
4.一种基于云存储的分布式存储系统,其特征在于,包括:
分发模块,用于接收用户的数据存储请求,通过Vmware Esxi建立宿主机,并通过数据分发算法将预存储数据分发至对应的数据节点,其中,所述数据分发算法根据预存储数据大小、从服务器存储容量和从服务器读写性能进行数据分发;
其中,所述通过数据分发算法将预存储数据分发至对应的数据节点还包括:
通过消息中间体创建数据存储任务,宿主服务器获取数据存储任务后,通过数据分发算法将预存储数据分发至对应的数据节点;
其中,对云存储数据类型及大小、从服务器可用容量及读写性能、用户类别进行加权计算,匹配确定预存储数据对应的写入节点;
同步模块,用于获取数据节点的数据地址及存储容量,并通过zookeeper将数据存储地址同步至宿主服务器。
5.根据权利要求4所述的系统,其特征在于,所述同步模块还包括:
存活判断模块,用于通过zookeeper的心跳机制判断每个数据节点的存储设备是否存活。
6.根据权利要求4所述的系统,其特征在于,所述同步模块包括:
备份模块,用于定期扫描宿主服务器和从服务器,对内存中缓存的数据存储地址进行备份。
7.一种服务器,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至3中任一项所述基于云存储的分布式存储方法的步骤。
8.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至3任一项所述基于云存储的分布式存储方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010457226.XA CN111831221B (zh) | 2020-05-26 | 2020-05-26 | 一种基于云存储的分布式存储方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010457226.XA CN111831221B (zh) | 2020-05-26 | 2020-05-26 | 一种基于云存储的分布式存储方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111831221A CN111831221A (zh) | 2020-10-27 |
CN111831221B true CN111831221B (zh) | 2022-09-23 |
Family
ID=72913916
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010457226.XA Expired - Fee Related CN111831221B (zh) | 2020-05-26 | 2020-05-26 | 一种基于云存储的分布式存储方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111831221B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112905639A (zh) * | 2020-12-21 | 2021-06-04 | 国网甘肃省电力公司电力科学研究院 | 一种基于规则的新能源数据分发方法 |
CN114553741B (zh) * | 2022-03-04 | 2023-08-04 | 苏州浪潮智能科技有限公司 | 一种智能路径管控方法、装置、设备及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106453564A (zh) * | 2016-10-18 | 2017-02-22 | 北京京东尚科信息技术有限公司 | 弹性云分布式海量请求处理的方法、装置及系统 |
CN106713487A (zh) * | 2017-01-16 | 2017-05-24 | 腾讯科技(深圳)有限公司 | 数据的同步方法和装置 |
CN108073402A (zh) * | 2017-11-30 | 2018-05-25 | 山东鲁能软件技术有限公司 | 基于Linux系统的kafka集群自动部署方法和装置 |
CN109688006A (zh) * | 2018-12-24 | 2019-04-26 | 北京天元特通科技有限公司 | 支持目标集群动态探测的高性能网络日志消息分发方法 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103226518B (zh) * | 2012-01-31 | 2016-06-22 | 国际商业机器公司 | 一种在存储管理系统中进行卷扩展的方法和装置 |
CN104462432B (zh) * | 2014-12-15 | 2018-08-10 | 黄静 | 自适应的分布式计算方法 |
CN107967124B (zh) * | 2017-12-14 | 2021-02-05 | 南京云创大数据科技股份有限公司 | 一种分布式持久性内存存储系统及方法 |
-
2020
- 2020-05-26 CN CN202010457226.XA patent/CN111831221B/zh not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106453564A (zh) * | 2016-10-18 | 2017-02-22 | 北京京东尚科信息技术有限公司 | 弹性云分布式海量请求处理的方法、装置及系统 |
CN106713487A (zh) * | 2017-01-16 | 2017-05-24 | 腾讯科技(深圳)有限公司 | 数据的同步方法和装置 |
CN108073402A (zh) * | 2017-11-30 | 2018-05-25 | 山东鲁能软件技术有限公司 | 基于Linux系统的kafka集群自动部署方法和装置 |
CN109688006A (zh) * | 2018-12-24 | 2019-04-26 | 北京天元特通科技有限公司 | 支持目标集群动态探测的高性能网络日志消息分发方法 |
Also Published As
Publication number | Publication date |
---|---|
CN111831221A (zh) | 2020-10-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10347013B2 (en) | Session idle optimization for streaming server | |
CN107357896A (zh) | 数据库集群的扩容方法、装置、系统和数据库集群系统 | |
US20200097449A1 (en) | File management in thin provisioning storage environments | |
CN108572793B (zh) | 数据写入和数据恢复方法、装置、电子设备及存储介质 | |
CN111831221B (zh) | 一种基于云存储的分布式存储方法及系统 | |
CN106933868B (zh) | 一种调整数据分片分布的方法及数据服务器 | |
CN104050102B (zh) | 一种电信系统中的对象存储方法及装置 | |
US9378218B2 (en) | Apparatus and method for enabling clients to participate in data storage in distributed file system | |
CN111338773A (zh) | 一种分布式定时任务调度方法、调度系统及服务器集群 | |
CN102246152A (zh) | 保存程序执行状态 | |
CN105872016A (zh) | 一种桌面云中虚拟机的运行方法 | |
CN113961314B (zh) | 一种容器应用调度方法、装置、电子设备及存储介质 | |
CN111880956B (zh) | 一种数据同步方法和装置 | |
CN107817951B (zh) | 一种实现Ceph集群融合的方法及装置 | |
EP3384384A1 (en) | Methods and devices for acquiring data using virtual machine and host machine | |
CN105912698A (zh) | 磁盘中数据文件的删除方法及系统 | |
CN106095957A (zh) | 分布式文件系统的跨域多副本文件同步方法及装置 | |
CN105468296A (zh) | 基于虚拟化平台的无共享存储管理方法 | |
JP2016144169A (ja) | 通信システム、キュー管理サーバ、及び、通信方法 | |
CN112099991A (zh) | 数据备份及访问源数据的方法、装置、系统、存储介质 | |
KR101175505B1 (ko) | N?스크린 환경에서 네트워크 기반 파일 시스템을 이용한 사용자 데이터 저장환경 제공 시스템 | |
CN107943615B (zh) | 基于分布式集群的数据处理方法与系统 | |
CN116208487A (zh) | 区块链系统中的共识算法升级方法、装置、设备及介质 | |
CN114020457A (zh) | 一种OpenStack部署方法、装置及电子设备 | |
CN112559568A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20220923 |