CN111158613B - 基于访问热度的数据块存储方法、装置及存储设备 - Google Patents

基于访问热度的数据块存储方法、装置及存储设备 Download PDF

Info

Publication number
CN111158613B
CN111158613B CN202010263023.7A CN202010263023A CN111158613B CN 111158613 B CN111158613 B CN 111158613B CN 202010263023 A CN202010263023 A CN 202010263023A CN 111158613 B CN111158613 B CN 111158613B
Authority
CN
China
Prior art keywords
file
storage
target
data block
data blocks
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
CN202010263023.7A
Other languages
English (en)
Other versions
CN111158613A (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.)
Shanghai Feiqi Network Technology Co ltd
Original Assignee
Shanghai Feiqi Network 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 Shanghai Feiqi Network Technology Co ltd filed Critical Shanghai Feiqi Network Technology Co ltd
Priority to CN202010263023.7A priority Critical patent/CN111158613B/zh
Publication of CN111158613A publication Critical patent/CN111158613A/zh
Application granted granted Critical
Publication of CN111158613B publication Critical patent/CN111158613B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/0604Improving or facilitating administration, e.g. storage management
    • 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/064Management of blocks
    • 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

基于访问热度的数据块存储方法、装置及存储设备
技术领域
本申请涉及分布式存储技术领域,具体而言,涉及一种基于访问热度的数据块存储方法、装置及存储设备。
背景技术
在分布式存储技术中,可将文件分块处理后的数据块分布存储到云存储集群的各个存储节点中。客户端可通过各个存储节点上的数据块获得完整的文件,获取完整文件的响应时长是衡量云存储集群存储性能的关键指标。然而,由于在对文件分布式存储之前,并不知道文件未来被访问的频率,若已经分布存储在存储节点上的数据块的响应时间过长,会导致访问热度较高的文件在访问过程中,文件访问整体响应时间过长,影响用户体验。因此,如何缩短访问热度较高的文件在访问过程中的响应时长,是本领域技术人员急需解决的技术问题。
发明内容
有鉴于此,本申请的目的在于提供一种基于访问热度的数据块方法、装置及存储设备,能够将访问热度较高文件中响应时间过长的数据块进行重新转存储,从而能缩短整个文件被访问时的响应时长,提高用户体验。
根据本申请的第一方面,提供一种基于访问热度的数据块存储方法,应用于与云存储集群中各个存储节点通信的存储设备,其中,所述存储节点上分布存储有各个文件的数据块,所述方法包括:
获取所述各个文件在预设时间段内被访问的次数,若存在所述预设时间段内被访问的次数超过第一预设次数的目标文件,则获取该目标文件在所述预设时间段内每次被访问的响应时长;
若所述目标文件在所述预设时间段内,被访问的响应时长大于第一预设时长的次数超过第二预设次数,则获取所述目标文件在被访问的响应时长大于第一预设时长的文件访问过程中,所述目标文件中各个数据块的响应时长,其中,所述第二预设次数小于所述第一预设次数;
将所述目标文件中数据块的响应时长大于第二预设时长的数据块标记为目标数据块,在所述多个存储节点中确定被访问的响应时长小于第二预设时长的存储节点作为目标存储节点,将所述目标数据块从当前的存储节点转存储到所述目标存储节点上,并更新所述目标数据块的存储地址信息。
在第一方面的一种可能的实施方式中,在获取各个文件在预设时间段内被访问的次数之前,所述方法还包括:
将待存储文件进行分块处理得到多个数据块;
根据所述待存储文件预先标记的文件种类,以及所述多个存储节点中已存储数据块所对应文件的文件种类,将分块处理后得到的所述多个数据块按照数据块对应文件的文件种类均匀分布到所述存储节点中,并记录各个存入数据块的存储地址。
在第一方面的一种可能的实施方式中,根据所述待存储文件预先标记的文件种类,以及所述多个存储节点中已存储数据块所对应文件的文件种类,将分块处理后得到的所述多个数据块按照数据块对应文件的文件种类均匀分布到所述存储节点中,并记录各个存入数据块的存储地址的步骤,包括:
统计所述多个存储节点中已存储的和所述待存储文件预先标记的文件种类相同的数据块数量;
将所述待存储文件分块处理后得到的所述多个数据块优先分配存储到已存储的和所述待存储文件预先标记的文件种类相同的数据块数量最少的存储节点中。
在第一方面的一种可能的实施方式中,在所述多个存储节点中确定被访问的响应时长小于第二预设时长的存储节点作为目标存储节点的步骤,包括:
基于所述目标数据块的数据属性从预先训练得到的存储节点预测模型中确定目标存储节点,其中,所述数据属性包括所述目标数据块所对应文件的种类及目标数据块的大小。
在第一方面的一种可能的实施方式中,所述方法还包括训练得到的存储节点预测模型的步骤,该步骤包括:
根据历史每次访问所述存储节点中数据块时所述存储节点的节点资源、命中数据块所对应文件的文件种类、命中数据块的大小、响应时间生成训练样本向量;
将生成的训练样本向量输入神经网络模型进行训练,在所述神经网络模型的损失函数值小于预设值时,结束对所述神经网络模型的训练,得到所述存储节点预测模型。
在第一方面的一种可能的实施方式中,将生成的训练样本向量输入神经网络模型进行训练,在所述神经网络模型的损失函数值小于预设值时,结束对所述神经网络模型的训练,得到所述存储节点预测模型的步骤,包括:
将每个所述训练样本向量中存储节点的节点资源、命中数据块所对应文件的文件种类及命中数据块的大小作为输入数据,输入所述神经网络模型中训练,以预测的响应时间作为输出;
根据所述预测的响应时间与所述训练样本向量中响应时间计算所述神经网络模型的损失函数值;
在所述神经网络模型的损失函数值不小于预设值时,调整所述神经网络模型中的模型参数并重复上述步骤,直到所述神经网络模型的损失函数值小于预设值,确定对应的模型参数,得到所述存储节点预测模型。
在第一方面的一种可能的实施方式中,将所述目标文件中数据块的响应时长大于第二预设时长的数据块标记为目标数据块,基于所述目标数据块的数据属性从预先训练得到的存储节点预测模型中确定目标存储节点,将所述目标数据块从当前的存储节点转存储到所述目标存储节点上的步骤,包括:
将所述目标文件中数据块的响应时长大于第二预设时长的数据块标记为目标数据块,并将该目标数据块所在的存储节点标记为源存储节点;
将所述目标数据块的数据属性输入到所述存储节点预测模型中,所述存储节点预测模型预测各个存储节点将所述目标数据块存储后进行访问的响应时长,并将所述响应时长最短的存储节点作为目标存储节点;
将所述目标数据块存储到所述目标存储节点中,并将所述源存储节点中存储的所述目标数据块删除。
根据本申请的第二方面,提供一种基于访问热度的数据块存储装置,应用于与云存储集群中各个存储节点通信的存储设备,其中,所述存储节点上分布存储有各个文件的数据块,所述基于访问热度的数据块存储装置包括:
第一获取模块,用于获取所述各个文件在预设时间段内被访问的次数,若存在所述预设时间段内被访问的次数超过第一预设次数的目标文件,则获取该目标文件在所述预设时间段内每次被访问的响应时长;
第二获取模块,用于若所述目标文件在所述预设时间段内,被访问的响应时长大于第一预设时长的次数超过第二预设次数,则获取所述目标文件在被访问的响应时长大于第一预设时长的文件访问过程中,所述目标文件中各个数据块的响应时长,其中,所述第二预设次数小于所述第一预设次数;
转存储模块,用于将所述目标文件中数据块的响应时长大于第二预设时长的数据块标记为目标数据块,在所述多个存储节点中确定被访问的响应时长小于第二预设时长的存储节点作为目标存储节点,将所述目标数据块从当前的存储节点转存储到所述目标存储节点上,并更新所述目标数据块的存储地址信息。
根据本申请的第三方面,提供一种存储设备,所述存储设备包括机器可读存储介质及处理器,所述机器可读存储介质存储有机器可执行指令,所述处理器在执行所述机器可执行指令时,该存储设备实现第一方面所述的基于访问热度的数据块存储方法。
根据本申请的第四方面,提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机可执行指令,当所述计算机可执行指令被执行时,实现第一方面所述的基于访问热度的数据块存储方法。
基于上述任一方面,本申请通过对已存储在云存储集群的各个文件的访问热度进行监控,并获取各个访问热度较高文件的访问响应时间,在访问热度较高文件的访问响应时间较长时,对该访问热度较高文件中影响文件整体访问响应时间的数据块进行转存储,以降低此类数据块的响应时长,从而降低整个文件的访问响应时长,提高用户对访问热度较高文件的访问效率。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1示出了本申请实施例所提供的分布式存储系统的应用场景示意图;
图2示出了图1分布式存储系统中存储设备的组件结构示意图;
图3示出了本申请实施例所提供的基于访问热度的数据块存储方法的流程示意图之一;
图4示出了本申请实施例所提供的基于访问热度的数据块存储方法的流程示意图之二;
图5示出了图4中步骤S109的子步骤流程示意图;
图6示出了本申请实施例所提供的存储节点预测模型的训练流程图;
图7示出了图6中步骤S202的子步骤流程示意图;
图8示出了图3中步骤S130的子步骤流程示意图;
图9示出了本申请实施例所提供的基于访问热度的数据块存储装置的功能模块示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,应当理解,本申请中附图仅起到说明和描述的目的,并不用于限定本申请的保护范围。另外,应当理解,示意性的附图并未按实物比例绘制。本申请中使用的流程图示出了根据本申请实施例的一些实施例实现的操作。应该理解,流程图的操作可以不按顺序实现,没有逻辑的上下文关系的步骤可以反转顺序或者同时实施。此外,本领域技术人员在本申请内容的指引下,可以向流程图添加一个或多个其它操作,也可以从流程图中移除一个或多个操作。
另外,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。因此,可以理解地是,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其它实施例,都属于本申请保护的范围。
图1示出了本申请实施例所提供的分布式存储系统10的应用场景示意图。本实施例中,分布式存储系统10可以包括存储设备100以及与存储设备100通信连接的云存储集群200。云存储集群200中可以包括多个存储节点210,存储节点210可以是位于云端且具有数据存储能力的计算机设备,在本申请实施例中存储节点210用于分布式存储各种数据块。
在其它可行的实施例中,该分布式存储系统10也可以仅包括图1所示组成部分的其中一部分或者还可以包括其它的组成部分。
在一些实施例中,存储设备100可以是单个存储设备,也可以是有多个存储设备组成的存储设备组。在一些实施例中,存储设备100相对于云存储集群200,可以是本地的、也可以是远程的。例如,存储设备100可以经由网络访问存储在云存储集群200中的信息和/或数据(比如,本申请实施例所述文件的数据块)。作为另一示例,存储设备100可以有线连接直接连接到云存储集群200,以访问其中存储的信息和/或数据。
请参照图2,图2为本申请实施例提供的一种存储设备100的结构示意图。所述存储设备100包括基于访问热度的数据块存储装置110、存储器111、处理器112及通信单元113。
所述存储器111、处理器112及通信单元113的各元件相互之间直接或间接地电性连接,以实现数据的传输或交互。例如,这些元件相互之间可通过一条或多条通讯总线或信号线实现电性连接。
其中,所述存储器111可以是,但不限于,随机存取存储器(英文:Random AccessMemory,简称:RAM),只读存储器(英文:Read Only Memory,简称:ROM),可编程只读存储器(英文:Programmable Read-Only Memory,简称:PROM),可擦除只读存储器(英文:ErasableProgrammable Read-Only Memory,简称:EPROM),电可擦除只读存储器(英文:ElectricErasable Programmable Read-Only Memory,简称:EEPROM)等。其中,存储器111用于存储程序,所述处理器112在接收到执行指令后,执行所述程序。所述通信单元113用于通过网络建立所述存储设备100与其它设备(比如存储节点210)之间的通信连接,并用于通过网络进行数据的接收和发送。
基于访问热度的数据块存储装置110包括至少一个可以软件或固件(firmware)的形式存储于所述存储器111中或固化在所述存储设备100的操作系统(英文:OperatingSystem,简称:OS)中的软件功能模块。所述处理器112用于执行所述存储器111中存储的可执行模块,例如访问热度的数据块存储装置110所包括的软件功能模块及计算机程序等。
应当理解的是,图2所示的结构仅为示意,所述存储设备100还可包括比图2中所示更多或者更少的组件,或者具有与图2所示不同的配置。图2中所示的各组件可以采用硬件、软件或其组合实现。
图3示出了本申请实施例提供的基于访问热度的数据块存储方法的流程示意图,在本申请实施例中,该基于访问热度的数据块存储方法可以由图1中所示的存储设备100执行。应当理解,在其它实施例中,本实施例的基于访问热度的数据块存储方法其中部分步骤的顺序可以根据实际需要进行相应交换,或者其中的部分步骤也可以省略或删除。该基于访问热度的数据块存储方法的详细步骤介绍如下。
步骤S110,获取各个文件在预设时间段内被访问的次数,若存在预设时间段内被访问的次数超过第一预设次数的目标文件,则获取该目标文件在预设时间段内每次被访问的响应时长。
步骤S120,若目标文件在所述预设时间段内,被访问的响应时长大于第一预设时长的次数超过第二预设次数,则获取目标文件在被访问的响应时长大于第一预设时长的文件访问过程中,该目标文件中各个数据块的响应时长,其中,所述第二预设次数小于所述第一预设次数。
步骤S130,将目标文件中数据块的响应时长大于第二预设时长的数据块标记为目标数据块,在多个存储节点中确定被访问的响应时长小于第二预设时长的存储节点作为目标存储节点,将目标数据块从当前的存储节点转存储到目标存储节点上,并更新所述目标数据块的存储地址信息。
本申请实施例,通过对已存储在云存储集群的各个文件的访问热度进行监控,并获取各个访问热度较高文件的访问响应时间,在访问热度较高文件的访问响应时间较长时,对该访问热度较高文件中影响文件整体访问响应时间的数据块进行转存储,以降低此类数据块的响应时长,从而降低整个文件的访问响应时长,提高用户对访问热度较高文件的访问效率。
在一种可能的实施方式中,考虑到文件对应的文件种类不同,不同种类的文件在不同时间段的访问热度可能比较高,而在其他时候的访问热度较少,其中,访问热度通过单位时间(比如,1小时)内文件被访问次数衡量。比如,世界爆发禽流感疫情,在疫情期间访问云存储集群200中存储的关于禽流感疫情相关的文件的访问热度较高(比如1万次/分钟),如在文件分块存储时,将此类文件较为集中的存储在云存储集群200的多个特定的存储节点210中,则在访问热度较高时,这些存储节点210会被频繁访问,导致存储节点210中可能会有I/O请求排队等候响应,导致此类文件数据块的读取速度受到影响。为了解决上述弊端,请参照图4,在步骤S110之前,本申请实施例提供的基于访问热度的数据块存储方法还可以包括步骤S108和步骤S109,具体描述如下。
步骤S108,将待存储文件进行分块处理得到多个数据块。
步骤S109,根据待存储文件预先标记的文件种类,以及多个存储节点中已存储数据块所对应文件的文件种类,将分块处理后得到的多个数据块按照数据块对应文件的文件种类均匀分布到所述存储节点中,并记录各个存入数据块的存储地址。
在本申请实施例中,文件种类可以是文件内容所属领域,比如:医药、建筑、食品、环境及交通等;文件种类也可以是文件发布形式,比如:新闻、期刊、小说及博文等;当然可以理解的是,文件种类也还可以通过其他形式进行划分,比如文件发布者国籍、文件大小等。
在对文件分块后,根据数据块所对应文件的文件种类,以及当前云存储集群200中各个存储节点210中已存储数据块所对应文件的文件种类,根据数据块对应文件的文件种类均匀分布到存储节点210,以使各个存储节点210中保存同一文件种类的数据块数量相当,从而可以确保在某一种类文件的访问热度快速增高时,请求访问数据块的I/O请求能均匀分配给不同的存储节点210,以避免访问数据块的I/O请求排队时间过长,影响整个文件访问的响应时长。
在一种可能的实施方式中,针对步骤S109,请结合参阅图5,步骤S109可以通过以下子步骤进一步实现:
子步骤S1091,统计多个存储节点中已存储的和待存储文件预先标记的文件种类相同的数据块数量;
子步骤S1092,将待存储文件分块处理后得到的多个数据块优先分配存储到已存储的和待存储文件预先标记的文件种类相同的数据块数量最少的存储节点中。
在本申请实施例中,可以先根据待存储文件的文件种类及各个存储节点210已经存储的数据块,对存储节点210按照降序进行排序;接着,将待存储文件的第一个数据块存储到排序第一的存储节点210中,并重新对存储节点210进行排序;将待存储文件的第二个数据块存储到重新排序后第一的存储节点210中,重复上述过程,直到待存储文件中所有的数据块存储到存储节点210中。
通过上述过程,可以确保同一文件种类的数据块被均匀分配到各个存储节点210中,以防止某一类文件访问热度增高,带来的访问时长较长的问题,以满足用户对此类文件迫切需求,增强客户对基于此类存储技术的产品(比如,搜索引擎)的客户粘性。
虽然在对文件分块处理后,会根据文件种类将分块后的数据块均分到不同存储节点210中。但是,由于各个存储节点210的节点资源存在差异,其中,节点资源包括网络资源(比如上下行网络速度)和/或存储资源,在实际访问存储文件时,还是存在访问热度高的文件存在访问时长的不理想情况。为了解决上述问题,从访问热度高的文件所表现出来的响应时长出发,对响应时长较长的文件中最影响响应时长的数据块着手进行优化,将此数据块进行转存储,如何确定此数据块应该转存储到那个目标存储节点210上,为此,在一种可能的实施方式中,针对步骤S130,一种可替代实现的方式可以是:
基于所述目标数据块的数据属性从预先训练得到的存储节点预测模型中确定目标存储节点,其中,所述数据属性包括所述目标数据块所对应文件的种类及目标数据块的大小。
具体地,在本申请的一种可能实施方式中,本申请实施例提供的基于访问热度的数据存储方法还可以包括。
训练得到存储节点预测模型的步骤,具体地,该训练存储节点预测模型的步骤可以通过图6所示的子步骤S201和S202实现,具体描述如下。
子步骤S201,根据历史每次访问所述存储节点中数据块时所述存储节点的节点资源、命中数据块所对应文件的文件种类、命中数据块的大小、响应时间生成训练样本向量。
子步骤S202,将生成的训练样本向量输入神经网络模型进行训练,在所述神经网络模型的损失函数值小于预设值时,结束对所述神经网络模型的训练,得到所述存储节点预测模型。
上述过程,通过存储节点210的每次历史访问情况,结合当时存储节点210的资源情况、响应时长等作为训练样本向量,对神经网络模型进行训练,以通过机器学习的方式得到能够基于历史访问情况预测后续数据块转存目标存储节点的存储节点预测模型。以确保数据块能转存到能够提升数据块响应时效的目标存储节点中。
在一种可能的实施方式中,针对步骤S202,训练存储节点预测模型的步骤可以参照图7所示的方法实现,具体描述如下。
步骤S202a,将每个训练样本向量中存储节点的节点资源、命中数据块所对应文件的文件种类及命中数据块的大小作为输入数据,输入所述神经网络模型中训练,以预测的响应时间作为输出。
步骤S202b,根据预测的响应时间与训练样本向量中响应时间计算神经网络模型的损失函数值。
步骤S202c,判断神经网络模型的损失函数值是否小于预设值。
若神经网络模型的损失函数值小于预设值,则结束训练;若神经网络模型的损失函数值不小于预设值,则进入步骤S202d。
步骤S202d,调整神经网络模型中的模型参数。
在调整神经网络模型的模型参数之后,重新回到步骤S202a,重复上述过程直到神经网络模型的损失函数值小于预设值,确定对应的模型参数,得到存储节点预测模型。
在上述描述的基础上,进一步针对步骤S130,在一种可能的实施方式中,步骤S130可以参照图8所示的方式实现,具体描述如下。
子步骤S131,将目标文件中数据块的响应时长大于第二预设时长的数据块标记为目标数据块,并将该目标数据块所在的存储节点标记为源存储节点。
子步骤S132,将目标数据块的数据属性输入到存储节点预测模型中,所述存储节点预测模型预测各个存储节点将所述目标数据块存储后进行访问的响应时长,并将所述响应时长最短的存储节点作为目标存储节点。
子步骤S133,将所述目标数据块存储到所述目标存储节点中,并将所述源存储节点中存储的所述目标数据块删除。
本申请实施例中,根据数据块所对应文件的文件种类,以及当前云存储集群200中各个存储节点210中已存储数据块所对应文件的文件种类,根据数据块对应文件的文件种类均匀分布到存储节点210,以使各个存储节点210中保存同一文件种类的数据块数量相当,从而可以确保在某一种类文件的访问热度快速增高时,请求访问数据块的I/O请求能均匀分配给不同的存储节点210,以避免访问数据块的I/O请求排队时间过长,影响整个文件访问的响应时长。同时,通过对已存储在云存储集群的各个文件的访问热度进行监控,并获取各个访问热度较高文件的访问响应时间,在访问热度较高文件的访问响应时间较长时,对该访问热度较高文件中影响文件整体访问响应时间的数据块进行转存储,以降低此类数据块的响应时长,从而降低整个文件的访问响应时长,进一步,提高用户对访问热度较高文件的访问效率。
基于同一发明构思,请参阅图9,示出了本申请实施例提供的基于访问热度的数据块存储装置110的功能模块示意图,本实施例可以根据上述方法实施例对基于访问热度的数据块存储装置110进行功能模块的划分。例如,可以对应各个功能划分各个功能模块,也可以将两个或两个以上的功能集成在一个处理模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。需要说明的是,本申请实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。比如,在采用对应各个功能划分各个功能模块的情况下,图8示出的基于访问热度的数据块存储装置110只是一种装置示意图。下面分别对该基于访问热度的数据块存储装置110的各个功能模块的功能进行详细阐述。
第一获取模块111,用于获取各个文件在预设时间段内被访问的次数,若存在所述预设时间段内被访问的次数超过第一预设次数的目标文件,则获取该目标文件在所述预设时间段内每次被访问的响应时长。可以理解,该第一获取模块111可以用于执行上述步骤S110,关于该第一获取模块111的详细实现方式可以参照上述对步骤S110有关的内容。
第二获取模块112,用于若目标文件在所述预设时间段内,被访问的响应时长大于第一预设时长的次数超过第二预设次数,则获取所述目标文件在被访问的响应时长大于第一预设时长的文件访问过程中,目标文件中各个数据块的响应时长,其中,所述第二预设次数小于所述第一预设次数。可以理解,第二获取模块112可以用于执行上述步骤S120,关于该第二获取模块112的详细实现方式可以参照上述对步骤S120有关的内容。
转存储模块113,用于将所述目标文件中数据块的响应时长大于第二预设时长的数据块标记为目标数据块,在所述多个存储节点中确定被访问的响应时长小于第二预设时长的存储节点作为目标存储节点,将所述目标数据块从当前的存储节点转存储到所述目标存储节点上,并更新所述目标数据块的存储地址信息。可以理解,该转存储模块113可以用于执行上述步骤S130,关于该转存储模块113的详细实现方式可以参照上述对步骤S130有关的内容。
在一种可能的实施方式中,请再次参照图9,基于访问热度的数据块存储装置110还可以包括分块与存储模块114。
分块与存储模块114可以用于:
将待存储文件进行分块处理得到多个数据块;
根据所述待存储文件预先标记的文件种类,以及所述多个存储节点中已存储数据块所对应文件的文件种类,将分块处理后得到的所述多个数据块按照数据块对应文件的文件种类均匀分布到所述存储节点中,并记录各个存入数据块的存储地址。
在一种可能的实施方式中,分块与存储模块114具体用于:
统计所述多个存储节点中已存储的和所述待存储文件预先标记的文件种类相同的数据块数量;
将所述待存储文件分块处理后得到的所述多个数据块优先分配存储到已存储的和所述待存储文件预先标记的文件种类相同的数据块数量最少的存储节点中。
在一种可能的实施方式中,转存储模块113可以用于:
基于目标数据块的数据属性从预先训练得到的存储节点预测模型中确定目标存储节点,其中,所述数据属性包括所述目标数据块所对应文件的种类及目标数据块的大小。
在一种可能的实施方式中,请再参照图9,基于访问热度的数据块存储装置110还可以包括模型训练模块115,模型训练模块115具体用于:
根据历史每次访问所述存储节点中数据块时所述存储节点的节点资源、命中数据块所对应文件的文件种类、命中数据块的大小、响应时间生成训练样本向量;
将每个所述训练样本向量中存储节点的节点资源、命中数据块所对应文件的文件种类及命中数据块的大小作为输入数据,输入所述神经网络模型中训练,以预测的响应时间作为输出;
根据所述预测的响应时间与所述训练样本向量中响应时间计算所述神经网络模型的损失函数值;
在所述神经网络模型的损失函数值不小于预设值时,调整所述神经网络模型中的模型参数并重复上述步骤,直到所述神经网络模型的损失函数值小于预设值,确定对应的模型参数,得到所述存储节点预测模型。
在一种可能的实施方式中,转存储模块113具体用于:
将所述目标文件中数据块的响应时长大于第二预设时长的数据块标记为目标数据块,并将该目标数据块所在的存储节点标记为源存储节点;
将所述目标数据块的数据属性输入到所述存储节点预测模型中,所述存储节点预测模型预测各个存储节点将所述目标数据块存储后进行访问的响应时长,并将所述响应时长最短的存储节点作为目标存储节点;
将所述目标数据块存储到所述目标存储节点中,并将所述源存储节点中存储的所述目标数据块删除。
基于同一发明构思,请再次参阅图2,本申请实施例还提供一种用于执行上述基于访问热度的数据块存储方法的存储设备100,该存储设备100的介绍已在之前描述过,在此就不再赘述。
由于本申请实施例提供的存储设备100是上述存储设备100执行的方法实施例的另一种实现形式,且存储设备100可用于执行上述方法实施例提供的基于访问热度的数据块存储方法,因此其所能获得的技术效果可参考上述方法实施例,在此不再赘述。
进一步地,本申请实施例还提供一种包含计算机可执行指令的可读存储介质,计算机可执行指令在被执行时可以用于实现上述方法实施例提供的基于访问热度的数据块存储方法。
当然,本申请实施例所提供的一种包含计算机可执行指令的存储介质,其计算机可执行指令不限于如上的方法操作,还可以执行本申请任意实施例所提供的基于访问热度的数据块存储方法中的相关操作。
本申请实施例是参照根据本申请实施例的方法、设备和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
尽管在此结合各实施例对本申请进行了描述,然而,在实施所要求保护的本申请过程中,本领域技术人员通过查看所述附图、公开内容、以及所附权利要求书,可理解并实现所述公开实施例的其他变化。在权利要求中,“包括”一词不排除其他组成部分或步骤,“一”或“一个”不排除多个的情况。单个处理器或其他单元可以实现权利要求中列举的若干项功能。相互不同的从属权利要求中记载了某些措施,但这并不表示这些措施不能组合起来产生良好的效果。
以上所述,仅为本申请的各种实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应所述以权利要求的保护范围为准。

