CN109976669B - 一种边缘存储方法、装置和存储介质 - Google Patents

一种边缘存储方法、装置和存储介质 Download PDF

Info

Publication number
CN109976669B
CN109976669B CN201910199986.2A CN201910199986A CN109976669B CN 109976669 B CN109976669 B CN 109976669B CN 201910199986 A CN201910199986 A CN 201910199986A CN 109976669 B CN109976669 B CN 109976669B
Authority
CN
China
Prior art keywords
volume
file
sub
identification
target 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.)
Active
Application number
CN201910199986.2A
Other languages
English (en)
Other versions
CN109976669A (zh
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.)
Beijing Baidu Netcom Science and Technology Co Ltd
Original Assignee
Beijing Baidu Netcom Science and Technology Co Ltd
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 Beijing Baidu Netcom Science and Technology Co Ltd filed Critical Beijing Baidu Netcom Science and Technology Co Ltd
Priority to CN201910199986.2A priority Critical patent/CN109976669B/zh
Publication of CN109976669A publication Critical patent/CN109976669A/zh
Application granted granted Critical
Publication of CN109976669B publication Critical patent/CN109976669B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0626Reducing size or complexity of storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/0644Management of space entities, e.g. partitions, extents, pools
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/067Distributed 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

本发明实施例提出一种边缘存储方法、装置和存储介质。该方法包括:响应于对目标文件的存储请求,将所述目标文件保存在至少一个边缘节点中;其中,多个边缘节点分为多个卷,每个卷具有对应的卷标识,每个卷包括多个子卷,每个子卷具有对应的子卷标识;记录所述目标文件的标识、所述目标文件对应的卷标识以及子卷标识之间的第一映射关系。在边缘节点中保存文件时,记录文件的标识、文件对应的卷标识以及子卷标识之间的第一映射关系,可以减少记录映射关系的元数据的数据量,提高边缘存储系统的运行效率。

Description

