CN116974482A - Ess弹性存储系统、方法及装置 - Google Patents
Ess弹性存储系统、方法及装置 Download PDFInfo
- Publication number
- CN116974482A CN116974482A CN202310957127.1A CN202310957127A CN116974482A CN 116974482 A CN116974482 A CN 116974482A CN 202310957127 A CN202310957127 A CN 202310957127A CN 116974482 A CN116974482 A CN 116974482A
- Authority
- CN
- China
- Prior art keywords
- data
- ess
- storage
- client
- file
- 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
- 238000000034 method Methods 0.000 title claims abstract description 52
- 238000007726 management method Methods 0.000 claims description 40
- 238000004590 computer program Methods 0.000 claims description 10
- 238000005538 encapsulation Methods 0.000 claims description 10
- 230000005540 biological transmission Effects 0.000 claims description 7
- 238000013500 data storage Methods 0.000 claims description 7
- 230000006870 function Effects 0.000 claims description 4
- 238000012423 maintenance Methods 0.000 abstract description 3
- 238000010586 diagram Methods 0.000 description 8
- 238000012545 processing Methods 0.000 description 7
- 238000009825 accumulation Methods 0.000 description 2
- 230000003044 adaptive effect Effects 0.000 description 2
- 238000013459 approach Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000013523 data management Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
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
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/16—File or folder operations, e.g. details of user interfaces specifically adapted to file systems
-
- 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/17—Details of further file system functions
- G06F16/172—Caching, prefetching or hoarding 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/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/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)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明实施例公开了一种ESS弹性存储系统、方法及装置,包括ESS客户端、主存储管理模块和数据节点,ESS客户端用于提供API接口与外部的应用系统连接,主存储管理模块用于当接收到来自ESS客户端的文件存储请求时,分配给要存储的文件相应的存储位置,以使ESS客户端根据所述存储位置将文件存储至对应的数据节点;数据节点用于接收要存储的文件并进行解码处理,当校验该文件完整时进行保存。有效解决数据的存储和管理难题,将固定于某几个节点的文件系统,扩展到任意多个节点,众多的节点组成一个文件系统,只需根据系统进行相应配置信息调整,降低了产品从采购到后期使用、维护的成本。
Description
技术领域
本发明涉及存储技术领域,具体涉及一种ESS弹性存储系统、方法及装置。
背景技术
目前,随着企业系统各种数据的飞速增长以及日积月累的存量数据,单纯通过纵向扩展方式利用现有的存储系统,通过不断增加存储容量来满足数据增长的需求,而带宽和计算能力并没有相应的增加。所以,整个存储系统很快就会达到性能瓶颈,需要继续扩展。
为了解决以上问题传统方式有两种方法:一是采用更强性能的存储引擎(EMC的Clarion系统和NetApp的FAS系列,采用增加控制器CPU或内存的方式来提供更强的性能),但是这种方式问题在于价格昂贵;另外一种方法是额外购买的独立的存储系统,这样又会增加管理的复杂度且价格也比较昂贵。
发明内容
针对所述缺陷,本发明实施例公开了一种ESS弹性存储系统、方法及装置,其有效解决数据的存储和管理难题。
本发明实施例第一方面公开一种ESS弹性存储系统,包括ESS客户端、主存储管理模块和若干个数据节点,所述ESS客户端与主存储管理模块连接,所述数据节点与主存储管理模块连接;所述ESS客户端用于提供API接口与外部的应用系统连接,所述主存储管理模块用于当接收到来自ESS客户端的文件存储请求时,分配给要存储的文件相应的存储位置,以使ESS客户端根据所述存储位置将文件存储至对应的数据节点;所述数据节点用于接收要存储的文件并进行解码处理,当校验该文件完整时进行保存。
作为一种可选的实施方式,在本发明实施例第一方面中,还包括备份存储管理模块,所述备份存储管理模块连接主存储管理模块,用于当主存储管理模块无法正常工作时替代主存储管理模块。
本发明实施例第二方面公开了一种ESS弹性存储方法,包括:
接收来自ESS客户端的数据写入指令,获取当前空闲的数据节点,并基于所述数据写入指令分配存储位置,所述存储位置包括数据节点标识码和传输路径;
根据所述存储位置将所述数据写入至对应的数据节点,以使数据节点对所述数据进行校验;
当校验数据完整时接收来自数据节点的结果反馈,发送完成信号至ESS客户端。
作为一种可选的实施方式,在本发明实施例第二方面中,接收来自ESS客户端的数据写入指令之后,还包括:
根据数据写入指令判断所述数据为大文件或小文件;
当所述数据为大文件时,将所述数据按照预设规则分割成多个数据块,分别将所述数据块进行封装编码;
当所述数据为小文件时,将所述数据进行封装编码。
作为一种可选的实施方式,在本发明实施例第二方面中,当数据为小文件时,还分配给该数据写入指令对应于该数据的标识符。
作为一种可选的实施方式,在本发明实施例第二方面中,还包括:
接收来自ESS客户端的数据读取指令,获取所述数据对应的存储位置;
根据所述存储位置从对应的数据节点读取数据并发送给ESS客户端。
作为一种可选的实施方式,在本发明实施例第二方面中,当所述数据为小文件时,所述数据读取指令还包含数据对应的标识符。
本发明实施例第三方面公开了一种ESS弹性存储装置,包括:指令接收模块:用于接收来自ESS客户端的数据写入指令,获取当前空闲的数据节点,并基于所述数据写入指令分配存储位置,所述存储位置包括数据节点标识码和传输路径;
数据写入模块:用于根据所述存储位置将所述数据写入至对应的数据节点,以使数据节点对所述数据进行校验;
结果反馈模块:用于当校验数据完整时接收来自数据节点的结果反馈,发送完成信号至ESS客户端。
作为一种可选的实施方式,在本发明实施例第三方面中,接收来自ESS客户端的数据写入指令之后,还包括:
根据数据写入指令判断所述数据为大文件或小文件;
当所述数据为大文件时,将所述数据按照预设规则分割成多个数据块,分别将所述数据块进行封装编码;
当所述数据为小文件时,将所述数据进行封装编码。
作为一种可选的实施方式,在本发明实施例第三方面中,当数据为小文件时,还分配给该数据写入指令对应于该数据的标识符。
作为一种可选的实施方式,在本发明实施例第三方面中,还包括:
接收来自ESS客户端的数据读取指令,获取所述数据对应的存储位置;
根据所述存储位置从对应的数据节点读取数据并发送给ESS客户端。
作为一种可选的实施方式,在本发明实施例第三方面中,当所述数据为小文件时,所述数据读取指令还包含数据对应的标识符。
本发明实施例第四方面公开一种电子设备,包括:存储有可执行程序代码的存储器;与所述存储器耦合的处理器;所述处理器调用所述存储器中存储的所述可执行程序代码,用于执行本发明实施例第二方面公开的ESS弹性存储方法。
本发明实施例第五方面公开一种计算机可读存储介质,其存储计算机程序,其中,所述计算机程序使得计算机执行本发明实施例第二方面公开的ESS弹性存储方法。
与现有技术相比,本发明实施例具有以下有益效果:
本发明实施例中ESS(Elastic Storage System)是一个高可扩展、高可用、高性能、面向网络服务的弹性存储系统,有效解决数据的存储和管理难题,将固定于某几个节点的文件系统,扩展到任意多个节点,众多的节点组成一个文件系统,每个节点使用何种类型的操作系统、内存、存储系统、CPU、I/O宽度等,客户可以真正实现按需采购,本发明无要求且针对不同企业存储系统也无需进行适应性开发,只需根据系统进行相应配置信息调整。这种方式极大降低了产品从采购到后期使用、维护的成本。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例公开的一种ESS弹性存储系统的结构示意图;
图2是本发明实施例公开的一种ESS弹性存储系统的网络拓扑图;
图3是本发明实施例公开的一种ESS弹性存储方法的流程示意图;
图4是本发明实施例公开的另一种ESS弹性存储方法的流程示意图;
图5是本发明实施例提供的一种ESS弹性存储装置的结构示意图;
图6是本发明实施例提供的一种电子设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书中的术语“第一”、“第二”、“第三”、“第四”等是用于区别不同的对象,而不是用于描述特定顺序。本发明实施例的术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,示例性地,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
本发明实施例公开了一种ESS弹性存储方法方法、装置、电子设备及存储介质,实施例中ESS(Elastic Storage System)是一个高可扩展、高可用、高性能、面向网络服务的弹性存储系统,有效解决数据的存储和管理难题,将固定于某几个节点的文件系统,扩展到任意多个节点,众多的节点组成一个文件系统,每个节点使用何种类型的操作系统、内存、存储系统、CPU、I/O宽度等,客户可以真正实现按需采购,本发明无要求且针对不同企业存储系统也无需进行适应性开发,只需根据系统进行相应配置信息调整。这种方式极大降低了产品从采购到后期使用、维护的成本。
实施例一
请参考图1和图2,图1是本发明实施例公开的一种ESS弹性存储系统的结构示意图,图2是本发明实施例公开的一种ESS弹性存储系统的系统架构图。如图1和图2所示,该ESS弹性存储系统包括ESS客户端、主存储管理模块和若干个数据节点。其中,多个ESS客户端也即是图2的系统架构图中的系统1、系统2和系统3,主存储管理模块是图2所示出的NameNode,数据节点是图2所示出的DataNode。
所述ESS客户端与主存储管理模块连接,所述数据节点与主存储管理模块连接;所述ESS客户端用于提供API接口与外部的应用系统连接,所述主存储管理模块用于当接收到来自ESS客户端的文件存储请求时,分配给要存储的文件相应的存储位置,以使ESS客户端根据所述存储位置将文件存储至对应的数据节点;所述数据节点用于接收要存储的文件并进行解码处理,当校验该文件完整时进行保存。
实施例的ESS(Elastic Storage System)弹性存储系统由“ESS客户端”、“NameNode”、“SecondaryNameNode”、“数据节点”四个功能模块组成,各个功能模块之间使用高扩展性、高性能的NIO高可用网络框架进行信息交互。ESS客户端为客户端驱动包,提供访问ESS弹性存储系统的原生API接口。应用系统可以通过API接口访问弹性存储系统,并进行文件的保存与读取。“NameNode”管理弹性存储系统的命名空间,它维护着弹性存储系统目录树及目录下所有的文件;执行副本策略;监控“数据节点”状态;接受并处理“ESS客户端”请求。“数据节点”为弹性存储系统的工作节点(数据存储节点),它们根据需要存储并检索“数据块”和“Map文件”(受客户端或NameNode调度),并且周期性的向NameNode发送它们的心跳信息。
进一步的,还包括备份存储管理模块,所述备份存储管理模块连接主存储管理模块,用于当主存储管理模块无法正常工作时替代主存储管理模块。
备份存储管理模块也即是图2中所示出的SecondaryNameNode,“SecondaryNameNode”是NameNode的冷备份防止单点风险,当NameNode无法正常工作将代替NameNode进行工作。
实施例二
请参阅图3,图3是本发明实施例公开的一种ESS弹性存储方法的流程示意图。其中,本发明实施例所描述的方法的执行主体为由软件或/和硬件组成的执行主体,该执行主体可以通过有线或/和无线方式接收相关信息,并可以发送一定的指令。当然,其还可以具有一定的处理功能和存储功能。该执行主体可以控制多个设备,例如远程的物理服务器或云服务器以及相关软件,也可以是对某处安置的设备进行相关操作的本地主机或服务器以及相关软件等。在一些场景中,还可以控制多个存储设备,存储设备可以与设备放置于同一地方或不同地方。如图3所示,该ESS弹性存储方法包括以下步骤:
301、接收来自ESS客户端的数据写入指令,获取当前空闲的数据节点,并基于所述数据写入指令分配存储位置,所述存储位置包括数据节点标识码和传输路径。
实施例的存储方法包括写入方法,也即是从外部的应用系统通过ESS客户端将文件写入至数据节点中进行存储。此时在ESS客户端对文件进行封包和编码,然后发送请求上传文件指令至主存储管理模块,也即是数据写入指令。
302、根据所述存储位置将所述数据写入至对应的数据节点,以使数据节点对所述数据进行校验。
主存储管理模块街道数据写入指令时,为数据分配存储位置,并返回该存储位置给ESS客户端。然后根据该存储位置,将数据传输至对应的数据节点进行保存。
303、当校验数据完整时接收来自数据节点的结果反馈,发送完成信号至ESS客户端。
在数据节点中,接收到数据后先进行解码,然后校验数据包的完整性再信息保存,最后将保存结果反馈给主存储管理模块,然后由主存储管理模块再发送结束上传指令给ESS客户端,也即是发送完成信号。
在另一个示例中,图4还示出了本发明实施例公开的另一种ESS弹性存储方法,如图4所示,该ESS弹性存储方法包括:
401、接收来自ESS客户端的数据写入指令,根据数据写入指令判断所述数据为大文件或小文件。当所述数据为大文件时,将所述数据按照预设规则分割成多个数据块,分别将所述数据块进行封装编码;当所述数据为小文件时,将所述数据进行封装编码。
402、获取当前空闲的数据节点,并基于所述数据写入指令分配存储位置,所述存储位置包括数据节点标识码和传输路径。当数据为小文件时,还分配给该数据写入指令对应于该数据的标识符。
403、根据所述存储位置将所述数据写入至对应的数据节点,以使数据节点对所述数据进行校验。
404、当校验数据完整时接收来自数据节点的结果反馈,发送完成信号至ESS客户端。
405、接收来自ESS客户端的数据读取指令,获取所述数据对应的存储位置。当所述数据为小文件时,所述数据读取指令还包含数据对应的标识符。
406、根据所述存储位置从对应的数据节点读取数据并发送给ESS客户端。
实施例中包括了数据写入和数据读取,ESS客户端针对大文件和小文件进行不同的处理,对于大文件,按数据块大小配置,将大文件切割成多个数据块,并逐个进行封包编码,然后再向主存储管理模块发送文件上传请求。对于小文件,则直接进行封包编码,并且当主存储管理模块接收到小文件上传请求时除了分配存储位置还分配标识符。
在数据读取中,针对大文件,像主存储管理模块发送文件读取请求,获取文件对应的数据存储位置列表信息,依据存储位置列表信息从各个节点读取数据块数据,将文件各个数据块解码合并获得文件的完整数据。针对小文件,根据文件路径和标识符向主存储管理模块发送小文件读取请求,获取小文件对应的数据存储位置,根据存储位置从指定节点读取小文件数据,将小文件数据解码获得小文件的完整数据。
实施例中,每个节点往往将包含容量、处理能力和I/O带宽。一个节点被添加到存储系统,系统中的三种资源将同时升级。系统扩展时无需停止服务,只需将新节点的网络接入然后通过管理平台实时添加节点即可,支持热部署。从用户的视角看起来仍然是一个单一的系统,这一点与我们将多个相互独立的存储系统简单的叠加在一个机柜中是完全不同的。于java平台实现ESS弹性存储系统的跨平台部署。海量小文件支持合并存储,合并存储的Map文件中以key=value进行保存,为每个小文件分配一个key值,将每个小文件的二进制数据封装成一个value数据块进行保存,可以通过key值快速读取对应文件value数据。大文件支持分割成多个数据块进行存储,每个数据块分布到不同的数据节点其有一个或多个副本。每个数据块的大小,数据块副本个数都可以通过配置文件进行配置。提供原生API接口简化了文件的访问流程,为ESS提供了良好的读写性能。
实施例三
请参阅图5,图5是本发明实施例公开的一种ESS弹性存储装置的结构示意图。如图5所示,该ESS弹性存储装置可以包括:指令接收模块501:用于接收来自ESS客户端的数据写入指令,获取当前空闲的数据节点,并基于所述数据写入指令分配存储位置,所述存储位置包括数据节点标识码和传输路径;数据写入模块502:用于根据所述存储位置将所述数据写入至对应的数据节点,以使数据节点对所述数据进行校验;结果反馈模块503:用于当校验数据完整时接收来自数据节点的结果反馈,发送完成信号至ESS客户端。
在指令接收模块501中,接收来自ESS客户端的数据写入指令之后,还可以包括根据数据写入指令判断所述数据为大文件或小文件;当所述数据为大文件时,将所述数据按照预设规则分割成多个数据块,分别将所述数据块进行封装编码;当所述数据为小文件时,将所述数据进行封装编码。
当数据为小文件时,还分配给该数据写入指令对应于该数据的标识符。
实施例还包括读取指令模块和位置发送模块,读取指令模块用于接收来自ESS客户端的数据读取指令,获取所述数据对应的存储位置;位置发送模块用于根据所述存储位置从对应的数据节点读取数据并发送给ESS客户端。而当数据为小文件时,所述数据读取指令还包含数据对应的标识符。
实施例四
请参阅图6,图6是本发明实施例公开的一种电子设备的结构示意图。电子设备可以是计算机以及服务器等,当然,在一定情况下,还可以是手机、平板电脑以及监控终端等智能设备,以及具有处理功能的图像采集装置。如图6所示,该电子设备可以包括:
存储有可执行程序代码的存储器601;
与存储器601耦合的处理器602;
其中,处理器602调用存储器601中存储的可执行程序代码,执行实施例二中的ESS弹性存储方法中的部分或全部步骤。
本发明实施例公开一种计算机可读存储介质,其存储计算机程序,其中,该计算机程序使得计算机执行实施例二中的ESS弹性存储方法中的部分或全部步骤。
本发明实施例还公开一种计算机程序产品,其中,当计算机程序产品在计算机上运行时,使得计算机执行实施例二中的ESS弹性存储方法中的部分或全部步骤。
本发明实施例还公开一种应用发布平台,其中,应用发布平台用于发布计算机程序产品,其中,当计算机程序产品在计算机上运行时,使得计算机执行实施例二中的ESS弹性存储方法中的部分或全部步骤。
在本发明的各种实施例中,应理解,所述各过程的序号的大小并不意味着执行顺序的必然先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物单元,即可位于一个地方,或者也可以分布到多个网络单元上。可根据实际的需要选择其中的部分或全部单元来实现本实施例方案的目的。
另外,在本发明各实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。所述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元若以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可获取的存储器中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或者部分,可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储器中,包括若干请求用以使得一台计算机设备(可以为个人计算机、服务器或者网络设备等,具体可以是计算机设备中的处理器)执行本发明的各个实施例所述方法的部分或全部步骤。
在本发明所提供的实施例中,应理解,“与A对应的B”表示B与A相关联,根据A可以确定B。但还应理解,根据A确定B并不意味着仅仅根据A确定B,还可以根据A和/或其他信息确定B。
本领域普通技术人员可以理解所述实施例的各种方法中的部分或全部步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质包括只读存储器(Read-Only Memory,ROM)、随机存储器(Random Access Memory,RAM)、可编程只读存储器(Programmable Read-only Memory,PROM)、可擦除可编程只读存储器(Erasable Programmable Read-Only Memory,EPROM)、一次可编程只读存储器(One-time Programmable Read-Only Memory,OTPROM)、电子抹除式可复写只读存储器(Electrically-Erasable Programmable Read-Only Memory,EEPROM)、只读光盘(CompactDisc Read-Only Memory,CD-ROM)或其他光盘存储器、磁盘存储器、磁带存储器、或者能够用于携带或存储数据的计算机可读的任何其他介质。
以上对本发明实施例公开的ESS弹性存储系统、方法、装置、电子设备及存储介质进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (10)
1.一种ESS弹性存储系统,其特征在于,包括ESS客户端、主存储管理模块和若干个数据节点,所述ESS客户端与主存储管理模块连接,所述数据节点与主存储管理模块连接;所述ESS客户端用于提供API接口与外部的应用系统连接,所述主存储管理模块用于当接收到来自ESS客户端的文件存储请求时,分配给要存储的文件相应的存储位置,以使ESS客户端根据所述存储位置将文件存储至对应的数据节点;所述数据节点用于接收要存储的文件并进行解码处理,当校验该文件完整时进行保存。
2.根据权利要求1所述的ESS弹性存储系统,其特征在于,还包括备份存储管理模块,所述备份存储管理模块连接主存储管理模块,用于当主存储管理模块无法正常工作时替代主存储管理模块。
3.一种ESS弹性存储方法,其特征在于,包括:
接收来自ESS客户端的数据写入指令,获取当前空闲的数据节点,并基于所述数据写入指令分配存储位置,所述存储位置包括数据节点标识码和传输路径;
根据所述存储位置将所述数据写入至对应的数据节点,以使数据节点对所述数据进行校验;
当校验数据完整时接收来自数据节点的结果反馈,发送完成信号至ESS客户端。
4.根据权利要求3所述的ESS弹性存储方法,其特征在于,接收来自ESS客户端的数据写入指令之后,还包括:
根据数据写入指令判断所述数据为大文件或小文件;
当所述数据为大文件时,将所述数据按照预设规则分割成多个数据块,分别将所述数据块进行封装编码;
当所述数据为小文件时,将所述数据进行封装编码。
5.根据权利要求4所述的ESS弹性存储方法,其特征在于,当数据为小文件时,还分配给该数据写入指令对应于该数据的标识符。
6.根据权利要求3所述的ESS弹性存储方法,其特征在于,还包括:
接收来自ESS客户端的数据读取指令,获取所述数据对应的存储位置;
根据所述存储位置从对应的数据节点读取数据并发送给ESS客户端。
7.根据权利要求6所述的ESS弹性存储方法,其特征在于,当所述数据为小文件时,所述数据读取指令还包含数据对应的标识符。
8.一种ESS弹性存储装置,其特征在于,包括:
指令接收模块:用于接收来自ESS客户端的数据写入指令,获取当前空闲的数据节点,并基于所述数据写入指令分配存储位置,所述存储位置包括数据节点标识码和传输路径;
数据写入模块:用于根据所述存储位置将所述数据写入至对应的数据节点,以使数据节点对所述数据进行校验;
结果反馈模块:用于当校验数据完整时接收来自数据节点的结果反馈,发送完成信号至ESS客户端。
9.一种电子设备,其特征在于,包括:存储有可执行程序代码的存储器;与所述存储器耦合的处理器;所述处理器调用所述存储器中存储的所述可执行程序代码,用于执行权利要求3至7任一项所述的ESS弹性存储方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储计算机程序,其中,所述计算机程序使得计算机执行权利要求3至7任一项所述的ESS弹性存储方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310957127.1A CN116974482A (zh) | 2023-08-01 | 2023-08-01 | Ess弹性存储系统、方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310957127.1A CN116974482A (zh) | 2023-08-01 | 2023-08-01 | Ess弹性存储系统、方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116974482A true CN116974482A (zh) | 2023-10-31 |
Family
ID=88480987
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310957127.1A Pending CN116974482A (zh) | 2023-08-01 | 2023-08-01 | Ess弹性存储系统、方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116974482A (zh) |
-
2023
- 2023-08-01 CN CN202310957127.1A patent/CN116974482A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11928029B2 (en) | Backup of partitioned database tables | |
US11010240B2 (en) | Tracking status and restarting distributed replication | |
US11327799B2 (en) | Dynamic allocation of worker nodes for distributed replication | |
US11809726B2 (en) | Distributed storage method and device | |
US20200348852A1 (en) | Distributed object replication architecture | |
US20200186602A1 (en) | Continuous backup of data in a distributed data store | |
US11349915B2 (en) | Distributed replication and deduplication of an object from a source site to a destination site | |
US10747746B2 (en) | Efficient read replicas | |
US9699017B1 (en) | Dynamic utilization of bandwidth for a quorum-based distributed storage system | |
CN103152390B (zh) | 分布式存储系统的节点配置方法、装置、节点及系统 | |
CN105630418A (zh) | 一种数据存储方法及装置 | |
CN110753084B (zh) | 上链数据读取方法、缓存服务器及计算机可读存储介质 | |
US20170153909A1 (en) | Methods and Devices for Acquiring Data Using Virtual Machine and Host Machine | |
CN102255866A (zh) | 一种数据下载方法及装置 | |
CN110099084A (zh) | 一种保证存储服务可用性的方法、系统及计算机可读介质 | |
CN114422537B (zh) | 多云存储系统、多云数据读写方法及电子设备 | |
CN112748877A (zh) | 一种文件的整合上传方法及装置、文件的下载方法及装置 | |
CN116974482A (zh) | Ess弹性存储系统、方法及装置 | |
US11531642B2 (en) | Synchronous object placement for information lifecycle management | |
CN112688980B (zh) | 资源分发方法、装置、计算机设备 | |
CN108023914B (zh) | 一种内存数据共享系统、内存数据的写入以及读取方法 | |
CN117255101B (zh) | 分布式存储系统的数据处理方法、装置、设备及介质 | |
CN111399763B (zh) | 数据存储的方法、装置、系统、设备及存储介质 | |
EP4174645A1 (en) | Mirror image distribution method, electronic device, and storage medium | |
CN116301561A (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 |