Claims (7)

1.一种基于访问热度的数据块存储方法,其特征在于,应用于与云存储集群中各个存储节点通信的存储设备,其中,所述存储节点上分布存储有各个文件的数据块,所述方法包括:
将待存储文件进行分块处理得到多个数据块;
统计多个存储节点中已存储的和所述待存储文件预先标记的文件种类相同的数据块数量;
将所述待存储文件分块处理后得到的所述多个数据块优先分配存储到已存储的和所述待存储文件预先标记的文件种类相同的数据块数量最少的存储节点中;
获取所述各个文件在预设时间段内被访问的次数,若存在所述预设时间段内被访问的次数超过第一预设次数的目标文件,则获取该目标文件在所述预设时间段内每次被访问的响应时长;
若所述目标文件在所述预设时间段内,被访问的响应时长大于第一预设时长的次数超过第二预设次数,则获取所述目标文件在被访问的响应时长大于第一预设时长的文件访问过程中,所述目标文件中各个数据块的响应时长,其中,所述第二预设次数小于所述第一预设次数;
将所述目标文件中数据块的响应时长大于第二预设时长的数据块标记为目标数据块,在所述多个存储节点中确定被访问的响应时长小于第二预设时长的存储节点作为目标存储节点,将所述目标数据块从当前的存储节点转存储到所述目标存储节点上,并更新所述目标数据块的存储地址信息。
2.如权利要求1所述的基于访问热度的数据块存储方法,其特征在于,在所述多个存储节点中确定被访问的响应时长小于第二预设时长的存储节点作为目标存储节点的步骤,包括:
基于所述目标数据块的数据属性从预先训练得到的存储节点预测模型中确定目标存储节点,其中,所述数据属性包括所述目标数据块所对应文件的种类及目标数据块的大小。
3.如权利要求2所述的基于访问热度的数据块存储方法,其特征在于,所述方法还包括训练得到的存储节点预测模型的步骤,该步骤包括:
根据历史每次访问所述存储节点中数据块时所述存储节点的节点资源、命中数据块所对应文件的文件种类、命中数据块的大小、响应时间生成训练样本向量;
将生成的训练样本向量输入神经网络模型进行训练,在所述神经网络模型的损失函数值小于预设值时,结束对所述神经网络模型的训练,得到所述存储节点预测模型。
4.如权利要求3所述的基于访问热度的数据块存储方法,其特征在于,将生成的训练样本向量输入神经网络模型进行训练,在所述神经网络模型的损失函数值小于预设值时,结束对所述神经网络模型的训练,得到所述存储节点预测模型的步骤,包括:
将每个所述训练样本向量中存储节点的节点资源、命中数据块所对应文件的文件种类及命中数据块的大小作为输入数据,输入所述神经网络模型中训练,以预测的响应时间作为输出;
根据所述预测的响应时间与所述训练样本向量中响应时间计算所述神经网络模型的损失函数值;
在所述神经网络模型的损失函数值不小于预设值时,调整所述神经网络模型中的模型参数并重复上述步骤,直到所述神经网络模型的损失函数值小于预设值,确定对应的模型参数,得到所述存储节点预测模型。
5.如权利要求4所述的基于访问热度的数据块存储方法,其特征在于,将所述目标文件中数据块的响应时长大于第二预设时长的数据块标记为目标数据块,基于所述目标数据块的数据属性从预先训练得到的存储节点预测模型中确定目标存储节点,将所述目标数据块从当前的存储节点转存储到所述目标存储节点上的步骤,包括:
将所述目标文件中数据块的响应时长大于第二预设时长的数据块标记为目标数据块,并将该目标数据块所在的存储节点标记为源存储节点;
将所述目标数据块的数据属性输入到所述存储节点预测模型中,所述存储节点预测模型预测各个存储节点将所述目标数据块存储后进行访问的响应时长,并将所述响应时长最短的存储节点作为目标存储节点;
将所述目标数据块存储到所述目标存储节点中,并将所述源存储节点中存储的所述目标数据块删除。
6.一种基于访问热度的数据块存储装置,其特征在于,应用于与云存储集群中各个存储节点通信的存储设备,其中,所述存储节点上分布存储有各个文件的数据块,所述基于访问热度的数据块存储装置包括:
分块与存储模块,用于将待存储文件进行分块处理得到多个数据块,统计多个存储节点中已存储的和所述待存储文件预先标记的文件种类相同的数据块数量,将所述待存储文件分块处理后得到的所述多个数据块优先分配存储到已存储的和所述待存储文件预先标记的文件种类相同的数据块数量最少的存储节点中;
第一获取模块,用于获取所述各个文件在预设时间段内被访问的次数,若存在所述预设时间段内被访问的次数超过第一预设次数的目标文件,则获取该目标文件在所述预设时间段内每次被访问的响应时长;
第二获取模块,用于若所述目标文件在所述预设时间段内,被访问的响应时长大于第一预设时长的次数超过第二预设次数,则获取所述目标文件在被访问的响应时长大于第一预设时长的文件访问过程中,所述目标文件中各个数据块的响应时长,其中,所述第二预设次数小于所述第一预设次数;
转存储模块,用于将所述目标文件中数据块的响应时长大于第二预设时长的数据块标记为目标数据块,在所述多个存储节点中确定被访问的响应时长小于第二预设时长的存储节点作为目标存储节点,将所述目标数据块从当前的存储节点转存储到所述目标存储节点上,并更新所述目标数据块的存储地址信息。
7.一种存储设备,其特征在于,所述存储设备包括机器可读存储介质及处理器,所述机器可读存储介质存储有计算机可执行指令,所述计算机可执行指令被所述处理器执行时,所述存储设备执行权利要求1-5中任意一项所述的基于访问热度的数据块存储方法。
CN202010263023.7A 2020-04-07 2020-04-07 基于访问热度的数据块存储方法、装置及存储设备 Active CN111158613B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010263023.7A CN111158613B (zh) 2020-04-07 2020-04-07 基于访问热度的数据块存储方法、装置及存储设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010263023.7A CN111158613B (zh) 2020-04-07 2020-04-07 基于访问热度的数据块存储方法、装置及存储设备