一种边缘存储方法、装置和存储介质
技术领域
本发明涉及计算机技术领域,尤其涉及一种边缘存储方法、装置和存储介质。
背景技术
边缘存储将数据存储到网络的边缘节点上,如用户的路由器、NAS(网络附属存储)、用户电脑等设备上。由于边缘节点离用户更近,用户从边缘节点上访问数据速度会更快,将一些数据提前推送到用户周围的边缘节点中,将可以起到访问加速的作用。同时,用户可以将自己的闲置存储资源接入到边缘存储网络中,将闲置存储贡献出来,存储互联网服务商的数据,并获得收益。
目前传统的边缘存储数据组织结构各类方法中,一方面,记录文件切片与文件位置之间映射关系的数据量巨大,严重影响了边缘存储的存储效率,而且映射数据与文件切片之间的关系是耦合的,文件切片粒度越小映射数据存储量越大,导致文件切片不能过小;另一方面,由于映射数据存储量巨大,当某个边缘节点离开网络或发生改变时,需要更新的映射数据量也巨大,影响了系统运行效率。
发明内容
本发明实施例提供一种新型的本发明所述的边缘存储方法、装置和存储介质,以解决现有技术中的一个或多个技术问题。
第一方面,本发明实施例提供了一种边缘存储方法,包括:
响应于对目标文件的存储请求,将所述目标文件保存在至少一个边缘节点中;其中,多个边缘节点分为多个卷,每个卷具有对应的卷标识,每个卷包括多个子卷,每个子卷具有对应的子卷标识;
记录所述目标文件的标识、所述目标文件对应的卷标识以及子卷标识之间的第一映射关系。
在一种实施方式中,同一卷包括的多个子卷位于不同的边缘节点。
在一种实施方式中,响应于对目标文件的存储请求,将所述目标文件保存在至少一个边缘节点中,包括:
如果所述目标文件小于或等于所述预设子卷大小,则将所述目标文件作为整体保存在一个子卷中。
在一种实施方式中,响应于对目标文件的存储请求,将所述目标文件保存在至少一个边缘节点,还包括:
如果所述目标文件大于所述预设子卷大小,则将所述目标文件按照所述预设大小进行划分,得到多个文件切片;
将多个所述文件切片保存到多个子卷中。
在一种实施方式中,记录所述目标文件的标识、所述目标文件对应的卷标识以及子卷标识之间的第一映射关系,包括:
记录各所述文件切片的标识、各所述文件切片对应的卷标识以及子卷标识之间的第一映射关系;或者
记录所述目标文件的标识、各所述文件切片的标识、各所述文件切片对应的卷标识以及子卷标识之间的第一映射关系。
在一种实施方式中,该方法还包括:
记录卷标识、子卷标识与边缘节点的物理存储位置之间的第二映射关系。
在一种实施方式中,该方法还包括:
响应于对目标文件的读取请求,根据目标文件的标识,获取目标文件包括的各文件切片的标识;
根据所述第一映射关系,查找所述文件切片的标识对应的卷标识和子卷标识;
根据所述文件切片的标识对应的卷标识和子卷标识以及所述第二映射关系,查找各所述文件切片所在的边缘节点的物理存储位置;
从各所述文件切片所在的边缘节点的物理存储位置中读出各所述文件切片,组合得到所述目标文件。
第二方面,本发明实施例提供了一种边缘存储装置,包括:
保存模块,用于响应于对目标文件的存储请求,将所述目标文件保存在至少一个边缘节点中;其中,多个边缘节点分为多个卷,每个卷具有对应的卷标识,每个卷包括多个子卷,每个子卷具有对应的子卷标识;
第一记录模块,用于记录所述目标文件的标识、所述目标文件对应的卷标识以及子卷标识之间的第一映射关系。
在一种实施方式中,同一卷包括的多个子卷位于不同的边缘节点。
在一种实施方式中,所述保存模块包括:
第一保存子模块,用于如果所述目标文件小于或等于所述预设子卷大小,则将所述目标文件作为整体保存在一个子卷中。
在一种实施方式中,所述保存模块还包括:
第二保存子模块,用于如果所述目标文件大于所述预设子卷大小,则将所述目标文件按照所述预设大小进行划分,得到多个文件切片;将多个所述文件切片保存到多个子卷中。
在一种实施方式中,所述第一记录模块包括:
第一记录子模块,用于记录各所述文件切片的标识、各所述文件切片对应的卷标识以及子卷标识之间的第一映射关系;或者
第二记录子模块,用于记录所述目标文件的标识、各所述文件切片的标识、各所述文件切片对应的卷标识以及子卷标识之间的第一映射关系。
在一种实施方式中,该装置还包括:
第二记录模块,用于记录卷标识、子卷标识与边缘节点的物理存储位置之间的第二映射关系。
在一种实施方式中,该装置还包括:
获取模块,用于响应于对目标文件的读取请求,根据目标文件的标识,获取目标文件包括的各文件切片的标识;
第一查找模块,用于根据所述第一映射关系,查找所述文件切片的标识对应的卷标识和子卷标识;
第二查找模块,用于根据所述文件切片的标识对应的卷标识和子卷标识以及所述第二映射关系,查找各所述文件切片所在的边缘节点的物理存储位置;
读取模块,用于从各所述文件切片所在的边缘节点的物理存储位置中读出各所述文件切片,组合得到所述目标文件。
第三方面,本发明实施例提供了一种边缘存储装置,所述装置的功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。所述硬件或软件包括一个或多个与上述功能相对应的模块。
在一种实施方式中,所述装置的结构中包括处理器和存储器,所述存储器用于存储支持所述装置执行上述边缘存储方法的程序,所述处理器被配置为用于执行所述存储器中存储的程序。所述装置还可以包括通信接口,用于与其他设备或通信网络通信。
第四方面,本发明实施例提供了一种计算机可读存储介质,用于存储分布式训练装置所用的计算机软件指令,其包括用于执行上述边缘存储方法所涉及的程序。
上述技术方案中的一个技术方案具有如下优点或有益效果:多个边缘节点分为多个卷,每个卷具有对应的卷标识,每个卷包括多个子卷,每个子卷具有对应的子卷标识。在边缘节点中保存文件时,记录文件的标识、文件对应的卷标识以及子卷标识之间的第一映射关系,可以减少记录映射关系的元数据的数据量,提高边缘存储系统的运行效率。
上述技术方案中的另一个技术方案具有如下优点或有益效果:记录边缘存储结构的卷标识、子卷标识与边缘节点的物理存储位置之间的第二映射关系,在查找时,利用第一映射关系和第二映射关系可以查找到所需的文件。如果有边缘节点离开网络,需要更新的数据量少。
上述概述仅仅是为了说明书的目的,并不意图以任何方式进行限制。除上述描述的示意性的方面、实施方式和特征之外,通过参考附图和以下的详细描述,本发明进一步的方面、实施方式和特征将会是容易明白的。
附图说明
在附图中,除非另外规定,否则贯穿多个附图相同的附图标记表示相同或相似的部件或元素。这些附图不一定是按照比例绘制的。应该理解,这些附图仅描绘了根据本发明公开的一些实施方式,而不应将其视为是对本发明范围的限制。
图1示出根据本发明一实施例的边缘存储方法的流程图。
图2示出根据本发明一实施例的边缘存储方法中的边缘存储结构的示意图。
图3示出根据本发明另一实施例的边缘存储方法的流程图。
图4示出根据本发明另一实施例的边缘存储方法的流程图。
图5示出根据本发明另一实施例的边缘存储方法的应用示例中的边缘存储结构的示意图。
图6示出根据本发明另一实施例的边缘存储方法的应用示例中存储过程的示意图。
图7示出直接记录文件/文件切片的存储位置的示意图。
图8示出根据本发明一实施例的边缘存储装置的结构框图。
图9示出根据本发明另一实施例的边缘存储装置的结构框图。
图10示出根据本发明另一实施例的边缘存储装置的结构框图。
具体实施方式
在下文中,仅简单地描述了某些示例性实施例。正如本领域技术人员可认识到的那样,在不脱离本发明的精神或范围的情况下,可通过各种不同方式修改所描述的实施例。因此,附图和描述被认为本质上是示例性的而非限制性的。
图1示出根据本发明一实施例的边缘存储方法的流程图。如图1所示,该边缘存储方法的包括:
步骤S11、响应于对目标文件的存储请求,将所述目标文件保存在至少一个边缘节点中;其中,多个边缘节点分为多个卷,每个卷具有对应的卷标识,每个卷包括多个子卷,每个子卷具有对应的子卷标识。
步骤S12、记录所述目标文件的标识、所述目标文件对应的卷标识以及子卷标识之间的第一映射关系。
在一种实施方式中,在构建边缘存储环境时,可以将边缘存储的数据组织结构包括的多个边缘节点的存储空间划分为多个卷,并将每个卷划分为多个子卷。同一卷包括的多个子卷位于不同的边缘节点。例如,如图2所示,边缘节点1、边缘节点2、边缘节点3分为卷10、卷11和卷12。卷10的子卷包括分布于不同边缘节点的子卷10-01、子卷10-02和子卷10-03。卷11的子卷包括分布于不同边缘节点的子卷11-01和子卷11-02。卷12的子卷包括分布于不同边缘节点的子卷12-01和子卷12-02。以子卷10-01为例,其中的10表示卷标识,01表示卷10中的子卷标识。
在一种示例中,可以根据网络稳定性及数据修复效率,将多个边缘节点的存储空间划分为多个卷。每个卷具有唯一的卷标识。并且,可以利用纠删码(EC,Erasure Code)将每个卷划分为多个子卷。每个子卷在同一个卷中具有唯一的子卷标识。当网络稳定性较差时,边缘节点存储空间的划分粒度可以较细,这样当网络传输出现问题时,可以从边缘存储中读取文件的大部分文件切片,从而提高文件的读取效率。当数据修复效率较低时,边缘节点存储空间的划分粒度可以较细,这样当数据修复效率低时,即使读出部分文件切片,也可以修复出该文件的大部分内容,从而提高文件的读取效率。
在一种实施方式中,如图3所示,该边缘存储方法还包括:
步骤S10、记录卷标识、子卷标识与边缘节点的物理存储位置之间的第二映射关系。
具体地,将边缘存储的数据组织结构划分为卷和子卷后,数据中心可以通过第二映射关系记录每个卷、子卷所在边缘节点对应的物理存储位置例如:IP地址和端口号等。在对某个文件或文件切片进行读写操作时,利用该第二映射关系,可以实现对文件或文件切片的寻址定位。
此外,可以按照目标文件的大小进行存储,小的文件整体保存,大的文件则可以划分为多个文件切片进行保存。
在一种实施方式中,步骤S11可以包括:如果所述目标文件小于或等于所述预设子卷大小,则将所述目标文件作为整体保存在一个子卷中。
在一种实施方式中,步骤S11还可以包括:如果所述目标文件大于所述预设子卷大小,则将所述目标文件按照所述预设大小进行划分,得到多个文件切片;将多个所述文件切片保存到多个子卷中。
例如,预设子卷大小为256KB(KiloByte,千字节),待存储的目标文件仅为200KB,由于该文件大小小于256KB,则不需对文件进行文件切片,直接存入某个边缘节点的子卷中,并在数据中心的元数据中记录该文件的存储位置的映射数据。该映射关系中可以包括文件名、卷标识、子卷标识等。
在一种实施方式中,该边缘存储方法中,如果对文件进行划分得到多个文件切片,步骤S12还包括:
记录各所述文件切片的标识、各所述文件切片对应的卷标识以及子卷标识之间的第一映射关系;或者
记录所述目标文件的标识、各所述文件切片的标识、各所述文件切片对应的卷标识以及子卷标识之间的第一映射关系。
如图4所示,该边缘存储方法中,文件读取的过程可以包括:
步骤S41、响应于对目标文件的读取请求,根据目标文件的标识,获取目标文件包括的各文件切片的标识;
步骤S42、根据所述第一映射关系,查找所述文件切片的标识对应的卷标识和子卷标识;
步骤S43、根据所述文件切片的标识对应的卷标识和子卷标识以及所述第二映射关系,查找各所述文件切片所在的边缘节点的物理存储位置;
步骤S44、从各所述文件切片所在的边缘节点的物理存储位置中读出各所述文件切片,组合得到所述目标文件。
在文件写入过程中,数据中心记录了文件切片的标识、卷标识、子卷标识之间的第一映射关系。在文件读取过程中,利用第一映射关系,可以查找到各文件切片的标识对应的卷标识和子卷标识。然后,利用构建边缘存储环境时数据中心记录的第二映射关系,以及上述步骤中查找到的各文件切片的标识对应的卷标识和子卷标识,查找各文件切片所在的物理存储位置。从查找到的物理存储位置将各文件切片读出后,可以组合得到目标文件。
此外,在文件的修改、删除等流程中,查找到目标文件(或文件切片)在边缘节点的物理存储位置的原理与文件读取过程类似。利用第一映射关系和第二映射关系查找到待修改的目标文件(或文件切片)在边缘节点的物理存储位置,然后再修改或删除目标文件(或文件切片)中的指定内容。
本发明实施例的边缘存储结构中,多个边缘节点分为多个卷,每个卷具有对应的卷标识,每个卷包括多个子卷,每个子卷具有对应的子卷标识。在边缘节点中保存文件时,记录文件的标识、文件对应的卷标识以及子卷标识之间的第一映射关系,可以减少记录映射关系的元数据的数据量,提高边缘存储系统的运行效率。此外,记录边缘存储结构的卷标识、子卷标识与边缘节点的物理存储位置之间的第二映射关系,在查找时,利用第一映射关系和第二映射关系可以查找到所需的文件。如果有边缘节点离开网络,需要更新的数据量少。
在一个应用示例中,将多个边缘节点(也可以称为边缘设备)上的数据空间划分成多个卷(Volume),每个卷有唯一的标识。一个卷划分成多个子卷(Volumelet,可以简称为vlet),每个子卷在一个卷内有一个唯一编号,即子卷标识。同一个卷的不同子卷位于不同的边缘设备上。
如图5所示,Volume1-1表示卷标识为1且子卷标识为1的子卷。Volume 1-1和Volume 1-2组成一个完整的卷1。Volume 2-1和Volume 2-2组成一个完整的卷2。一个卷划分成多少个子卷可以是不固定的。例如,子卷的个数可以与EC编码后的总数据块数有关,每一个子卷的存储对应EC编码后的数据块,从而实现低副本数的冗余存储。
如图6所示,采用key表示文件。在实际应用中,在边缘存储结构中存储的数据不限于key,可以包括任意Key-Value等数据。在存储时文件或者文件切片被分配到对应的卷和子卷中。在元数据可以记录以下映射关系:
第一映射关系:Volume/Volumelet标识和边缘节点的对应关系。
第二映射关系:文件/文件切片和Volume/Volumelet标识的对应关系。
更进一步地,可以通过生成通用唯一识别码(UUID,Universally UniqueIdentifier)的方式记录Volume和Volumelet标识,节约文件/文件切片和Volume/Volumelet标识的对应关系存储的开销。例如,在边缘存储网络中,新增加一个文件/文件切片时,为该新增数据分配一个128位的UUID。该UUID的前64位表示Volume标识,后64位表示该数据在Volume内的唯一编号(即子卷标识)。通过该128位的UUID唯一指定一个对应的文件/文件切片。
比较而言,如图7所示,直接记录文件/文件切片的存储位置(例如IP地址和端口号)的数据组织方式具有以下特点:
(1)元数据数据量大,并且与文件切片(piece)大小是耦合的。piece大小越小,元数据的数据量越大。以存储1EB总数据量为例,如果piece大小为256KB,则总的元数据条目数约为3.9*10^12。按照每个条目数据大小约为50Byte(256位的哈希值(hash)+32位的IP地址表示+端口(PORT)开销+额外的数据结构开销)估算,需要的容量为195TB。计算公式如下:数据量=边缘节点总数据量/切片大小(或者文件大小)*单条元数据大小。
(2)当某个边缘设备离开网络时需要更新的数据量巨大。每一个存储在这台设备上的文件/文件切片都需要更新。按照单个节点提供100GB容量,每个piece大小为256KB计算,需要的条目数为3.9*10^5条。需要更新的元数据条目数=设备容量/平均切片大小(或者文件大小)。
如图6所示,本发明实施例的边缘存储的数据组织结构具有以下特点:
(1)元数据数据量小,元数据数据量与文件切片(piece)的大小解耦。以存储1EB总数据量为例,配置每个Volume的容量为400MB。使用基于Reed Solomon(里德-所罗门)算法的EC算法,按照4个数据块+4个校验块方式,编码生成8个Volumelet。Volumelet条目数为1EB/100MB=1*10^10条。按照每个条目数据大小约为50Byte(256位的哈希值(hash)+32位的IP地址表示+端口(PORT)开销+额外的数据结构开销)估算,数据量为500GB。和之前的195TB相比明显的减小了,并且文件/文件切片大小的变化,不会引起元数据量的变化,更好的兼容小文件的存储。
(2)当某个边缘设备离开网络时需要更新的数据量小。系统需要更新Volumelet对应的边缘节点列表。按照单个节点提供100GB容量,每个Volumelet大小为100MB计算,需要更新的条目数为1000条,与之前的3.9*10^5条相比小了300多倍。由于需要更新的数据量变小,使得及时修复损坏节点上的数据成为可能。
基于本发明实施例中的边缘存储数据组织结构,在日流失率(Churn Rate)高的边缘节点网络中,构建的边缘存储系统,具有低成本修复损坏数据,数据中心元数据开销小、可靠性高等特点。
图8示出根据本发明一实施例的边缘存储装置的结构框图。如图8所示,该装置可以包括:
保存模块81,用于响应于对目标文件的存储请求,将所述目标文件保存在至少一个边缘节点中;其中,多个边缘节点分为多个卷,每个卷具有对应的卷标识,每个卷包括多个子卷,每个子卷具有对应的子卷标识;
第一记录模块82,用于记录所述目标文件的标识、所述目标文件对应的卷标识以及子卷标识之间的第一映射关系。
在一种实施方式中,同一卷包括的多个子卷位于不同的边缘节点。
在一种实施方式中,如图9所示,所述保存模块81包括:
第一保存子模块811,用于如果所述目标文件小于或等于所述预设子卷大小,则将所述目标文件作为整体保存在一个子卷中。
在一种实施方式中,所述保存模块81还包括:
第二保存子模块812,用于如果所述目标文件大于所述预设子卷大小,则将所述目标文件按照所述预设大小进行划分,得到多个文件切片;将多个所述文件切片保存到多个子卷中。
在一种实施方式中,所述第一记录模块82包括:
第一记录子模块821,用于记录各所述文件切片的标识、各所述文件切片对应的卷标识以及子卷标识之间的第一映射关系;或者
第二记录子模块822,用于记录所述目标文件的标识、各所述文件切片的标识、各所述文件切片对应的卷标识以及子卷标识之间的第一映射关系。
在一种实施方式中,该装置还包括:
第二记录模块83,用于记录卷标识、子卷标识与边缘节点的物理存储位置之间的第二映射关系。
在一种实施方式中,该装置还包括:
获取模块84,用于响应于对目标文件的读取请求,根据目标文件的标识,获取目标文件包括的各文件切片的标识;
第一查找模块85,用于根据所述第一映射关系,查找所述文件切片的标识对应的卷标识和子卷标识;
第二查找模块86,用于根据所述文件切片的标识对应的卷标识和子卷标识以及所述第二映射关系,查找各所述文件切片所在的边缘节点的物理存储位置;
读取模块87,用于从各所述文件切片所在的边缘节点的物理存储位置中读出各所述文件切片,组合得到所述目标文件。
本发明实施例各装置中的各模块的功能可以参见上述方法中的对应描述,在此不再赘述。
图10示出根据本发明另一实施例的边缘存储装置的结构框图。如图10所示,该装置包括:存储器910和处理器920,存储器910内存储有可在处理器920上运行的计算机程序。所述处理器920执行所述计算机程序时实现上述实施例中的事务提交方法。所述存储器910和处理器920的数量可以为一个或多个。
该装置还包括:
通信接口930,用于与外界设备进行通信,进行数据交互传输。
存储器910可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。
如果存储器910、处理器920和通信接口930独立实现,则存储器910、处理器920和通信接口930可以通过总线相互连接并完成相互间的通信。所述总线可以是工业标准体系结构(ISA,Industry Standard Architecture)总线、外部设备互连(PCI,PeripheralComponent Interconnect)总线或扩展工业标准体系结构(EISA,Extended IndustryStandard Architecture)总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图10中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
可选的,在具体实现上,如果存储器910、处理器920及通信接口930集成在一块芯片上,则存储器910、处理器920及通信接口930可以通过内部接口完成相互间的通信。
本发明实施例提供了一种计算机可读存储介质,其存储有计算机程序,该程序被处理器执行时实现上述实施例中任一所述的方法。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或隐含地包括至少一个该特征。在本发明的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,“计算机可读介质”可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式只读存储器(CDROM)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本发明各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读存储介质中。所述存储介质可以是只读存储器,磁盘或光盘等。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到其各种变化或替换,这些都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。

