CN104683374B - 一种分布式存储的缓存更新方法 - Google Patents

一种分布式存储的缓存更新方法 Download PDF

Info

Publication number
CN104683374B
CN104683374B CN201310613014.6A CN201310613014A CN104683374B CN 104683374 B CN104683374 B CN 104683374B CN 201310613014 A CN201310613014 A CN 201310613014A CN 104683374 B CN104683374 B CN 104683374B
Authority
CN
China
Prior art keywords
metadata
data
caching
client
information
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
CN201310613014.6A
Other languages
English (en)
Other versions
CN104683374A (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 Internet Science And Technology Ltd Of Cloud Of China
Original Assignee
Beijing Internet Science And Technology Ltd Of Cloud Of China
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 Internet Science And Technology Ltd Of Cloud Of China filed Critical Beijing Internet Science And Technology Ltd Of Cloud Of China
Priority to CN201310613014.6A priority Critical patent/CN104683374B/zh
Publication of CN104683374A publication Critical patent/CN104683374A/zh
Application granted granted Critical
Publication of CN104683374B publication Critical patent/CN104683374B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种分布式存储的缓存更新方法及分布式存储系统,该方法包括:客户端通过缓存提供的元数据的目标位置提取数据时,若数据发生了迁移,元数据节点返回元数据重定向信息;客户端在接收到返回元数据重定向信息后,发送元数据更新请求到元数据节点;元数据节点接收元数据更新请求后,向缓存返回新的元数据目标位置,同时,向其他所有注册该元数据的缓存发送更新信息;客户端通过缓存更新后的元数据的目标位置提取数据。本发明与现有的缓存更新方法相比,本发明在Data发生迁移后,通过首次访问该数据的缓存的更新来触发所有对Data进行缓存的所有缓存的更新。可有效提升缓存的更新效率,从而提升整个分布式存储的数据读取效率。

Description

一种分布式存储的缓存更新方法
技术领域
本发明涉及分布式存储技术领域,特别涉及一种分布式存储的缓存更新方法及分布式存储系统。
背景技术
分布式存储,是将数据分散存储在多台独立的设备上。传统的网络存储系统采用集中的存储服务器存放所有数据,存储服务器成为系统性能的瓶颈,也是可靠性和安全性的焦点,不能满足大规模存储应用的需要。分布式网络存储系统采用可扩展的系统结构,利用多台存储服务器分担存储负荷。它不但提高了系统的可靠性、可用性和存取效率,还易于扩展。
分布式存储在存储数据时,将数据存储到各存储服务器的数据节点(Data Node)中,将数据在数据节点中的位置信息(元数据)存储到元数据节点 (Metadata)中。在读取数据时,先到元数据节点中找到数据的元数据信息,在根据元数据到对应的数据节点中请求Data。由于元数据节点中存储的是整个分布存储系统的所有元数据,每次读取数据都到Metadata中读取元数据的效率很低。因此,在每个存储节点上都配置缓存(MetadataCache)。将已读取过的元数据信息缓存到Metadata Cache中,从而提升系统的读取效率。
如上所述,分布式存储由于存储服务器的加入和退出都会导致数据迁移,在Metadata中元数据更新后,如何与各存储节点上的Metadata Cache中的数据进行同步(缓存更新),将对系统性能带来较大影响。现有的缓存更新方法:缓存更新方法一、缓存更新方法二都有明显的缺陷。
缓存方法一包括:A、Client向Metadata Cache请求Data的元数据信息; B、如果被请求的信息本地有缓存,则直接返回。C、如果没有则从Metadata 进行请求,并在本地缓存然后返回给客户端(Client)。同时在Metadata对该请求进行注册登记。D、Client根据请求到的Data元数据信息到目标节点请求Data。E、当Data在Data Node中发生迁移时,Metadata更新 注册名单,对所有注册过该元数据的所有Metadata Cache启动缓存更新。
如传统缓存更新方法一流程所述,一个分布式存储系统内有大量的数据迁移以及大量的Metadata Cache存在,每次数据迁移都会导致大量的缓存更新,会降低系统运行效率。
缓存方法二包括:A、Client向Metadata Cache请求Data的元数据信息; B、如果被请求的信息本地有缓存,则直接返回。如果没有则从Metadata进行请求,并在本地缓存然后返回给Client。C、Client根据请求到的Data元数据信息到目标节点请求Data。D、当Data在Data Node中发生迁移时,Data Node 拒绝并返回重定向信息。E、Client向Metadata Cache申请元数据更新,Metadata Cache再向Metadata申请元数据更新。F、Client根据更新后的元数据到新的 Data Node请求Data。
如传统缓存更新方法二流程所述,当Data发生迁移后,所有缓存过该Data 元数据的Metadata Cache再次访问该数据时都会走一遍重定位、再申请更新的流程,系统效率同样不高。
综上所述,为提升分布式存储的数据读取性能,需要提出一种更高效率的缓存更新机制。
针对相关技术中的问题,目前尚未提出有效的解决方案。
发明内容
针对相关技术中的问题,本发明提出一种分布式存储的缓存更新方法及分布式存储系统,能够提升分布式存储的数据读取性能。
本发明的技术方案是这样实现的:
本发明提供了一种分布式存储的缓存更新方法,该方法包括以下步骤:
客户端通过缓存提供的元数据的目标位置提取数据时,若数据发生了迁移,元数据节点返回元数据重定向信息;
客户端在接收到返回元数据重定向信息后,发送元数据更新请求到元数据节点;
元数据节点接收元数据更新请求后,向缓存返回新的元数据目标位置,同时,向其他所有注册该元数据的缓存发送更新信息;
客户端通过缓存更新后的元数据的目标位置提取数据。
优选的,客户端通过缓存提供的元数据的目标位置提取数据具体包括:客户端向缓存申请数据的元数据信息;缓存收到申请后,判断是否存储该元数据信息的目标位置,若没有存储,则缓存向元数据节点发送申请该数据的元数据信息,元数据节点在收到发送的所述申请信息后返回该元数据信息目标位置给缓存。
优选的,该方法还包括,在缓存首次向元数据节点申请元数据时,元数据节点对该缓存进行注册。
优选的,所述客户端在接收到返回元数据重定向信息后,发送元数据更新请求到元数据节点具体为:
客户端收到重定向信息时,向缓存申请元数据更新,缓存再向元数据节点申请元数据更新。
本发明还提供了一种分布式存储系统,该系统包括多台存储服务器,各存储服务器通过内部选举产生主服务器,存储服务器可动态加入和退出,在主服务器退出服务时,剩余的存储服务器再次通过内部选举产生主服务器,其中,每个存储服务器包括:用于存储数据的数据节点;用于存储数据的位置信息 的元数据节点,用于缓存客户端申请过的元数据信息的缓存。
优选的,在有存储服务器加入或者退出时,所述分布式存储系统对存储的数据动态平衡,使数据在数据节点中迁移,同时改变元数据节点中的元数据信息。
本发明与现有的缓存更新方法相比,本发明在Data发生迁移后,通过首次访问该数据的缓存的更新来触发所有对Data进行缓存的所有缓存的更新。可有效提升缓存的更新效率,从而提升整个分布式存储的数据读取效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是根据本发明实施例的分布式存储的缓存更新方法的流程图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员所获得的所有其他实施例,都属于本发明保护的范围。
根据本发明的实施例,提供了一种分布式存储的缓存更新方法。
如图1所示,根据本发明实施例的分布式存储的缓存更新方法,包括以下步骤:
客户端通过缓存提供的元数据的目标位置提取数据时,若数据发生了迁移,元数据节点返回元数据重定向信息;
客户端在接收到返回元数据重定向信息后,发送元数据更新请求到元数据节点;
元数据节点接收元数据更新请求后,向缓存返回新的元数据目标位置,同时,向其他所有注册该元数据的缓存发送更新信息;
客户端通过缓存更新后的元数据的目标位置提取数据。
下面结合附图1对本方法进行详细说明,该方法在执行时,具体包括:
步骤S101,当有数据查询请求时,客户端向缓存申请数据(Data)的元数据信息。
步骤S102,缓存先判断是否已缓存了该Data的元数据如已缓存则转到步骤S105。如未缓存,则到步骤S103,缓存向元数据节点申请该Data的元数据。
步骤S104,元数据节点向缓存返回申请的元数据,同时对该缓存进行注册。
步骤S105,缓存向客户端返回申请的元数据信息,客户端向目标地址请求Data。
步骤S106,如果目标地址成功返回Data,则该查询结束。如果目标地址的Data发送了数据迁移,则元数据节点返回重定向信息。
步骤S107,元数据节点返回重定向信息,客户端向缓存申请元数据更新,缓存向元数据节点申请元数据更新。
步骤S108,元数据节点向缓存返回更新后的元数据。同时启动对该元数据注册过的所有其他缓存的缓存更新。
步骤S109,缓存向客户端返回更新的元数据信息,客户端向目标地址请求Data。目标地址返回Data后,查询结束。
通过本发明的上述方案,可以看出,本发明实施例提供的数据更新方法与现有的缓存更新方法相比,本发明在Data发生迁移后,通过首次访问该数据的缓存的更新来触发所有对Data进行缓存的所有缓存的更新。可有效提升缓存的更新效率,从而提升整个分布式存储的数据读取效率。
本发明实施例还提供了一种分布式存储系统,该系统包括:多台存储服务器,各存储服务器通过内部选举产生主服务器,存储服务器可动态加入和退出,在主服务器退出服务时,剩余的存储服务器再次通过内部选举产生主服务器,其中,每个存储服务器包括:用于存储数据的数据节点;用于存储数据的位置信息 的元数据节点,用于缓存客户端申请过的元数据信息的缓存。
优选的,在有存储服务器加入或者退出时,所述分布式存储系统对存储的数据动态平衡,使数据在数据节点中迁移,同时改变元数据节点中的元数据信息。
通过上述分布式存储系统可以看出,该存储系统与分布式存储的缓存更新方法相对应的硬件设备,在存储服务器发生改变时,改变元数据节点中的元数据信息。并在接收到客户端发送的元数据申请时,通过元数据节点将更改后的元数据返送给客户,并将该元数据同时在其他所有缓存进行更新,可有效提升缓存的更新效率,从而提升整个分布式存储的数据读取效率。
综上所述,借助于本发明的上述技术方案,通过首次访问该数据的缓存的更新来触发所有对Data进行缓存的所有缓存的更新。可有效提升缓存的更新效率,从而提升整个分布式存储的数据读取效率。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (4)

1.一种分布式存储的缓存更新方法,其特征在于,包括以下步骤:
客户端通过缓存提供的元数据的目标位置提取数据时,若数据发生了迁移,元数据节点返回元数据重定向信息;
客户端在接收到返回元数据重定向信息后,发送元数据更新请求到元数据节点;
元数据节点接收元数据更新请求后,向缓存返回新的元数据目标位置,同时,向其他所有注册该元数据的缓存发送更新信息;
客户端通过缓存更新后的元数据的目标位置提取数据。
2.根据权利要求1所述的分布式存储的缓存更新方法,其特征在于,客户端通过缓存提供的元数据的目标位置提取数据具体包括:客户端向缓存申请数据的元数据信息;缓存收到申请后,判断是否存储该元数据信息的目标位置,若没有存储,则缓存向元数据节点发送申请该数据的元数据信息,元数据节点在收到发送的所述申请信息后返回该元数据信息目标位置给缓存。
3.根据权利要求2所述的分布式存储的缓存更新方法,其特征在于,还包括,在缓存首次向元数据节点申请元数据时,元数据节点对该缓存进行注册。
4.根据权利要求1所述的分布式存储的缓存更新方法,其特征在于,所述客户端在接收到返回元数据重定向信息后,发送元数据更新请求到元数据节点具体为:
客户端收到重定向信息时,向缓存申请元数据更新,缓存再向元数据节点申请元数据更新。
CN201310613014.6A 2013-11-28 2013-11-28 一种分布式存储的缓存更新方法 Active CN104683374B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310613014.6A CN104683374B (zh) 2013-11-28 2013-11-28 一种分布式存储的缓存更新方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310613014.6A CN104683374B (zh) 2013-11-28 2013-11-28 一种分布式存储的缓存更新方法

Publications (2)

Publication Number Publication Date
CN104683374A CN104683374A (zh) 2015-06-03
CN104683374B true CN104683374B (zh) 2019-03-08

Family

ID=53317966

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310613014.6A Active CN104683374B (zh) 2013-11-28 2013-11-28 一种分布式存储的缓存更新方法

Country Status (1)

Country Link
CN (1) CN104683374B (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107562385B (zh) * 2017-09-13 2020-08-04 郑州云海信息技术有限公司 分布式存储客户端读取数据的方法、装置和设备
CN107872517B (zh) * 2017-10-23 2020-11-27 北京奇艺世纪科技有限公司 一种数据处理方法及装置
CN108519908A (zh) * 2018-02-24 2018-09-11 国家计算机网络与信息安全管理中心 一种任务动态管理方法和装置
WO2020180291A1 (en) * 2019-03-04 2020-09-10 Hitachi Vantara Llc Metadata routing in a distributed system
US11010367B2 (en) 2019-08-07 2021-05-18 Micro Focus Llc Parallel batch metadata transfer update process within sharded columnar database system
CN114115718B (zh) * 2021-08-31 2024-03-29 济南浪潮数据技术有限公司 分布式块存储系统服务质量控制方法、装置、设备及介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20100048130A (ko) * 2008-10-30 2010-05-11 주식회사 케이티 메타데이터 클러스터 기반의 분산형 스토리지 시스템 및 그동작 방법
CN101924650A (zh) * 2010-08-04 2010-12-22 浙江省电力公司 故障信息系统的服务和服务器智能自治的实现方法
CN102624911A (zh) * 2012-03-14 2012-08-01 中山大学 一种基于集群的可视媒体存储系统
CN102710790A (zh) * 2012-06-20 2012-10-03 深圳市远行科技有限公司 一种基于元数据管理的分布式缓存实现方法及系统
CN103095758A (zh) * 2011-11-01 2013-05-08 北大方正集团有限公司 一种分布式文件系统及该系统中处理文件数据的方法
CN103294675A (zh) * 2012-02-23 2013-09-11 上海盛霄云计算技术有限公司 一种分布式存储系统中的数据更新方法及装置

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20100048130A (ko) * 2008-10-30 2010-05-11 주식회사 케이티 메타데이터 클러스터 기반의 분산형 스토리지 시스템 및 그동작 방법
CN101924650A (zh) * 2010-08-04 2010-12-22 浙江省电力公司 故障信息系统的服务和服务器智能自治的实现方法
CN103095758A (zh) * 2011-11-01 2013-05-08 北大方正集团有限公司 一种分布式文件系统及该系统中处理文件数据的方法
CN103294675A (zh) * 2012-02-23 2013-09-11 上海盛霄云计算技术有限公司 一种分布式存储系统中的数据更新方法及装置
CN102624911A (zh) * 2012-03-14 2012-08-01 中山大学 一种基于集群的可视媒体存储系统
CN102710790A (zh) * 2012-06-20 2012-10-03 深圳市远行科技有限公司 一种基于元数据管理的分布式缓存实现方法及系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
《Hadoop分布式文件系统(HDFS)可靠性的研究与优化》;翟永东;《中国优秀硕士学位论文全文数据库(信息科技辑)》;20120715;第2012卷(第07期);第2.3、3.3.4、4.1.3节及图4.2、1.3

Also Published As

Publication number Publication date
CN104683374A (zh) 2015-06-03

Similar Documents

Publication Publication Date Title
CN104683374B (zh) 一种分布式存储的缓存更新方法
KR102301353B1 (ko) 컨텐츠 중심 네트워크에서 컨텐츠 소유자 및 노드의 패킷 전송 방법
CN106533935B (zh) 一种在云计算系统中获取业务链信息的方法和装置
US20210036943A1 (en) Determining a transit appliance for optimization of data traffic to a software service
ES2553428T3 (es) Método, dispositivo y sistema de procesamiento de contenidos
EP2002343B1 (en) Multi-cache cooperation for response output caching
CN105224255B (zh) 一种存储文件管理方法及装置
CN101425969B (zh) 调度方法、调度装置和调度系统
CN105635196A (zh) 一种获取文件数据的方法、系统和应用服务器
US20120173486A1 (en) System and method for dynamically selecting storage locations of replicas in cloud storage system
JP2007128371A (ja) コンテンツ検索システム
CN106775446A (zh) 基于固态硬盘加速的分布式文件系统小文件访问方法
US10764364B2 (en) Live migration of partitions
US9354940B2 (en) Provisioning tenants to multi-tenant capable services
CN105468660B (zh) 分布式文件系统的读方法、客户端设备及分布式文件系统
CN107172186A (zh) 内容获取方法及系统
CN109684273A (zh) 一种快照管理方法、装置、设备及可读存储介质
CN105930345A (zh) 基于分布式实时数据库的层次索引方法
WO2012158804A1 (en) Distributed caching and cache analysis
WO2017117942A1 (zh) 一种用于多层sdn控制器的信息查询方法及系统
JP2001290787A (ja) データ配信方法及びデータ配信プログラムを格納した記憶媒体
CN106713460B (zh) 一种flash应用的版本控制方法和系统
CN108282516B (zh) 一种基于iSCSI的分布式存储集群负载均衡方法和装置
EP2695362B1 (en) Multi-user cache system
US11995469B2 (en) Method and system for preemptive caching across content delivery networks

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
PP01 Preservation of patent right
PP01 Preservation of patent right

Effective date of registration: 20190823

Granted publication date: 20190308

PD01 Discharge of preservation of patent
PD01 Discharge of preservation of patent

Date of cancellation: 20220823

Granted publication date: 20190308

PP01 Preservation of patent right
PP01 Preservation of patent right

Effective date of registration: 20220823

Granted publication date: 20190308