Publications (2)

Publication Number Publication Date
CN111158613A CN111158613A (zh) 2020-05-15
CN111158613B true CN111158613B (zh) 2020-07-31

Family

ID=70567797

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010263023.7A Active CN111158613B (zh) 2020-04-07 2020-04-07 基于访问热度的数据块存储方法、装置及存储设备

Country Status (1)

Country Link
CN (1) CN111158613B (zh)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111741107B (zh) * 2020-06-19 2023-08-04 北京星辰天合科技股份有限公司 基于文件存储系统的分层方法及装置、电子设备
CN112035498B (zh) * 2020-08-31 2023-09-05 北京奇艺世纪科技有限公司 数据块调度方法、装置、调度层节点及存储层节点
CN112817540B (zh) * 2021-02-23 2022-11-04 上海交通大学 一种基于磁盘阵列扩展的数据块重分布方法及装置
CN113705979A (zh) * 2021-08-03 2021-11-26 海尔数字科技(上海)有限公司 一种基于物流运输货物批次信息追溯系统及追溯方法
CN114860160B (zh) * 2022-04-15 2023-04-07 北京科杰科技有限公司 一种针对Hadoop数据平台的扩容资源预测方法及系统
US11755219B1 (en) 2022-05-26 2023-09-12 International Business Machines Corporation Block access prediction for hybrid cloud storage
CN115033187B (zh) * 2022-08-10 2022-11-08 蓝深远望科技股份有限公司 一种基于大数据的分析管理方法
CN117008821B (zh) * 2023-04-07 2024-04-19 豪越科技有限公司 一种后勤管理的数据存储方法及系统
CN117370272B (zh) * 2023-10-25 2024-06-11 浙江星汉信息技术股份有限公司 基于档案热度的档案管理方法、装置、设备及存储介质

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102508789A (zh) * 2011-10-14 2012-06-20 浪潮电子信息产业股份有限公司 一种系统分级存储的方法
CN102841931A (zh) * 2012-08-03 2012-12-26 中兴通讯股份有限公司 分布式文件系统的存储方法及装置
CN103336670A (zh) * 2013-06-04 2013-10-02 华为技术有限公司 一种基于数据温度对数据块自动进行分布的方法和装置
CN104978362A (zh) * 2014-04-11 2015-10-14 中兴通讯股份有限公司 分布式文件系统的数据迁移方法、装置及元数据服务器
CN105447086A (zh) * 2015-11-06 2016-03-30 深圳市网心科技有限公司 文件存储方法及实现该存储方法的服务器
CN105653642A (zh) * 2015-12-25 2016-06-08 曙光信息产业股份有限公司 分布式文件系统的数据管理方法和装置
CN108846114A (zh) * 2018-06-26 2018-11-20 郑州云海信息技术有限公司 分布式系统控制方法、装置、设备及可读存储介质
CN109144791A (zh) * 2018-09-30 2019-01-04 北京金山云网络技术有限公司 数据转存方法、装置和数据管理服务器
CN110851079A (zh) * 2019-10-28 2020-02-28 华中科技大学 一种自适应的存储设备损耗均衡方法及系统

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102508789A (zh) * 2011-10-14 2012-06-20 浪潮电子信息产业股份有限公司 一种系统分级存储的方法
CN102841931A (zh) * 2012-08-03 2012-12-26 中兴通讯股份有限公司 分布式文件系统的存储方法及装置
CN103336670A (zh) * 2013-06-04 2013-10-02 华为技术有限公司 一种基于数据温度对数据块自动进行分布的方法和装置
CN104978362A (zh) * 2014-04-11 2015-10-14 中兴通讯股份有限公司 分布式文件系统的数据迁移方法、装置及元数据服务器
CN105447086A (zh) * 2015-11-06 2016-03-30 深圳市网心科技有限公司 文件存储方法及实现该存储方法的服务器
CN105653642A (zh) * 2015-12-25 2016-06-08 曙光信息产业股份有限公司 分布式文件系统的数据管理方法和装置
CN108846114A (zh) * 2018-06-26 2018-11-20 郑州云海信息技术有限公司 分布式系统控制方法、装置、设备及可读存储介质
CN109144791A (zh) * 2018-09-30 2019-01-04 北京金山云网络技术有限公司 数据转存方法、装置和数据管理服务器
CN110851079A (zh) * 2019-10-28 2020-02-28 华中科技大学 一种自适应的存储设备损耗均衡方法及系统

