CN107463512B - 分布式高速存储***的数据更新方法 - Google Patents
分布式高速存储***的数据更新方法 Download PDFInfo
- Publication number
- CN107463512B CN107463512B CN201710493711.0A CN201710493711A CN107463512B CN 107463512 B CN107463512 B CN 107463512B CN 201710493711 A CN201710493711 A CN 201710493711A CN 107463512 B CN107463512 B CN 107463512B
- Authority
- CN
- China
- Prior art keywords
- data
- cache
- speed
- storage system
- low
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0804—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with main memory updating
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0866—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
- G06F12/0868—Data transfer between cache memory and other subsystems, e.g. storage devices or host systems
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及一种分布式高速存储***的数据更新方法,包括:步骤S1:建立元数据集合,查找所有代码文件中的函数,并保存于元数据集合中;步骤S2:获取高速缓存中的数据键值,根据数据键值在元数据集合中查找得到对应函数,从低速存储器中获取对应函数的数据,并以此修改高速缓存中的对应数据。与现有技术相比,本发明以键值作为查找依据,利用低速存储中的数据更新高速缓存中的数,不需要对各条高速缓存中的数据进行甄别,免去了数据修改监听等消耗,提升了***效率。
Description
技术领域
本发明涉及一种数据更新方法,尤其是涉及一种分布式高速存储***的数据更新方法。
背景技术
通常使用高速缓存存储***提供高性能要求,但价格较高。使用硬盘满足大容量存储,价格低,但是速度慢。企业级开发中,在很多场景下将硬盘中的数据存储在高速缓存中,提高业务吞吐量。但是带来的问题是,目会导致无法满足ACID中对数据一致性的要求。
例如《高速缓存一致性分析与实现》(龙岩师专学报,2004年第2卷第三期,9~12页,作者:沈汉鑫)记载了解决一致性问题的几种方式:
(1)硬件控制法———监听总线协议总线型多处理机***常采用监听总线协议。这种方法的基本思想是:各处理机元素的Cache控制器监视总线上其他各处理机和共享主存储器间的联络信号。如果这个联络信号与自己有关,就开始处理。例如,最简单的写直达方式中,某一个处理机要处理数据,就把写命令和地址等发到总线上。
(2)基于目录的协议用于网络连接的处理机***。当某台处理机采用写无效协议正在更新一个变量并且其他的处理机也试图读该变量时,则会发生读缺失并可能导致总线的流量大大增加。另外,写更新协议可以更新远程高速缓存中的数据,而其他处理机可能永远也不会使用这些数据。
(3)软件解决Cache数据一致性问题的方法是以通过编译进行事先分析的办法为主流。最简单的方法是:可写的共享数据都不放在Cache中,但这样对很多数据来讲,就失去了Cache的意义。
此外,中国专利CN 103229152 B也公开了一种高速缓存一致性控制方法、***和程序,实现了高速缓存一致性控制,其中共享存储器类型多处理器***的可缩放性得到提高,包括高速缓存和TLB的多个处理器共享***存储器,多个处理器中的每个处理器包括TLB控制单元,该TLB控制单元进一步包括:执行TLB搜索的TLB搜索单元;以及在无命中获得于TLB搜索中并且产生TLB中断时执行TLB注册信息处理的一致性处置器:用于执行对***存储器的页面表的搜索并且对TLB注册信息执行替换的TLB替换处置器。
以上方式都需要通过监听修改记录或者建立索引的方式确定处于各高速缓存中的数据哪一个是最终需要的,这需要对每一步的数据修改都留有记录,因此在运算的同时,还需要执行额外的记录任务,***有着更大的开销。
发明内容
本发明的目的就是为了克服上述现有技术存在的缺陷而提供一种适用于主存储***为低速存储***的分布式高速存储***的数据更新方法。
本发明的目的可以通过以下技术方案来实现:
一种分布式高速存储***的数据更新方法,包括:
步骤S1:建立元数据集合,查找所有代码文件中的函数,并保存于元数据集合中;
步骤S2:获取高速缓存中的数据键值,根据数据键值在元数据集合中查找得到对应函数,从低速存储器中获取所述对应函数的数据,并以此修改高速缓存中的对应数据。
所述步骤S2具体包括步骤:
S21:确定需要更新的高速缓存;
S22:获取需所有需要更新的高速缓存中的数据键值;
S23:根据数据键值在元数据集合中查找,若查找得到对应函数,则执行步骤S24;
S24:从低速存储器中获取所述对应函数的数据,并以此修改所有含有该数据的高速缓存中的对应数据。
所述需要更新的高速缓存为所有高速缓存。
所述低速存储器为磁盘。
所述低速存储器为硬盘。
所述步骤S24中,若多条高速缓存中存在同一个函数的数据键值,则以低速存储器中获取的所述对应函数的数据一并更新这些高速缓存中的对应数据。
与现有技术相比,本发明具有以下优点:
1)以键值作为查找依据,利用低速存储中的数据更新高速缓存中的数,不需要对各条高速缓存中的数据进行甄别,免去了数据修改监听等消耗,提升了***效率。
2)可以有差别的更新指定条的缓存。
附图说明
图1为本发明方法的主要步骤流程示意图。
具体实施方式
下面结合附图和具体实施例对本发明进行详细说明。本实施例以本发明技术方案为前提进行实施,给出了详细的实施方式和具体的操作过程,但本发明的保护范围不限于下述的实施例。
一种分布式高速存储***的数据更新方法,如图1所示,包括:
步骤S1:首先建立源代码的存储关系,建立元数据集合f(x),查找所有代码文件中的函数,并保存于元数据集合中;
步骤S2:获取高速缓存中的数据键值,根据数据键值在元数据集合中查找得到对应函数,从低速存储器中获取对应函数的数据,并以此修改高速缓存中的对应数据,具体包括步骤:
S21:跟新算法开始后,先确定需要更新的高速缓存,优选的,需要更新的高速缓存为所有高速缓存;
S22:获取需所有需要更新的高速缓存中的数据键值,低速存储器为包含硬盘在内的磁盘;
S23:根据数据键值在元数据集合中查找,若查找得到对应函数,则执行步骤S24;
S24:从低速存储器中获取对应函数的数据,并以此修改所有含有该数据的高速缓存中的对应数据,其中,若多条高速缓存中存在同一个函数的数据键值,则以低速存储器中获取的对应函数的数据一并更新这些高速缓存中的对应数据。
对于主存储***为低速存储***的存储***,业务***不会将数据写入至高速缓存中,所以低速存储器中存储的数据一般都是需要的数据,以键值作为查找依据,利用低速存储中的数据更新高速缓存中的数,不需要对各条高速缓存中的数据进行甄别,免去了数据修改监听等消耗,提升了***效率。
Claims (4)
1.一种分布式高速存储***的数据更新方法,其特征在于,应用于主存储***为低速存储***的存储***,该方法包括:
步骤S1:建立元数据集合,查找所有代码文件中的函数,并保存于元数据集合中,
步骤S2:获取高速缓存中的数据键值,根据数据键值在元数据集合中查找得到对应函数,从低速存储器中获取所述对应函数的数据,并以此修改高速缓存中的对应数据;
所述步骤S2具体包括步骤:
S21:确定需要更新的高速缓存,
S22:获取所有需要更新的高速缓存中的数据键值,
S23:根据数据键值在元数据集合中查找,若查找得到对应函数,则执行步骤S24,
S24:从低速存储器中获取所述对应函数的数据,并以此修改所有含有该数据的高速缓存中的对应数据;
所述步骤S24中,若多条高速缓存中存在同一个函数的数据键值,则以低速存储器中获取的所述对应函数的数据一并更新这些高速缓存中的对应数据。
2.根据权利要求1所述的一种分布式高速存储***的数据更新方法,其特征在于,所述需要更新的高速缓存为所有高速缓存。
3.根据权利要求1所述的一种分布式高速存储***的数据更新方法,其特征在于,所述低速存储器为磁盘。
4.根据权利要求1所述的一种分布式高速存储***的数据更新方法,其特征在于,所述低速存储器为硬盘。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710493711.0A CN107463512B (zh) | 2017-06-26 | 2017-06-26 | 分布式高速存储***的数据更新方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710493711.0A CN107463512B (zh) | 2017-06-26 | 2017-06-26 | 分布式高速存储***的数据更新方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107463512A CN107463512A (zh) | 2017-12-12 |
CN107463512B true CN107463512B (zh) | 2020-11-13 |
Family
ID=60546371
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710493711.0A Active CN107463512B (zh) | 2017-06-26 | 2017-06-26 | 分布式高速存储***的数据更新方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107463512B (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103518364A (zh) * | 2013-03-19 | 2014-01-15 | 华为技术有限公司 | 分布式存储***的数据更新方法及服务器 |
CN104239572A (zh) * | 2014-09-30 | 2014-12-24 | 普元信息技术股份有限公司 | 基于分布式缓存实现元数据分析的***及方法 |
CN104980454A (zh) * | 2014-04-02 | 2015-10-14 | 腾讯科技(深圳)有限公司 | 一种资源数据共享方法、服务器及*** |
CN105930104A (zh) * | 2016-05-17 | 2016-09-07 | 百度在线网络技术(北京)有限公司 | 数据存储方法和装置 |
CN106649451A (zh) * | 2016-09-22 | 2017-05-10 | 北京奇虎科技有限公司 | 数据更新方法及装置 |
CN106886375A (zh) * | 2017-03-27 | 2017-06-23 | 百度在线网络技术(北京)有限公司 | 存储数据的方法和装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106649708A (zh) * | 2013-08-29 | 2017-05-10 | 华为技术有限公司 | 存储数据的方法和装置 |
-
2017
- 2017-06-26 CN CN201710493711.0A patent/CN107463512B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103518364A (zh) * | 2013-03-19 | 2014-01-15 | 华为技术有限公司 | 分布式存储***的数据更新方法及服务器 |
CN104980454A (zh) * | 2014-04-02 | 2015-10-14 | 腾讯科技(深圳)有限公司 | 一种资源数据共享方法、服务器及*** |
CN104239572A (zh) * | 2014-09-30 | 2014-12-24 | 普元信息技术股份有限公司 | 基于分布式缓存实现元数据分析的***及方法 |
CN105930104A (zh) * | 2016-05-17 | 2016-09-07 | 百度在线网络技术(北京)有限公司 | 数据存储方法和装置 |
CN106649451A (zh) * | 2016-09-22 | 2017-05-10 | 北京奇虎科技有限公司 | 数据更新方法及装置 |
CN106886375A (zh) * | 2017-03-27 | 2017-06-23 | 百度在线网络技术(北京)有限公司 | 存储数据的方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN107463512A (zh) | 2017-12-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9992298B2 (en) | Relationship-based WAN caching for object stores | |
KR102661543B1 (ko) | 요청에 의해 캐시 유입을 상위 레벨 캐시로 로깅 | |
KR102398912B1 (ko) | 데이터를 프로세싱하기 위한 방법 및 프로세서 | |
US11347443B2 (en) | Multi-tier storage using multiple file sets | |
US9645931B2 (en) | Filtering snoop traffic in a multiprocessor computing system | |
US8423736B2 (en) | Maintaining cache coherence in a multi-node, symmetric multiprocessing computer | |
EP2919120B1 (en) | Memory monitoring method and related device | |
US10303806B2 (en) | Method and system for providing concurrent buffer pool and page cache | |
US20110314227A1 (en) | Horizontal Cache Persistence In A Multi-Compute Node, Symmetric Multiprocessing Computer | |
CN114721844B (zh) | 数据缓存方法和装置、计算机设备、存储介质 | |
US20170083537A1 (en) | Mapping logical identifiers using multiple identifier spaces | |
US20240086332A1 (en) | Data processing method and system, device, and medium | |
US8479055B2 (en) | Detecting and optimizing false sharing | |
CN111488293B (zh) | 多核***中数据访问者目录的访问方法及设备 | |
US20060242369A1 (en) | Memory mapped page priorities | |
US20170199819A1 (en) | Cache Directory Processing Method for Multi-Core Processor System, and Directory Controller | |
CN108664217B (zh) | 一种降低固态盘存储***写性能抖动的缓存方法及*** | |
Do et al. | Improving CPU I/O performance via SSD controller FTL support for batched writes | |
CN107463512B (zh) | 分布式高速存储***的数据更新方法 | |
CN115840654B (zh) | 消息的处理方法、***、计算设备及可读存储介质 | |
CN108733409B (zh) | 执行推测线程的方法以及片上多核处理器 | |
US20130227221A1 (en) | Cache access analyzer | |
CN104484332A (zh) | 一种嵌入式***中读写数据的方法及装置 | |
CN112748854B (zh) | 对快速存储设备的优化访问 | |
US20220147446A1 (en) | Offloading memory maintenance for a log-structured file system |
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 | ||
CP01 | Change in the name or title of a patent holder | ||
CP01 | Change in the name or title of a patent holder |
Address after: 200083 Shanghai, Hongkou District West Bay Road, building B, No. 8, layer Patentee after: Shanghai Gaodun Education Technology Co.,Ltd. Address before: 200083 Shanghai, Hongkou District West Bay Road, building B, No. 8, layer Patentee before: SHANGHAI GAODUN EDUCATION & TRAINING Co.,Ltd. |