CN105677744A - 一种文件系统中提高服务质量的方法和装置 - Google Patents

一种文件系统中提高服务质量的方法和装置 Download PDF

Info

Publication number
CN105677744A
CN105677744A CN201511018145.5A CN201511018145A CN105677744A CN 105677744 A CN105677744 A CN 105677744A CN 201511018145 A CN201511018145 A CN 201511018145A CN 105677744 A CN105677744 A CN 105677744A
Authority
CN
China
Prior art keywords
request
request queue
priority
queue
metadata
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.)
Pending
Application number
CN201511018145.5A
Other languages
English (en)
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.)
Dawning Information Industry Co Ltd
Original Assignee
Dawning Information Industry 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 Dawning Information Industry Co Ltd filed Critical Dawning Information Industry Co Ltd
Priority to CN201511018145.5A priority Critical patent/CN105677744A/zh
Publication of CN105677744A publication Critical patent/CN105677744A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/11File system administration, e.g. details of archiving or snapshots
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明提供了一种文件系统中提高服务质量的方法和装置,方法包括:接收磁盘的多个请求队列,根据所述请求队列的种类,划分各个请求队列的优先级,按照请求队列的优先级顺序执行请求队列。该方法能够优先执行优先级高的请求,执行时可以获得全部的磁盘资源,保证最短时间内执行完毕。

Description