Claims (14)

1.一种边缘存储方法,其特征在于,包括:
响应于对目标文件的存储请求,将所述目标文件保存在至少一个边缘节点中;其中,根据网络稳定性及数据修复效率,将多个边缘节点组成的存储空间分为多个卷,每个卷具有对应的卷标识,利用纠删码将每个卷划分为多个子卷,每个子卷具有对应的子卷标识,其中,当所述网络稳定性差时,边缘节点存储空间的划分粒度细,当所述数据修复效率低时,边缘节点存储空间的划分粒度细;
记录所述目标文件的标识、所述目标文件对应的卷标识以及子卷标识之间的第一映射关系;其中,所述每个卷包括的多个子卷位于不同的边缘节点。
2.根据权利要求1所述的方法,其特征在于,响应于对目标文件的存储请求,将所述目标文件保存在至少一个边缘节点中,包括:
如果所述目标文件小于或等于预设子卷大小,则将所述目标文件作为整体保存在一个子卷中。
3.根据权利要求1所述的方法,其特征在于,响应于对目标文件的存储请求,将所述目标文件保存在至少一个边缘节点,包括:
如果所述目标文件大于预设子卷大小,则将所述目标文件按照所述预设子卷大小进行划分,得到多个文件切片;
将多个所述文件切片保存到多个子卷中。
4.根据权利要求3所述的方法,其特征在于,记录所述目标文件的标识、所述目标文件对应的卷标识以及子卷标识之间的第一映射关系,包括:
记录各所述文件切片的标识、各所述文件切片对应的卷标识以及子卷标识之间的第一映射关系;或者
记录所述目标文件的标识、各所述文件切片的标识、各所述文件切片对应的卷标识以及子卷标识之间的第一映射关系。
5.根据权利要求1至4中任一项所述的方法,其特征在于,还包括:
记录卷标识、子卷标识与边缘节点的物理存储位置之间的第二映射关系。
6.根据权利要求5所述的方法,其特征在于,还包括:
响应于对目标文件的读取请求,根据目标文件的标识,获取目标文件包括的各文件切片的标识;
根据所述第一映射关系,查找所述文件切片的标识对应的卷标识和子卷标识;
根据所述文件切片的标识对应的卷标识和子卷标识以及所述第二映射关系,查找各所述文件切片所在的边缘节点的物理存储位置;
从各所述文件切片所在的边缘节点的物理存储位置中读出各所述文件切片,组合得到所述目标文件。
7.一种边缘存储装置,其特征在于,包括:
保存模块,用于响应于对目标文件的存储请求,将所述目标文件保存在至少一个边缘节点中;其中,根据网络稳定性及数据修复效率,将多个边缘节点组成的存储空间分为多个卷,每个卷具有对应的卷标识,利用纠删码将每个卷划分为多个子卷,每个子卷具有对应的子卷标识,其中,当所述网络稳定性差时,边缘节点存储空间的划分粒度细,当所述数据修复效率低时,边缘节点存储空间的划分粒度细;
第一记录模块,用于记录所述目标文件的标识、所述目标文件对应的卷标识以及子卷标识之间的第一映射关系;其中,所述每个卷包括的多个子卷位于不同的边缘节点。
8.根据权利要求7所述的装置,其特征在于,所述保存模块包括:
第一保存子模块,用于如果所述目标文件小于或等于预设子卷大小,则将所述目标文件作为整体保存在一个子卷中。
9.根据权利要求7所述的装置,其特征在于,所述保存模块还包括:
第二保存子模块,用于如果所述目标文件大于预设子卷大小,则将所述目标文件按照所述预设子卷大小进行划分,得到多个文件切片;将多个所述文件切片保存到多个子卷中。
10. 根据权利要求9所述的装置,其特征在于,所述第一记录模块包括:
第一记录子模块,用于记录各所述文件切片的标识、各所述文件切片对应的卷标识以及子卷标识之间的第一映射关系;或者
第二记录子模块,用于记录所述目标文件的标识、各所述文件切片的标识、各所述文件切片对应的卷标识以及子卷标识之间的第一映射关系。
11.根据权利要求7至9中任一项所述的装置,其特征在于,还包括:
第二记录模块,用于记录卷标识、子卷标识与边缘节点的物理存储位置之间的第二映射关系。
12.根据权利要求11所述的装置,其特征在于,还包括:
获取模块,用于响应于对目标文件的读取请求,根据目标文件的标识,获取目标文件包括的各文件切片的标识;
第一查找模块,用于根据所述第一映射关系,查找所述文件切片的标识对应的卷标识和子卷标识;
第二查找模块,用于根据所述文件切片的标识对应的卷标识和子卷标识以及所述第二映射关系,查找各所述文件切片所在的边缘节点的物理存储位置;
读取模块,用于从各所述文件切片所在的边缘节点的物理存储位置中读出各所述文件切片,组合得到所述目标文件。
13.一种边缘存储装置,其特征在于,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如权利要求1至6中任一项所述的方法。
14.一种计算机可读存储介质,其存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1至6中任一项所述的方法。
CN201910199986.2A 2019-03-15 2019-03-15 一种边缘存储方法、装置和存储介质 Active CN109976669B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910199986.2A CN109976669B (zh) 2019-03-15 2019-03-15 一种边缘存储方法、装置和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910199986.2A CN109976669B (zh) 2019-03-15 2019-03-15 一种边缘存储方法、装置和存储介质

