CN109388341A - 一种基于Device Mapper的系统存储优化方法 - Google Patents

一种基于Device Mapper的系统存储优化方法 Download PDF

Info

Publication number
CN109388341A
CN109388341A CN201810990814.2A CN201810990814A CN109388341A CN 109388341 A CN109388341 A CN 109388341A CN 201810990814 A CN201810990814 A CN 201810990814A CN 109388341 A CN109388341 A CN 109388341A
Authority
CN
China
Prior art keywords
hard disk
data
solid state
mechanical hard
request
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
CN201810990814.2A
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.)
State Grid Information and Telecommunication Co Ltd
Anhui Jiyuan Software Co Ltd
Original Assignee
State Grid Information and Telecommunication Co Ltd
Anhui Jiyuan Software 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 State Grid Information and Telecommunication Co Ltd, Anhui Jiyuan Software Co Ltd filed Critical State Grid Information and Telecommunication Co Ltd
Priority to CN201810990814.2A priority Critical patent/CN109388341A/zh
Publication of CN109388341A publication Critical patent/CN109388341A/zh
Pending legal-status Critical Current

Links

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/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0625Power saving in storage systems
    • 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/0629Configuration or reconfiguration of storage systems
    • G06F3/0631Configuration or reconfiguration of storage systems by allocating resources to storage systems
    • 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/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0685Hybrid storage combining heterogeneous device types, e.g. hierarchical storage, hybrid arrays

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)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

本发明涉及一种基于Device Mapper的系统存储优化方法,在客户端发起数据请求时,使用Device Mapper技术将固态存储作为机械硬盘的缓存,当用户空间发起读操作的时候,先去缓存中查找是否有数据,如果有则返回给用户空间,如果没有则再去机械硬盘读取。当用户空间发起写操作的时候,先写到缓存,当系统空闲时再写入到机械硬盘中。本发明充分利用固态硬盘低功耗的特点,一方面能够通过减少机械硬盘的使用频率而降低其功耗,另一方面通过提升工作效率而降低完成相同工作量所需要消耗的能量,优化了数据存储效率,节约了数据存储设备的硬件成本。

Description