一种文件系统中提高服务质量的方法和装置
技术领域
本发明涉及文件系统访问技术领域,尤其涉及一种文件系统中提高服务质量的方法和装置。
背景技术
文件系统是操作系统用于明确存储设备,常见的是磁盘,也有基于NANDFlash的固态硬盘或分区上的文件的方法和数据结构;即在存储设备上组织文件的方法。操作系统中负责管理和存储文件信息的软件机构称为文件管理系统,简称文件系统。文件系统由三部分组成:文件系统的接口,对对象操纵和管理的软件集合,对象及属性。从系统角度来看,文件系统是对文件存储设备的空间进行组织和分配,负责文件存储并对存入的文件进行保护和检索的系统。具体地说,它负责为用户建立文件,存入、读出、修改、转储文件,控制文件的存取,当用户不再使用时撤销文件等。当前的文件系统的服务质量采用的尽力服务模型,各个业务争抢文件系统的资源,获取不到资源时同步等待。常常导致不合理的拥塞。各个业务并不知道彼此存在,均试图独占磁盘资源,结果导致块设备层盲目的进行资源调度,每个请求的延迟均很长。
发明内容
针对以上问题,本发明提供了一种文件系统中提高服务质量的方法和装置。
在一个方面,本发明实施例提供了一种文件系统中提高服务质量的方法,包括:
接收磁盘的多个请求队列,
根据所述请求队列的种类,划分各个请求队列的优先级,
按照请求队列的优先级顺序执行请求队列。
可选的,所述多个请求队列包括:读请求队列、元数据请求队列、其它请求队列中的一种或多种,其中元数据请求队列包括写元数据请求或和日志应用请求,其它请求队列包括回刷数据请求。
可选的,所述划分各个请求队列的优先级包括:
读请求队列的优先级高于元数据请求队列的优先级;
元数据请求队列的优先级高于其它请求队列的优先级。
可选的,按照请求队列的优先级顺序执行请求队列包括:
优先级高的请求队列执行结束后执行优先级低的请求队列。
可选的,所述优先级高的请求队列执行结束后还包括:对剩余未执行的请求队列优先级重新排序,并按排序后的优先级顺序执行请求。
在另一个方面,本发明实施例提供了一种文件系统中提高服务质量的装置,包括:
接收请求队列模块,用于接收磁盘的多个请求队列,
确定优先级模块,用于根据所述请求队列的种类,划分各个请求队列的优先级,
执行请求模块,用于按照请求队列的优先级顺序执行请求队列。
可选的,所述多个请求队列包括:读请求队列、元数据请求队列、其它请求队列中的一种或多种,其中元数据请求队列包括写元数据请求或和日志应用请求,其它请求队列包括回刷数据请求。
可选的,所述确定优先级模块用于划分各个请求队列的优先级包括:
读请求队列的优先级高于元数据请求队列的优先级;
元数据请求队列的优先级高于其它请求队列的优先级。
可选的,执行请求模块用于按照请求队列的优先级顺序执行请求队列包括:
优先级高的请求队列执行结束后执行优先级低的请求队列。
可选的,所述执行请求模块还包括重新排序单元,用于优先级高的请求队列执行结束后,对剩余未执行的请求队列优先级重新排序,并按排序后的优先级顺序执行请求。
有益效果如下:
本发明提供了一种文件系统中提高服务质量的方法和装置,能够优先执行优先级高的请求,执行时可以获得全部的的磁盘资源,保证最短时间内执行完毕。
附图说明
下面将参照附图描述本发明的具体实施例,其中:
图1示出了本发明一种文件系统中提高服务质量的方法的总体方法流程图;
图2为本发明实施例一种文件系统中提高服务质量的方法的架构示意图图;
图3为本发明实施例一种文件系统中提高服务质量的方法的流程示意图图;
图4示出了本发明实施例中一种文件系统中提高服务质量的装置的结构示意图。
具体实施方式
为了使本发明的技术方案及优点更加清楚明白,以下结合附图对本发明的示例性实施例进行进一步详细的说明,显然,所描述的实施例仅是本发明的一部分实施例,而不是所有实施例的穷举。并且在不冲突的情况下,本说明中的实施例及实施例中的特征可以互相结合。
发明人在发明过程中注意到:各个业务争抢文件系统的资源,获取不到资源时同步等待,常常导致不合理的拥塞,各个业务并不知道彼此存在,均试图独占磁盘资源,结果导致块设备层盲目的进行资源调度,每个请求的延迟均很长。为了系统资源调度不均衡的问题,本发明提出了一种文件系统中提高服务质量的方法和装置,该方法可应用于一种调度器,能够按照优先级高的请求优先执行,执行时均可以获得全部的的磁盘资源,保证最短时间内执行完毕。
结合上述实施环境,参见图1所示的实施例,本实施例提供了一种文件系统中提高服务质量的方法,本实施例提供的方法流程具体如下:
步骤101、接收磁盘的多个请求队列;
步骤102、根据所述请求队列的种类,划分各个请求队列的优先级;
步骤103、按照请求队列的优先级顺序执行请求队列。
可选的,所述接收请求队列包括:读请求队列、元数据请求队列以及其它请求队列中的一种或多种,其中元数据请求队列包括写元数据请求或和日志应用请求,其它请求队列包括回刷数据请求。
可选的,读请求队列的优先级高于元数据请求队列的优先级,元数据请求队列的优先级高于其它请求队列的优先级。
实施例1
文件的系统是操作系统用于明确磁盘或分区上的文件的方法和数据结构,即在磁盘上组织文件的方法,也指用于存储文件的磁盘或分区。系统会根据请求数据的情况将多个来自外部的请求先放在缓存里面,对磁盘的访问包括读请求队列、元数据请求队列或其他请求队列中的一种或多种。
具体实施例中读请求队列包括对磁盘的读数据请求,元数据请求队列包括对磁盘的写数据请求和日志应用请求,其它请求队列包括回刷数据请求。
进一步,对磁盘的访问请求可以按照访问级别进行排队,分为多种优先级,异步执行。原则是用户请求高于后台请求,读请求高于写请求,元数据请求高于数据请求,满足用户对于相应时间的要求。优先级高的请求优先执行,执行时均可以获得全部的的磁盘资源,保证最短时间内执行完毕。图2为本实施例具体的结构示意图,图3为本实施例方法流程图,对于有读数据请求,写数据请求和日志应用请求,以及回刷数据请求,可通过调度器对各个请求进行调度,调度的方法如下:
步骤301、磁盘接收请来自读数据请求,元数据请求队列,和回刷数据请求求队列请求,其中元数据请求队列包括写元数据请求和日志应用请求;
步骤302、对读数据请求,写元数据请求,日志应用请求,和回刷数据请求进行比较,确定各个队列请求的优先级;
实施例中,读数据请求的优先级高于元数据请求,也即读数据请求的优先级高于写元数据请求和日志应用请求,元数据请求队列的优先级高于回刷数据请求。
步骤303、按照请求队列优先级顺序执行相应请求,也即首先执行读数据请求,再依次执行元数据请求、日志应用请求,最后再执行回刷数据请求。
调度器优先从读请求队列中获取请求同步执行,读请求队列为空时从元数据请求队列或日志应用请求队列中获取命令请求,仅在读请求队列与元数据请求队列均是空时,从其它请求队列中获取命令执行。调度器每次仅摘取一个请求执行,执行完成立即重新调度选取请求,由于执行命令时使用了同步完成机制,对磁盘的请求有且只能提交一个,保证了高级别请求最多等待一个正在执行的低优先级请求,待其完成后即可重新调度执行。调度过程中,低优先级请求始终让步于高优先级请求。
实施例2
考虑到高优先级的请求队列不止一个,有可能在下一个时间段内磁盘又接收到一个或多个请求队列,因此在高优先级的请求队列执行结束后需要对剩下未执行的队列重新排序,并将重新排序后的请求队列按顺序执行,具体方法如下:
1)磁盘接收请来自读数据请求,元数据请求队列,和回刷数据请求求队列请求,其中元数据请求队列包括写元数据请求和或日志应用请求;
2)对读数据请求,元数据请求队列,和回刷数据请求进行比较,确定各个队列请求的优先级;
实施例中,读数据请求的优先级高于元数据请求,元数据请求队列的优先级高于回刷数据请求。
3)按照请求队列优先级顺序执行相应请求并获得磁盘资源,也即首先执行读数据请求。
4)对剩余未执行的请求队列优先级排序,并按确定的优先级顺序执行请求。
具体实施过程中,首先执行完读数据请求,在随后的时间段内如果又接收到某一个或多个读数据请求,系统会将新的未执行的请求队列重新排序,并按照排序后的优先级顺序执行请求。
基于同一发明构思,本发明实施例中还提供了一种文件系统中提高服务质量的装置,由于这些设备解决问题的原理与一种文件系统中提高服务质量的方法相似,因此这些设备的实施可以参见方法的实施,重复之处不再赘述。
如图4所示,装置可以包括:
接收请求队列模块401,用于接收磁盘的多个请求队列,
确定优先级模块402,用于根据所述请求队列的种类,划分各个请求队列的优先级,
执行请求模块403,用于按照请求队列的优先级顺序执行请求队列。
所述多个请求队列包括:读请求队列、元数据请求队列、其它请求队列中的一种或多种,其中元数据请求队列包括写元数据请求或和日志应用请求,其它请求队列包括回刷数据请求。
所述确定优先级模块用于划分各个请求队列的优先级包括:
读请求队列的优先级高于元数据请求队列的优先级;
元数据请求队列的优先级高于其它请求队列的优先级。
执行请求模块用于按照请求队列的优先级顺序执行请求队列包括:
优先级高的请求队列执行结束后执行优先级低的请求队列。
所述执行请求模块还包括重新排序单元,用于优先级高的请求队列执行结束后,对剩余未执行的请求队列优先级重新排序,并按排序后的优先级顺序执行请求。
上述实施例中,均可以采用现有的功能元器件模块来实施。例如,处理模块可以采用现有的数据处理元器件,至少,现有定位技术中采用的定位服务器上便具备实现该功能元器件;至于接收模块,则是任意一个具备信号传输功能的设备都具备的元器件;同时,处理模块进行的A、n参数计算、强度调整等采用的都是现有的技术手段,本领域技术人员经过相应的设计开发即可实现。
为了描述的方便,以上所述装置的各部分以功能分为各种模块或单元分别描述。当然,在实施本发明时可以把各模块或单元的功能在同一个或多个软件或硬件中实现。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。