Publications (2)

Publication Number Publication Date
CN109976669A CN109976669A (zh) 2019-07-05
CN109976669B true CN109976669B (zh) 2023-07-28

Family

ID=67079083

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910199986.2A Active CN109976669B (zh) 2019-03-15 2019-03-15 一种边缘存储方法、装置和存储介质

Country Status (1)

Country Link
CN (1) CN109976669B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110674082B (zh) * 2019-09-24 2023-03-14 北京字节跳动网络技术有限公司 移除在线文档的方法、装置、电子设备及计算机可读介质
CN111580753B (zh) * 2020-04-30 2023-10-10 中国工商银行股份有限公司 存储卷级联系统、批量作业处理系统和电子设备
CN111586141B (zh) * 2020-04-30 2023-04-07 中国工商银行股份有限公司 作业处理方法、装置、系统和电子设备
CN112882653A (zh) * 2021-01-26 2021-06-01 北京金山云网络技术有限公司 存储卷创建方法、装置及电子设备
CN114168083B (zh) * 2021-12-10 2023-08-08 四川爱联科技股份有限公司 一种数据存储系统、方法及电子设备

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108829765A (zh) * 2018-05-29 2018-11-16 平安科技(深圳)有限公司 一种信息查询方法、装置、计算机设备及存储介质
CN108874585A (zh) * 2018-05-25 2018-11-23 北京极秒科技有限公司 文件备份方法、装置及系统

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7774325B2 (en) * 2002-10-17 2010-08-10 Intel Corporation Distributed network attached storage system
US20100218037A1 (en) * 2008-09-16 2010-08-26 File System Labs Llc Matrix-based Error Correction and Erasure Code Methods and Apparatus and Applications Thereof
CN104216664B (zh) * 2013-06-26 2017-06-09 华为技术有限公司 网络卷创建方法、数据存储方法、存储设备和存储系统
CN103608784B (zh) * 2013-06-26 2015-06-10 华为技术有限公司 网络卷创建方法、数据存储方法、存储设备和存储系统
US10042914B2 (en) * 2015-06-10 2018-08-07 International Business Machines Corporation Database index for constructing large scale data level of details
CN109085999B (zh) * 2018-06-15 2022-04-22 华为技术有限公司 数据处理方法及处理系统

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108874585A (zh) * 2018-05-25 2018-11-23 北京极秒科技有限公司 文件备份方法、装置及系统
CN108829765A (zh) * 2018-05-29 2018-11-16 平安科技(深圳)有限公司 一种信息查询方法、装置、计算机设备及存储介质

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
IPTV中基于切片技术的内容存储策略研究;刘桂云;邵智超;;信息通信(第02期);全文 *
Parag S. Chandakkar ; Yikang Li ; Pak Lun Kevin Ding ; Baoxin Li.Strategies for Re-Training a Pruned Neural Network in an Edge Computing Paradigm.《2017 IEEE International Conference on Edge Computing (EDGE)》.2017,第244-247页. *
边缘缓存网络中的内容分发及基站休眠算法研究;吴天昊;《中国优秀硕士学位论文全文数据库 信息科技辑》;第I136-199页 *