一种基于Device Mapper的系统存储优化方法
技术领域
本发明涉及数据存储技术领域,具体涉及一种基于Device Mapper的系统存储优化方法。
背景技术
随着大数据技术的发展,传统的基于机械硬盘的存储方式越来越不能满足现在数据中心发展的需求,尤其是在分布式数据库等对系统I/O高度敏感的场景,I/O往往是整个系统的瓶颈。如果能够提高系统I/O的效率,就能够提高整个系统效率。新一代存储介质固态硬盘虽然在读写速率上有了非常大的提高,但是大规模部署价格昂贵。
发明内容
本发明的目的在于提供一种基于Device Mapper的系统存储优化方法,降低完成相同工作量所需要消耗的能量,优化了数据存储效率,节约了数据存储设备的硬件成本。
为实现上述目的,本发明采用了以下技术方案:
一种基于Device Mapper的系统存储优化方法,包括以下步骤:
(1)建立固态硬盘与机械硬盘组成的逻辑设备的映射,将固态硬盘和机械硬盘混合成一块逻辑设备;
(2)向服务器端发起数据请求访问,将数据请求分割为固定大小的子请求,分别计算数据请求块的机械硬盘起始扇区和分组编号;
(3)根据机械硬盘分组编号,得到映射后的固态硬盘缓存分组编号,并对数据请求操作进行判断,若是读操作,则执行(4),若是写操作,则执行(5);
(4)遍历固态硬盘缓存组所有缓存块的元数据信息,判断缓存是否命中,若缓存命中,执行(6),若不命中,执行(7);
(5)若缓存在固态硬盘缓冲区域,在系统不忙的时候将数据写入到机械硬盘对应的块上;
(6)在系统空闲时,将缓存块的元数据信息返回给用户空间;
(7)读取机械硬盘元数据信息返回给用户空间,在系统不忙时将数据写到固态硬盘空闲的块中。
进一步的,步骤(4)中,所述判断缓存是否命中,采用以下方法:将元数据信息与请求数据的起始扇区信息进行对比,如果元数据信息中记录的扇区和请求数据块的起始扇区相同,则判断缓存命中。
由上述技术方案可知,本发明所述的一种基于Device Mapper的系统存储优化方法,在保留传统机械硬盘高存储容量的同时,充分利用固态硬盘低功耗的特点,一方面能够通过减少机械硬盘的使用频率而降低其功耗,另一方面通过提升工作效率而降低完成相同工作量所需要消耗的能量,优化了数据存储效率,节约了数据存储设备的硬件成本。
附图说明
图1是本发明的方法流程图。
具体实施方式
下面结合附图对本发明做进一步说明:
如图1所示一种基于Device Mapper的系统存储优化方法,在客户端发起数据请求时,使用Device Mapper技术将固态存储作为机械硬盘的缓存,当用户空间发起读操作的时候,先去缓存中查找是否有数据,如果有则返回给用户空间,如果没有则再去机械硬盘读取。当用户空间发起写操作的时候,先写到缓存,当系统空闲时再写入到机械硬盘中,具体包括以下步骤:
S1:建立固态硬盘与机械硬盘组成的逻辑设备的映射,利用Device Mapper技术将固态硬盘和机械硬盘混合成一块逻辑设备,默认(可配置)每8个扇区(512 Bytes)为一个块,每512个块为一个集合,固态硬盘和机械硬盘都按照此划分。固态硬盘的集合里的块是用lru链表组织起来的,每个块都记录了自己存放的是机械硬盘的哪个扇区起始的位置(扇区编号)对应的内容。根据要访问的机械硬盘的位置,即硬盘的哪个集合,将其模上固态硬盘里的集合数,就可以得到固态硬盘里对应的集合号,然后根据集合号,查找并比对lru里块的扇区号,如果找到则表示固态硬盘里有缓存数据,没找到则说明没有缓存过。
S2:向服务器端发起数据请求访问,利用Device Mapper技术对数据请求分割为固定大小的子请求,分别计算数据请求块的机械硬盘起始扇区和分组编号;
对于服务器的磁盘写请求,将其缓存在固态硬盘缓冲区域,然后定期写回机械硬盘,并在写回前针对磁盘位置对写操作进行排序,降低磁头无效移动;对于服务器的磁盘数据读请求,首先检查数据是否在固态硬盘中,若命中则直接返回数据,若不命中再访问磁盘,避免机械硬盘读取操作。
S3:根据机械硬盘分组编号,得到映射后的固态硬盘缓存分组编号,并对数据请求操作进行判断,若是读操作,则执行S4,若是写操作,则执行S5;
S4:遍历固态硬盘缓存组所有缓存块的元数据信息,判断缓存是否命中,如果元数据信息中记录的扇区和请求数据块的起始扇区相同,则缓存命中,执行S6,若不命中,执行S7;
S5:将其缓存在固态硬盘缓冲区域,在系统不忙的时候将数据写入到机械硬盘对应的块上;
S6:在系统空闲时,将缓存块的元数据信息返回给用户空间;
S7:读取机械硬盘元数据信息返回给用户空间,在系统不忙时将数据写到固态硬盘空闲的块中。
对于读操作,如果查找成功(有缓存过),则将固态硬盘保存的数据返回给用户空间,如果查找失败,则在固态硬盘找一个空闲集合中的块,然后从机械硬盘读取数据返回给用户空间,并使用等待队列,在系统不忙时将数据写到固态硬盘中空闲的块中。对于写操作,将数据写入固态硬盘,然后用户空间write系统调用就可以返回了,然后对该块做一个标记(用来表示该块应该被写入机械硬盘),使用等待队列,在系统不忙的时候将数据写入到机械硬盘对应的块上,然后清除标记。
以上所述的实施例仅仅是对本发明的优选实施方式进行描述,并非对本发明的范围进行限定,在不脱离本发明设计精神的前提下,本领域普通技术人员对本发明的技术方案作出的各种变形和改进,均应落入本发明权利要求书确定的保护范围内。