Claims (10)

1.一种文件系统中提高服务质量的方法,其特征在于,包括:
接收磁盘的多个请求队列,
根据所述请求队列的种类,划分各个请求队列的优先级,
按照请求队列的优先级顺序执行请求。
2.如权利要求1所述的方法,其特征在于,所述多个请求队列包括:读数据请求、元数据请求队列、其它请求中的一种或多种,其中元数据请求队列包括写元数据请求或和日志应用请求,其它请求队列包括回刷数据请求。
3.如权利要求2所述的方法,其特征在于,所述划分各个请求队列的优先级包括:
读请求队列的优先级高于元数据请求队列的优先级;
元数据请求队列的优先级高于其它请求队列的优先级。
4.如权利要求3所述的方法,其特征在于,按照请求队列的优先级顺序执行请求队列包括:
优先级高的请求队列执行结束后执行优先级低的请求队列。
5.如权利要求4所述的方法,其特征在于,所述优先级高的请求队列执行结束后还包括:对剩余未执行的请求队列优先级重新排序,并按排序后的优先级顺序执行请求。
6.一种文件系统中提高服务质量的装置,其特征在于,包括:
接收请求队列模块,用于接收磁盘的多个请求队列,
确定优先级模块,用于根据所述请求队列的种类,划分各个请求队列的优先级,
执行请求模块,用于按照请求队列的优先级顺序执行请求队列。
7.如权利要求6所述的装置,其特征在于,所述多个请求队列包括:读请求队列、元数据请求队列、其它请求队列中的一种或多种,其中元数据请求队列包括写元数据请求或和日志应用请求,其它请求队列包括回刷数据请求。
8.如权利要求7所述的装置,其特征在于,所述确定优先级模块用于划分各个请求队列的优先级包括:
读请求队列的优先级高于元数据请求队列的优先级;
元数据请求队列的优先级高于其它请求队列的优先级。
9.如权利要求8所述的装置,其特征在于,执行请求模块用于按照请求队列的优先级顺序执行请求队列包括:
优先级高的请求队列执行结束后执行优先级低的请求队列。
10.如权利要求9所述的装置,其特征在于,所述执行请求模块还包括重新排序单元,用于优先级高的请求队列执行结束后,对剩余未执行的请求队列优先级重新排序,并按排序后的优先级顺序执行请求。
CN201511018145.5A 2015-12-28 2015-12-28 一种文件系统中提高服务质量的方法和装置 Pending CN105677744A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201511018145.5A CN105677744A (zh) 2015-12-28 2015-12-28 一种文件系统中提高服务质量的方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201511018145.5A CN105677744A (zh) 2015-12-28 2015-12-28 一种文件系统中提高服务质量的方法和装置

