CN101441655A - 读取数据的方法及装置 - Google Patents

读取数据的方法及装置 Download PDF

Info

Publication number
CN101441655A
CN101441655A CNA2008101875594A CN200810187559A CN101441655A CN 101441655 A CN101441655 A CN 101441655A CN A2008101875594 A CNA2008101875594 A CN A2008101875594A CN 200810187559 A CN200810187559 A CN 200810187559A CN 101441655 A CN101441655 A CN 101441655A
Authority
CN
China
Prior art keywords
data
reading
read
request
asynchronous
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.)
Granted
Application number
CNA2008101875594A
Other languages
English (en)
Other versions
CN101441655B (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 Zhigu Ruituo Technology Services Co Ltd
Original Assignee
Shenzhen Xunlei 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 Shenzhen Xunlei Network Technology Co Ltd filed Critical Shenzhen Xunlei Network Technology Co Ltd
Priority to CN2008101875594A priority Critical patent/CN101441655B/zh
Publication of CN101441655A publication Critical patent/CN101441655A/zh
Application granted granted Critical
Publication of CN101441655B publication Critical patent/CN101441655B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

本发明公开了一种读取数据的方法,该方法包括:接收读取数据的请求;检查所请求的数据是否在文件缓存池中,所述文件缓存池以文件划分的文件块为单位缓存数据,并且缓存的数据为文件的所有用户共享;若是,则直接从所述文件缓存池读取所请求的数据;若否,则发起异步输入输出IO读盘请求。本发明同时公开一种读取数据的装置。利用本发明实施例进行数据读取,无论是文件的顺序读还是随机读,都具有良好的读盘性能。

Description

读取数据的方法及装置
技术领域
本发明涉及计算机技术领域,尤其涉及读取数据的方法及装置。
背景技术
互联网上广泛使用的服务器/客户端架构体系中,服务器要同时为成千上万的客户端提供不同的服务,很多客户端的请求要求服务器从磁盘读取数据,这些读盘请求可能需要从文件中顺序读取数据,也可能需要从文件中随机读取数据。由于服务器必须同时为众多客户端提供读盘服务,因此服务器的读盘能力是限制服务器综合性能的关键因素。
计算机从磁盘读取数据是一项耗时的操作,这个时间主要为寻道时间,即将磁头移动到指定磁道所需时间,而在已经完成磁头寻道的前提下,读取一个扇区的数据和读取多个连续扇区消耗的时间相差并不大。计算机访问内存的速度比访问磁盘的速度快很多,为了提高读盘的效率,计算机在上层用户的读盘操作与实际的磁盘操作之间添加了一个“数据缓冲区”,利用这个数据缓冲区来实现磁盘操作性能的优化——计算机先将磁盘读取的数据保存在数据缓冲区,然后再从数据缓冲区复制至用户缓存。由于计算机的文件系统在将文件写入磁盘时尽可能保证该文件所占的扇区序号连续或者靠近,并且很多情况下对文件的读取为顺序读,因此从磁盘中读所需扇区数据的同时,“顺便”将属于该文件的一些后续扇区数据读入数据缓冲区能够显著提高磁盘读数据的性能,此即文件系统的预读机制。
对于文件的顺序读来说,利用文件系统的预读机制能够显著提高读盘效率,但对于文件随机读取较多的互联网应用场景,文件系统的预读机制频繁失效,不仅增加了服务器响应客户端的时间,而且加重了服务器的读盘负担,严重影响服务器的读盘性能。
影响服务器读盘性能的另外一个重要因素是读盘方式的选择:选择同步读还是异步读。对于同步读方式,无论是Linux中使用的读盘函数read()还是Windows中使用的读盘函数ReadFile(),都是以一种堵塞的方式从磁盘读取数据——堵塞当前线程直至所需数据读至用户缓存。由于服务器同时要为成千上万的客户端提供读盘服务,因此每个读盘线程中会累积多个读盘请求,而堵塞的read()/ReadFile()操作会导致读盘线程中其他的读盘请求也处于等待状态,不仅影响服务器的读盘能力,而且影响服务器响应客户端请求的速度。服务器为了提高读盘能力,必然需要增加读盘线程的数目,但读盘线程数目的增加引起线程上下文频繁切换,导致大量的线程切换开销,更严重的是读盘线程之间的互相干扰——这是因为一个磁盘上能够提交的读盘请求数目是有限的,当磁盘上的读盘请求队列已满时,则调用read()/ReadFile()的线程会被挂起,当读盘请求队列有空位时休眠的读盘线程会被唤醒并对请求队列的空位展开资源竞争,从而消耗大量的CPU资源,因此服务器以同步读的方式从磁盘读取数据来满足众多客户端同时发出的读盘请求就不是一个好的选择。
发明内容
本发明实施例提供一种读取数据的方法,用以改善读盘性能,该方法包括:
接收读取数据的请求;
检查所请求的数据是否在文件缓存池中,所述文件缓存池以文件划分的文件块为单位缓存数据,并且缓存的数据为文件的所有用户共享;
若是,则直接从所述文件缓存池读取所请求的数据;
若否,则发起异步输入输出IO读盘请求。
较佳的,接收读取数据的请求,是指:
接收客户端发出的读盘请求。
较佳的,所述文件缓存池中文件块的数量根据用户的数量确定。
较佳的,所述文件缓存池中文件块的大小根据如下因素其中之一或任意组合进行确定:
数据读取过程中随机读和顺序读的比例、所请求的数据大小、服务器的读盘能力、文件缓存池的缓存Cache命中率、读盘的响应速度。
较佳的,文件块的大小为64K~256K。
较佳的,发起异步IO读盘请求之后,进一步包括:
创建后台线程,并将异步IO读盘请求列入等待队列;
后台线程顺序将等待队列中的异步IO读盘请求提交操作系统处理,并在操作系统每处理完成一个异步IO读盘请求后,向发出读取数据的请求端发出读盘通知。
本发明实施例还提供一种读取数据的装置,用以改善读盘性能,该装置包括:
接收模块,用于接收读取数据的请求;
检查模块,用于检查所请求的数据是否在文件缓存池中,所述文件缓存池以文件划分的文件块为单位缓存数据,并且缓存的数据为文件的所有用户共享;
执行模块,用于在检查模块确定所请求的数据在文件缓存池中时,直接从所述文件缓存池读取所请求的数据;在检查模块确定所请求的数据不在文件缓存池中时,发起异步IO读盘请求。
较佳的,所述接收模块进一步用于接收客户端发出的读盘请求。
较佳的,所述文件缓存池中文件块的大小根据如下因素其中之一或任意组合进行确定:
数据读取过程中随机读和顺序读的比例、所请求的数据大小、服务器的读盘能力、文件缓存池的Cache命中率、读盘的响应速度。
较佳的,该装置还包括:
异步处理模块,用于创建后台线程,并将异步IO读盘请求列入等待队列;触发后台线程顺序将等待队列中的异步IO读盘请求提交操作系统处理,并在操作系统每处理完成一个异步IO读盘请求后,向发出读取数据的请求端发出读盘通知。
本发明实施例在进行数据读取处理时,接收读取数据的请求;检查所请求的数据是否在文件缓存池中,所述文件缓存池以文件划分的文件块为单位缓存数据,并且缓存的数据为文件的所有用户共享;若是,则直接从所述文件缓存池读取所请求的数据;若否,则发起异步IO读盘请求,从而通过文件缓存池保存从磁盘读取的数据,让多个用户共享缓存池,可以提高Cache的命中率,同时满足文件顺序读和随机读的需求;并且,通过发起异步IO读盘请求,以一种非堵塞的异步方式实现从磁盘读取数据,可以使服务器对读取数据的请求及时做出响应。利用本发明实施例进行数据读取,无论是文件的顺序读还是随机读,都具有良好的读盘性能。
附图说明
图1为本发明实施例中读取数据的方法流程图;
图2为本发明实施例中文件缓存池的示意图;
图3为本发明实施例中读取数据的一个具体实例的流程图;
图4为本发明实施例中对异步IO读盘请求进行处理的流程图;
图5、图6为本发明实施例中读取数据的装置结构图。
具体实施方式
下面结合说明书附图对本发明实施例进行详细说明。
如图1所示,本发明实施例中读取数据的方法流程如下:
步骤101、接收读取数据的请求。
步骤102、检查所请求的数据是否在文件缓存池中,所述文件缓存池以文件划分的文件块为单位缓存数据,并且缓存的数据为文件的所有用户共享;若是,则执行步骤103;若否,则执行步骤104。
步骤103、直接从所述文件缓存池读取所请求的数据。
步骤104、发起异步IO(Input Output,输入输出)读盘请求。
本发明实施例中的文件缓存池如图2所示,在文件缓存池中,一个文件被划分为多个“文件块”,多个“文件块”组成该文件的缓存池,这个缓存池内保存的数据为该文件的所有用户共享,文件缓存池以文件块为单位缓存、读取数据。文件缓存池为在内存中划分的一定大小的存储区域。通常在例如多源下载的应用中,可将需下载的文件分为多个文件块,需要下载数据的客户端分别从多个服务器获取数据,而从每个服务器只获取部分文件块对应的数据。
当客户端需要读取文件的数据时,可利用函数“Open()”(Linux函数)或“ReadFile()”(windows函数)打开文件并可添加O_DIRECT选项,而不使用计算机文件系统自带的数据缓存区,以避免从数据缓存区至用户缓存的数据拷贝操作。在文件缓存池中,一个文件可对应一个文件缓存池,所有读取同一个文件的用户共享该缓存池。一个文件对应的缓存池中并不一定存储了该文件的全部文件块,文件缓存池中的文件块数量根据用户的数量确定,较佳的,随着需获取该文件的用户数增加,文件缓存池中包括的文件块数量可以相应增加,例如文件每增加一个用户,将该文件多划分出多个文件块,则该文件有更多的文件块保存在文件缓存池中,服务器直接从文件缓存池中读取数据的概率增加,从而提高服务器的读盘性能。在某些情况下,若请求的所有数据都被保存在文件缓存池中,此时服务器可以直接从文件块中读取数据,大大提高服务器响应客户端的速度。
在文件缓存池中,文件块的大小可配置。文件块大小的配置受很多因素的影响,例如可以根据如下因素其中之一或任意组合进行确定:数据读取过程中随机读和顺序读的比例、所请求的数据大小、服务器的读盘能力、文件缓存池的缓存(Cache)命中率、读盘的响应速度。例如,在配置文件块大小时,文件块的大小直接影响服务器的读盘能力——过大的文件块虽然使服务器的读盘能力增加,但文件缓存池的Cache命中率可能降低,读盘浪费严重,并且读盘的延迟增加;过小的文件块虽然能够提高文件缓存池的Cache命中率,提升读盘的响应速度,但服务器读盘的能力却降低,因此文件块大小的选择要仔细权衡,推荐的文件块大小在64K~256K。
一个实施例中,步骤101的接收读取数据的请求,可以是:接收客户端发出的读盘请求。如图3所示,该实施例的流程示意如下:
步骤301、接收到客户端发出的读盘请求。
步骤302、检查请求的数据是否在文件缓存池中。
步骤303、如果请求的数据在文件缓存池中,则直接读取数据。
步骤304、如果请求的数据不在缓存池中,则创建新的异步IO读盘请求。
步骤305、将创建好的异步IO读盘请求发出。
如果请求的数据不在文件缓存池中,则需要创建新的异步IO读盘请求。在一些情况下,请求的数据跨越多个连续的文件块,则需要创建多个异步IO读盘请求。
本发明实施例采用异步的方式从磁盘读取数据,即当有多个客户端同时请求获取数据时,具体的读盘操作由后台线程完成。则在发起IO读盘请求之后,还包括:创建后台线程,并将异步IO读盘请求列入等待队列;后台线程顺序将等待队列中的异步IO读盘请求提交操作系统处理,并在操作系统每处理完成一个异步IO读盘请求后,向发起读盘请求方发出读盘通知。
一般情况下需要创建多个后台线程,每个后台线程包括一个等待队列,用于保存接收的异步IO读盘请求(每个异步IO读盘请求包含了请求获取数据的客户端信息)。由于后台线程有多个,则需要将创建的异步IO读盘请求放入合适的后台线程等待队列中。后台线程启动后,循环处理如下两件事情:第一、查询等待队列中是否有未处理的异步IO读盘请求,如果有,就提交给操作系统处理;第二、后台线程查询以前提交的异步IO读盘请求是否已经由操作系统完成,如果有异步IO读盘请求处理完成,则发出读盘通知,通知客户端从文件缓存池中读取数据。
如图4所示,对异步IO读盘请求的处理过程如下:
步骤401、创建后台线程,专门处理接收的异步IO读盘请求,其中后台线程包括一个等待队列,用于保存接收的异步IO读盘请求。
步骤402、后台线程检查等待队列中是否有未处理的异步IO读盘请求。如果等待队列中没有未处理的异步IO读盘请求,则直接跳到步骤404处理。如果等待队列中有未处理的异步IO读盘请求,则执行步骤403。
步骤403、后台线程提交顺序在最前的未处理异步IO读盘请求给操作系统处理。
步骤404、后台线程检查以前提交给操作系统处理的异步IO读盘请求是否有已被处理完成的。如果没有异步IO读盘请求被处理完成,则直接返回到步骤402进行循环处理;如果有异步IO读盘请求完成,则执行步骤405。
步骤405、发出读盘通知,通知客户端从文件缓存池读取数据,并返回到步骤402循环处理。
本领域普通技术人员可以理解上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:ROM、RAM、磁盘或光盘等。
基于同一发明构思,本发明实施例还提供一种读取数据的装置,其结构如图5所示,可以包括:
接收模块501,用于接收读取数据的请求;
检查模块502,用于检查所请求的数据是否在文件缓存池中,所述文件缓存池以文件划分的文件块为单位缓存数据,并且缓存的数据为文件的所有用户共享;
执行模块503,用于在检查模块确定所请求的数据在文件缓存池中时,直接从所述文件缓存池读取所请求的数据;在检查模块确定所请求的数据不在文件缓存池中时,发起异步IO读盘请求。
一个实施例中,接收模块501还可以用于接收客户端发出的读盘请求。
一个实施例中,文件缓存池中文件块的大小根据如下因素其中之一或任意组合进行确定:
数据读取过程中随机读和顺序读的比例、所请求的数据大小、服务器的读盘能力、文件缓存池的缓存Cache命中率、读盘的响应速度。
如图6所示,一个实施例中,图5所示的读取数据的装置还可以包括:
异步处理模块504,用于创建后台线程,并将异步IO读盘请求列入等待队列;触发后台线程顺序将等待队列中的异步IO读盘请求提交操作系统处理,并在操作系统每处理完成一个异步IO读盘请求后,向发出读取数据的请求端发出读盘通知。
本发明实施例在进行数据读取处理时,接收读取数据的请求;检查所请求的数据是否在文件缓存池中,所述文件缓存池以文件划分的文件块为单位缓存数据,并且缓存的数据为文件的所有用户共享;若是,则直接从所述文件缓存池读取所请求的数据;若否,则发起异步IO读盘请求,从而通过文件缓存池保存从磁盘读取的数据,让多个用户共享缓存池,可以提高Cache的命中率,同时满足文件顺序读和随机读的需求;并且,通过发起异步IO读盘请求,以一种非堵塞的异步方式实现从磁盘读取数据,可以使服务器对读取数据的请求及时做出响应。利用本发明实施例进行数据读取,无论是文件的顺序读还是随机读,都具有良好的读盘性能。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若对本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

Claims (11)

1、一种读取数据的方法,其特征在于,该方法包括:
接收读取数据的请求;
检查所请求的数据是否在文件缓存池中,所述文件缓存池以文件划分的文件块为单位缓存数据,并且缓存的数据为文件的所有用户共享;
若是,则直接从所述文件缓存池读取所请求的数据;
若否,则发起异步输入输出IO读盘请求。
2、如权利要求1所述的方法,其特征在于,接收读取数据的请求,是指:
接收客户端发出的读盘请求。
3、如权利要求1所述的方法,其特征在于,所述文件缓存池中文件块的数量根据用户的数量确定。
4、如权利要求1所述的方法,其特征在于,所述文件缓存池中文件块的大小根据如下因素其中之一或任意组合进行确定:
数据读取过程中随机读和顺序读的比例、所请求的数据大小、服务器的读盘能力、文件缓存池的缓存Cache命中率、读盘的响应速度。
5、如权利要求4所述的方法,其特征在于,文件块的大小为64K~256K。
6、如权利要求1至5任一项所述的方法,其特征在于,发起异步IO读盘请求之后,进一步包括:
创建后台线程,并将异步IO读盘请求列入等待队列;
后台线程顺序将等待队列中的异步IO读盘请求提交操作系统处理,并在操作系统每处理完成一个异步IO读盘请求后,向发出读取数据的请求端发出读盘通知。
7、一种读取数据的装置,其特征在于,包括:
接收模块,用于接收读取数据的请求;
检查模块,用于检查所请求的数据是否在文件缓存池中,所述文件缓存池以文件划分的文件块为单位缓存数据,并且缓存的数据为文件的所有用户共享;
执行模块,用于在检查模块确定所请求的数据在文件缓存池中时,直接从所述文件缓存池读取所请求的数据;在检查模块确定所请求的数据不在文件缓存池中时,发起异步IO读盘请求。
8、如权利要求7所述的装置,其特征在于,所述接收模块进一步用于接收客户端发出的读盘请求。
9、如权利要求7所述的装置,其特征在于,所述文件缓存池中文件块的大小根据如下因素其中之一或任意组合进行确定:
数据读取过程中随机读和顺序读的比例、所请求的数据大小、服务器的读盘能力、文件缓存池的Cache命中率、读盘的响应速度。
10、如权利要求7所述的方法,其特征在于,所述文件缓存池中文件块的数量根据用户的数量确定。
11、如权利要求7至10任一项所述的装置,其特征在于,还包括:
异步处理模块,用于创建后台线程,并将异步IO读盘请求列入等待队列;触发后台线程顺序将等待队列中的异步IO读盘请求提交操作系统处理,并在操作系统每处理完成一个异步IO读盘请求后,向发出读取数据的请求端发出读盘通知。
CN2008101875594A 2008-12-24 2008-12-24 读取数据的方法及装置 Active CN101441655B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2008101875594A CN101441655B (zh) 2008-12-24 2008-12-24 读取数据的方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2008101875594A CN101441655B (zh) 2008-12-24 2008-12-24 读取数据的方法及装置

Publications (2)

Publication Number Publication Date
CN101441655A true CN101441655A (zh) 2009-05-27
CN101441655B CN101441655B (zh) 2011-01-19

Family

ID=40726090

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2008101875594A Active CN101441655B (zh) 2008-12-24 2008-12-24 读取数据的方法及装置

Country Status (1)

Country Link
CN (1) CN101441655B (zh)

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102253810A (zh) * 2010-05-17 2011-11-23 腾讯科技(深圳)有限公司 数据读取方法、装置和系统
CN102566999A (zh) * 2010-12-31 2012-07-11 新奥特(北京)视频技术有限公司 一种基于缓存的图标读取方法
CN103136278A (zh) * 2011-12-05 2013-06-05 腾讯科技(深圳)有限公司 一种读取数据的方法及装置
CN103543959A (zh) * 2013-10-08 2014-01-29 深圳市国泰安信息技术有限公司 海量数据高速缓存的方法及装置
CN104598453A (zh) * 2013-10-31 2015-05-06 中国银联股份有限公司 基于数据缓冲的数据迁移方法
CN105487811A (zh) * 2015-02-09 2016-04-13 哈尔滨安天科技股份有限公司 一种基于缓冲对齐的文件读写方法及系统
CN106095552A (zh) * 2016-06-07 2016-11-09 华中科技大学 一种基于i/o去重的多任务图处理方法及系统
CN106156049A (zh) * 2015-03-27 2016-11-23 天脉聚源(北京)科技有限公司 一种数据读取的方法和系统
CN102566999B (zh) * 2010-12-31 2016-12-14 新奥特(北京)视频技术有限公司 一种基于缓存的图标读取方法
CN108255853A (zh) * 2016-12-29 2018-07-06 卓望数码技术(深圳)有限公司 一种插件式的请求异步处理方法以及系统
CN108292278A (zh) * 2016-01-22 2018-07-17 株式会社日立制作所 计算机系统和计算机
CN111208953A (zh) * 2020-04-16 2020-05-29 广东睿江云计算股份有限公司 一种分布式存储方法及其装置
CN112799585A (zh) * 2019-11-14 2021-05-14 百度在线网络技术(北京)有限公司 数据处理方法、装置、电子设备及可读存储介质
CN113010454A (zh) * 2021-02-09 2021-06-22 Oppo广东移动通信有限公司 数据读写方法、装置、终端及存储介质

Cited By (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102253810B (zh) * 2010-05-17 2014-02-05 深圳市世纪光速信息技术有限公司 数据读取方法、装置和系统
CN102253810A (zh) * 2010-05-17 2011-11-23 腾讯科技(深圳)有限公司 数据读取方法、装置和系统
CN102566999A (zh) * 2010-12-31 2012-07-11 新奥特(北京)视频技术有限公司 一种基于缓存的图标读取方法
CN102566999B (zh) * 2010-12-31 2016-12-14 新奥特(北京)视频技术有限公司 一种基于缓存的图标读取方法
CN103136278A (zh) * 2011-12-05 2013-06-05 腾讯科技(深圳)有限公司 一种读取数据的方法及装置
CN103136278B (zh) * 2011-12-05 2016-10-05 腾讯科技(深圳)有限公司 一种读取数据的方法及装置
CN103543959B (zh) * 2013-10-08 2016-12-07 深圳国泰安教育技术股份有限公司 海量数据高速缓存的方法及装置
CN103543959A (zh) * 2013-10-08 2014-01-29 深圳市国泰安信息技术有限公司 海量数据高速缓存的方法及装置
CN104598453A (zh) * 2013-10-31 2015-05-06 中国银联股份有限公司 基于数据缓冲的数据迁移方法
CN104598453B (zh) * 2013-10-31 2018-02-27 中国银联股份有限公司 基于数据缓冲的数据迁移方法
CN105487811A (zh) * 2015-02-09 2016-04-13 哈尔滨安天科技股份有限公司 一种基于缓冲对齐的文件读写方法及系统
CN106156049A (zh) * 2015-03-27 2016-11-23 天脉聚源(北京)科技有限公司 一种数据读取的方法和系统
CN108292278A (zh) * 2016-01-22 2018-07-17 株式会社日立制作所 计算机系统和计算机
CN108292278B (zh) * 2016-01-22 2021-02-26 株式会社日立制作所 计算机系统和计算机
CN106095552A (zh) * 2016-06-07 2016-11-09 华中科技大学 一种基于i/o去重的多任务图处理方法及系统
CN106095552B (zh) * 2016-06-07 2019-06-28 华中科技大学 一种基于i/o去重的多任务图处理方法及系统
CN108255853A (zh) * 2016-12-29 2018-07-06 卓望数码技术(深圳)有限公司 一种插件式的请求异步处理方法以及系统
CN112799585A (zh) * 2019-11-14 2021-05-14 百度在线网络技术(北京)有限公司 数据处理方法、装置、电子设备及可读存储介质
CN112799585B (zh) * 2019-11-14 2024-05-24 百度在线网络技术(北京)有限公司 数据处理方法、装置、电子设备及可读存储介质
CN111208953A (zh) * 2020-04-16 2020-05-29 广东睿江云计算股份有限公司 一种分布式存储方法及其装置
CN113010454A (zh) * 2021-02-09 2021-06-22 Oppo广东移动通信有限公司 数据读写方法、装置、终端及存储介质

Also Published As

Publication number Publication date
CN101441655B (zh) 2011-01-19

Similar Documents

Publication Publication Date Title
CN101441655B (zh) 读取数据的方法及装置
US10120586B1 (en) Memory transaction with reduced latency
US5410653A (en) Asynchronous read-ahead disk caching using multiple disk I/O processes and dynamically variable prefetch length
US8661230B2 (en) Allocation of counters from a pool of counters to track mappings of logical registers to physical registers for mapper based instruction executions
US7500063B2 (en) Method and apparatus for managing a cache memory in a mass-storage system
US6055603A (en) Method and apparatus for performing pre-request operations in a cached disk array storage system
US10417137B2 (en) Flushing pages from solid-state storage device
US20080005481A1 (en) Read ahead storage control
US20100180208A1 (en) Server side data cache system
CN112181916B (zh) 基于用户空间文件系统fuse的文件预读方法及装置、电子设备
WO2016155238A1 (zh) 一种分布式存储系统中的文件读取方法及服务端
US20170004087A1 (en) Adaptive cache management method according to access characteristics of user application in distributed environment
CN110727685A (zh) 一种基于Cassandra数据库的数据压缩方法、设备以及存储介质
US20060218349A1 (en) Device and method for caching control, and computer product
CN110765086A (zh) 一种小文件的目录读取方法、系统、电子设备及存储介质
CN113835614A (zh) 一种基于分布式文件存储客户端的ssd智能缓存方法和系统
US20090119361A1 (en) Cache management for parallel asynchronous requests in a content delivery system
CN111177032A (zh) 缓存空间申请方法、系统、装置及计算机可读存储介质
CN101853218B (zh) 用于磁盘阵列的读取方法和系统
US8566521B2 (en) Implementing cache offloading
WO2016090985A1 (zh) 缓存的读取、读取处理方法及装置
US20210216460A1 (en) Method and Apparatus for Dynamically Adapting Sizes of Cache Partitions in a Partitioned Cache
US6816954B2 (en) System and method for tuning retry performance
CN115268763A (zh) 一种缓存管理方法、装置及设备
JP2008299672A (ja) 計算機システム及びこれを用いたデータベース管理方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
ASS Succession or assignment of patent right

Owner name: BEIJING Z-GOOD RUITUO TECHNOLOGY SERVICE CO., LTD.

Free format text: FORMER OWNER: XUNLEI NETWORK TECHNOLOGY CO., LTD., SHENZHEN

Effective date: 20131028

C41 Transfer of patent application or patent right or utility model
COR Change of bibliographic data

Free format text: CORRECT: ADDRESS; FROM: 518057 SHENZHEN, GUANGDONG PROVINCE TO: 100085 HAIDIAN, BEIJING

TR01 Transfer of patent right

Effective date of registration: 20131028

Address after: 100085 Beijing city Haidian District No. 33 Xiaoying Road 1 1F05 room

Patentee after: Beijing Zhigu Ruituo Technology Service Co., Ltd.

Address before: 518057 Guangdong, Shenzhen, Nanshan District science and technology in the road, Shenzhen, No. 11, software park, building 7, level 8, two

Patentee before: Xunlei Network Technology Co., Ltd., Shenzhen