Also Published As

Publication number Publication date
CN109976669A (zh) 2019-07-05

Similar Documents

Publication Publication Date Title
CN109976669B (zh) 一种边缘存储方法、装置和存储介质
US10592348B2 (en) System and method for data deduplication using log-structured merge trees
US10303363B2 (en) System and method for data storage using log-structured merge trees
US7761648B2 (en) Caching method for NAND flash translation layer
US20060080365A1 (en) Transparent migration of files among various types of storage volumes based on file access properties
US20180113767A1 (en) Systems and methods for data backup using data binning and deduplication
US20100312749A1 (en) Scalable lookup service for distributed database
WO2017113213A1 (zh) 访问请求处理方法、装置及计算机系统
KR20140042522A (ko) 디렉토리 엔트리 조회 장치, 그 방법 및 디렉토리 엔트리 조회 프로그램이 기록된 기록 매체
CN110765076A (zh) 数据存储方法、装置、电子设备及存储介质
CN109407985B (zh) 一种数据管理的方法以及相关装置
CN111475105A (zh) 监控数据存储方法、设备、服务器及存储介质
CN112559386A (zh) 提升ssd性能的方法、装置、计算机设备及存储介质
CN115840731A (zh) 文件处理方法、计算设备及计算机存储介质
CN111831691B (zh) 一种数据读写方法及装置、电子设备、存储介质
CN107590077B (zh) 一种Spark负载访存行为追踪方法及装置
CN113051568A (zh) 一种病毒检测方法、装置、电子设备及存储介质
CN109542860B (zh) 基于hdfs的业务数据管理方法、终端设备
CN108804571B (zh) 一种数据存储方法、装置以及设备
CN107704208B (zh) 一种元数据的修复方法、装置及介质
CN111857556A (zh) 管理存储对象的元数据的方法、装置和计算机程序产品
CN112269665B (zh) 内存的处理方法和装置、电子设备和存储介质
US11314430B2 (en) Reading data in sub-blocks using data state information
CN112395256B (zh) 一种数据读取方法、电子设备及计算机存储介质
CN110837345A (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