Publications (1)

Publication Number Publication Date
CN105677744A true CN105677744A (zh) 2016-06-15

Family

ID=56189701

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201511018145.5A Pending CN105677744A (zh) 2015-12-28 2015-12-28 一种文件系统中提高服务质量的方法和装置

Country Status (1)

Country Link
CN (1) CN105677744A (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107818016A (zh) * 2017-11-22 2018-03-20 苏州麦迪斯顿医疗科技股份有限公司 服务器应用程序设计方法、请求事件处理方法及装置
CN108241535A (zh) * 2016-12-27 2018-07-03 阿里巴巴集团控股有限公司 资源管理的方法、装置及服务器设备
CN109559178A (zh) * 2018-10-19 2019-04-02 中国平安人寿保险股份有限公司 电子发票批量开票方法、电子装置及可读存储介质
CN110362275A (zh) * 2019-07-10 2019-10-22 深圳大普微电子科技有限公司 提升固态硬盘服务质量的方法及固态硬盘
WO2020124867A1 (zh) * 2018-12-16 2020-06-25 华为技术有限公司 一种数据处理的方法、控制器、存储设备及存储系统
CN113285853A (zh) * 2021-05-14 2021-08-20 游艺星际(北京)科技有限公司 日志上报方法、装置、终端及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101118477A (zh) * 2007-08-24 2008-02-06 成都索贝数码科技股份有限公司 一种提高磁盘数据访问效率的方法
CN102402401A (zh) * 2011-12-13 2012-04-04 云海创想信息技术(无锡)有限公司 一种磁盘io请求队列调度的方法
CN102799487A (zh) * 2012-06-29 2012-11-28 记忆科技(深圳)有限公司 基于阵列/lun的io调度方法及装置
CN102981973A (zh) * 2012-11-05 2013-03-20 曙光信息产业(北京)有限公司 在存储系统中执行请求的方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101118477A (zh) * 2007-08-24 2008-02-06 成都索贝数码科技股份有限公司 一种提高磁盘数据访问效率的方法
CN102402401A (zh) * 2011-12-13 2012-04-04 云海创想信息技术(无锡)有限公司 一种磁盘io请求队列调度的方法
CN102799487A (zh) * 2012-06-29 2012-11-28 记忆科技(深圳)有限公司 基于阵列/lun的io调度方法及装置
CN102981973A (zh) * 2012-11-05 2013-03-20 曙光信息产业(北京)有限公司 在存储系统中执行请求的方法

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108241535A (zh) * 2016-12-27 2018-07-03 阿里巴巴集团控股有限公司 资源管理的方法、装置及服务器设备
CN108241535B (zh) * 2016-12-27 2022-02-22 阿里巴巴集团控股有限公司 资源管理的方法、装置及服务器设备
CN107818016A (zh) * 2017-11-22 2018-03-20 苏州麦迪斯顿医疗科技股份有限公司 服务器应用程序设计方法、请求事件处理方法及装置
CN109559178A (zh) * 2018-10-19 2019-04-02 中国平安人寿保险股份有限公司 电子发票批量开票方法、电子装置及可读存储介质
CN109559178B (zh) * 2018-10-19 2024-05-17 中国平安人寿保险股份有限公司 电子发票批量开票方法、电子装置及可读存储介质
WO2020124867A1 (zh) * 2018-12-16 2020-06-25 华为技术有限公司 一种数据处理的方法、控制器、存储设备及存储系统
CN110362275A (zh) * 2019-07-10 2019-10-22 深圳大普微电子科技有限公司 提升固态硬盘服务质量的方法及固态硬盘
CN113285853A (zh) * 2021-05-14 2021-08-20 游艺星际(北京)科技有限公司 日志上报方法、装置、终端及存储介质
CN113285853B (zh) * 2021-05-14 2022-12-27 游艺星际(北京)科技有限公司 日志上报方法、装置、终端及存储介质

Similar Documents

Publication Publication Date Title
CN105677744A (zh) 一种文件系统中提高服务质量的方法和装置
US10606653B2 (en) Efficient priority-aware thread scheduling
CN110096353B (zh) 任务调度方法及装置
US20170269967A1 (en) Quality of service classes
US20090083746A1 (en) Method for job management of computer system
CN107832143B (zh) 一种物理机资源的处理方法和装置
JP2017117204A (ja) プロセッサ、再構成可能回路の制御方法及びプログラム
CN109917705B (zh) 一种多任务调度方法
US10310891B2 (en) Hand-off scheduling
WO2024021489A1 (zh) 一种任务调度方法、装置及Kubernetes调度器
US10209924B2 (en) Access request scheduling method and apparatus
CN112905342A (zh) 资源调度方法、装置、设备及计算机可读存储介质
CN106775975B (zh) 进程调度方法及装置
CN112925616A (zh) 任务分配方法、装置、存储介质及电子设备
EP3440547B1 (en) Qos class based servicing of requests for a shared resource
US10318341B2 (en) Selecting and resizing currently executing job to accommodate execution of another job
CN107491352B (zh) 一种资源调度方法及装置
CN115202842A (zh) 任务调度方法及装置
CN114138427A (zh) Slo保障方法、装置、节点及存储介质
JP2007249635A (ja) データ転送装置及びデータ転送方法
CA3069092C (en) Optimal query scheduling for resource utilization optimization
US20220353874A1 (en) Method and Apparatus for Maximizing a Number of Connections That Can Be Executed from a Mobile Application
JP4753184B2 (ja) 調停装置および調停方法
JP2015208004A (ja) 複数の待ち行列のうちの1つを選択する方法
CN114296934A (zh) 调配Yarn计算资源的方法、装置、计算机设备及存储介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20160615

RJ01 Rejection of invention patent application after publication