Also Published As

Publication number Publication date
CN111158613A (zh) 2020-05-15

Similar Documents

Publication Publication Date Title
CN111158613B (zh) 基于访问热度的数据块存储方法、装置及存储设备
US11146497B2 (en) Resource prediction for cloud computing
Agliamzanov et al. Hydrology@ Home: a distributed volunteer computing framework for hydrological research and applications
CN107798108B (zh) 一种异步任务查询方法及设备
CN111104222A (zh) 任务处理方法、装置、计算机设备和存储介质
CN107305611B (zh) 恶意账号对应的模型建立方法和装置、恶意账号识别的方法和装置
US8572621B2 (en) Selection of server for relocation of application program based on largest number of algorithms with identical output using selected server resource criteria
US11720825B2 (en) Framework for multi-tenant data science experiments at-scale
CN113254472B (zh) 一种参数配置方法、装置、设备及可读存储介质
CN113221163B (zh) 一种训练模型的方法及系统
CN109543891A (zh) 容量预测模型的建立方法、设备及计算机可读存储介质
CN110309142B (zh) 规则管理的方法和装置
US20160188717A1 (en) Network crawling prioritization
CN111427696B (zh) 业务资源调度方法及装置
CN112181599A (zh) 模型训练方法、装置及存储介质
CN110414260B (zh) 一种数据访问方法、装置、系统及存储介质
CN114860402B (zh) 调度策略模型训练方法、调度方法、装置、设备和介质
CN113342500B (zh) 任务执行方法、装置、设备及存储介质
CN111836274B (zh) 一种业务处理的方法及装置
CN113656046A (zh) 一种应用部署方法和装置
CN113296951A (zh) 一种资源配置方案确定方法及设备
CN112257111A (zh) 动态数值脱敏方法、装置及存储介质
CN113872978B (zh) 一种dns劫持的监测方法、装置及电子设备
CN108933709B (zh) 测试服务器性能的方法、装置和计算机可读存储介质
CN116167464A (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