Claims (2)

1.一种基于Device Mapper的系统存储优化方法,其特征在于,包括以下步骤:
(1)建立固态硬盘与机械硬盘组成的逻辑设备的映射,将固态硬盘和机械硬盘混合成一块逻辑设备;
(2)向服务器端发起数据请求访问,将数据请求分割为固定大小的子请求,分别计算数据请求块的机械硬盘起始扇区和分组编号;
(3)根据机械硬盘分组编号,得到映射后的固态硬盘缓存分组编号,并对数据请求操作进行判断,若是读操作,则执行(4),若是写操作,则执行(5);
(4)遍历固态硬盘缓存组所有缓存块的元数据信息,判断缓存是否命中,若缓存命中,执行(6),若不命中,执行(7);
(5)若缓存在固态硬盘缓冲区域,在系统不忙的时候将数据写入到机械硬盘对应的块上;
(6)在系统空闲时,将缓存块的元数据信息返回给用户空间;
(7)读取机械硬盘元数据信息返回给用户空间,在系统不忙时将数据写到固态硬盘空闲的块中。
2.根据权利要求1所述的基于Device Mapper的系统存储优化方法,其特征在于:步骤(4)中,所述判断缓存是否命中,采用以下方法:将元数据信息与请求数据的起始扇区信息进行对比,如果元数据信息中记录的扇区和请求数据块的起始扇区相同,则判断缓存命中。
CN201810990814.2A 2018-08-28 2018-08-28 一种基于Device Mapper的系统存储优化方法 Pending CN109388341A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810990814.2A CN109388341A (zh) 2018-08-28 2018-08-28 一种基于Device Mapper的系统存储优化方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810990814.2A CN109388341A (zh) 2018-08-28 2018-08-28 一种基于Device Mapper的系统存储优化方法

Publications (1)

Publication Number Publication Date
CN109388341A true CN109388341A (zh) 2019-02-26

Family

ID=65418442

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810990814.2A Pending CN109388341A (zh) 2018-08-28 2018-08-28 一种基于Device Mapper的系统存储优化方法

Country Status (1)

Country Link
CN (1) CN109388341A (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109992708A (zh) * 2019-04-12 2019-07-09 苏州浪潮智能科技有限公司 一种元数据查询的方法、装置、设备以及存储介质
CN110347497A (zh) * 2019-06-03 2019-10-18 阿里巴巴集团控股有限公司 一种将多个存储设备划分设备组的方法及装置
CN111158609A (zh) * 2019-12-31 2020-05-15 广州鼎甲计算机科技有限公司 数据存储方法、装置、计算机设备和存储介质
US11099759B2 (en) 2019-06-03 2021-08-24 Advanced New Technologies Co., Ltd. Method and device for dividing storage devices into device groups
CN114327280A (zh) * 2021-12-29 2022-04-12 以萨技术股份有限公司 一种基于冷热分离存储的消息存储方法及系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102662459A (zh) * 2012-04-22 2012-09-12 复旦大学 利用固态硬盘与机械硬盘混合存储减少服务器能源消耗的方法
CN103678166A (zh) * 2013-08-16 2014-03-26 记忆科技(深圳)有限公司 一种采用固态硬盘作为计算机高速缓存的实现方法及系统
CN106201911A (zh) * 2015-05-05 2016-12-07 苏州携云信息科技有限公司 一种基于固态硬盘的缓存加速方法
CN107229573A (zh) * 2017-05-22 2017-10-03 上海天玑数据技术有限公司 一种基于固态硬盘的弹性高可用缓存方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102662459A (zh) * 2012-04-22 2012-09-12 复旦大学 利用固态硬盘与机械硬盘混合存储减少服务器能源消耗的方法
CN103678166A (zh) * 2013-08-16 2014-03-26 记忆科技(深圳)有限公司 一种采用固态硬盘作为计算机高速缓存的实现方法及系统
CN106201911A (zh) * 2015-05-05 2016-12-07 苏州携云信息科技有限公司 一种基于固态硬盘的缓存加速方法
CN107229573A (zh) * 2017-05-22 2017-10-03 上海天玑数据技术有限公司 一种基于固态硬盘的弹性高可用缓存方法

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109992708A (zh) * 2019-04-12 2019-07-09 苏州浪潮智能科技有限公司 一种元数据查询的方法、装置、设备以及存储介质
CN109992708B (zh) * 2019-04-12 2020-09-04 苏州浪潮智能科技有限公司 一种元数据查询的方法、装置、设备以及存储介质
CN110347497A (zh) * 2019-06-03 2019-10-18 阿里巴巴集团控股有限公司 一种将多个存储设备划分设备组的方法及装置
CN110347497B (zh) * 2019-06-03 2020-07-21 阿里巴巴集团控股有限公司 一种将多个存储设备划分设备组的方法及装置
US11099759B2 (en) 2019-06-03 2021-08-24 Advanced New Technologies Co., Ltd. Method and device for dividing storage devices into device groups
US11354055B2 (en) 2019-06-03 2022-06-07 Advanced New Technologies Co., Ltd. Method and device for dividing storage devices into device groups
CN111158609A (zh) * 2019-12-31 2020-05-15 广州鼎甲计算机科技有限公司 数据存储方法、装置、计算机设备和存储介质
CN111158609B (zh) * 2019-12-31 2020-11-20 广州鼎甲计算机科技有限公司 数据存储方法、装置、计算机设备和存储介质
CN114327280A (zh) * 2021-12-29 2022-04-12 以萨技术股份有限公司 一种基于冷热分离存储的消息存储方法及系统
CN114327280B (zh) * 2021-12-29 2024-02-09 以萨技术股份有限公司 一种基于冷热分离存储的消息存储方法及系统

Similar Documents

Publication Publication Date Title
CN109388341A (zh) 一种基于Device Mapper的系统存储优化方法
CN107193646B (zh) 一种基于混合主存架构的高效动态页面调度方法
CN108829341B (zh) 一种基于混合存储系统的数据管理方法
WO2020103506A1 (zh) 基于混合存储的数据管理系统、方法、终端及介质
CN103777905B (zh) 一种软件定义的固态盘融合存储方法
CN103136121B (zh) 一种固态盘的缓存管理方法
CN108268219B (zh) 一种处理io请求的方法及装置
CN102349055B (zh) 对存储在存储器上的文件的访问时间最优化
CN102663086B (zh) 一种数据块索引的检索方法
CN113821171B (zh) 一种基于哈希表与lsm树的键值存储方法
WO2013071882A1 (zh) 用于机群文件系统的元数据存储系统和管理方法
CN110795363B (zh) 一种存储介质的热页预测方法和页面调度方法
CN110532200B (zh) 一种基于混合内存架构的内存系统
CN106909323B (zh) 适用于dram/pram混合主存架构的页缓存方法及混合主存架构系统
CN115794669A (zh) 一种扩展内存的方法、装置及相关设备
CN103198021B (zh) 一种提高固态硬盘数据传输效率的方法
KR101226600B1 (ko) 메모리 시스템 및 그의 메모리 맵핑 방법
CN111752905B (zh) 一种基于对象存储的大文件分布式缓存系统
CN111443874B (zh) 基于内容感知的固态盘内存缓存管理方法、设备及固态盘
CN108459972B (zh) 一种多通道固态硬盘的高效缓存管理设计方法
CN108427648B (zh) 存储系统页内脏数据索引方法和装置
CN116755625A (zh) 一种数据处理方法、装置、设备及可读存储介质
CN103019963B (zh) 一种高速缓存的映射方法及存储设备
CN103744864A (zh) 缓存数据读写的方法、系统及其固态硬盘
CN108491166B (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
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20190226