CN105956090B - 一种基于i/o自适应的日志文件系统数据存储方法 - Google Patents

一种基于i/o自适应的日志文件系统数据存储方法 Download PDF

Info

Publication number
CN105956090B
CN105956090B CN201610284434.8A CN201610284434A CN105956090B CN 105956090 B CN105956090 B CN 105956090B CN 201610284434 A CN201610284434 A CN 201610284434A CN 105956090 B CN105956090 B CN 105956090B
Authority
CN
China
Prior art keywords
file system
data block
data
write
written
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
CN201610284434.8A
Other languages
English (en)
Other versions
CN105956090A (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.)
University of Science and Technology of China USTC
Original Assignee
University of Science and Technology of China USTC
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 University of Science and Technology of China USTC filed Critical University of Science and Technology of China USTC
Priority to CN201610284434.8A priority Critical patent/CN105956090B/zh
Publication of CN105956090A publication Critical patent/CN105956090A/zh
Application granted granted Critical
Publication of CN105956090B publication Critical patent/CN105956090B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/18File system types
    • G06F16/1805Append-only file systems, e.g. using logs or journals to store data
    • G06F16/1815Journaling file 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/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • 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

Landscapes

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

Abstract

本发明公开了一种基于I/O自适应的日志文件系统数据存储方法,特征是采取根据需要写入数据块的长度对数据块进行分类,将需要写入的连续数据块写入文件系统的数据区,将需要写入的随机数据块以及元数据写入文件系统的日志区,在建立检查点时,将随机数据块与元数据写入文件系统的数据区的操作步骤。由于采用了I/O自适应的日志文件系统数据存储方法,与传统的日志文件系统数据存储方法相比,在保证文件系统一致性情况下,降低了对数据区的写入数据量与写入次数,缩短了文件系统的写请求的响应时间,提高文件系统的服务质量与性能。

Description

一种基于I/O自适应的日志文件系统数据存储方法
技术领域
本发明属于计算机文件系统技术领域,具体涉及数据写入文件系统时的写入方式选择的方法。
背景技术
美国计算机协会出版的《第11届ACM操作系统设计规范学术研讨会记录》(SOSP'87Proceedings of the eleventh ACM Symposium on Operating systems principles,1987,第155~162页)所介绍的使用日志和集体提交来重新实现Cedar文件系统(Reimplementing the Cedar file system using logging and group commit)使用日志来维持文件系统中的一致性。现存的日志式文件系统通常使用日志的顺序(ordered)模式来维持文件系统本身的一致性。当采用顺序模式时,文件系统需要将所有数据块写入数据区,等数据写入完成后再将元数据写入日志区,而在将文件写入数据区时,写入的位置通常是分散的,这使得写入的完成时间比较长,写请求的完成时间比较久,这延迟了文件系统请求的响应时间,降低了文件系统的效率。
发明内容
本发明的目的是提出一种基于I/O自适应的日志文件系统数据存储方法,以克服现有技术的上述缺陷,在保证维持文件系统一致性的情况下,提高系统的响应速度,提升服务性能。
本发明基于I/O自适应的日志文件系统数据存储方法,其特征在于包括以下步骤:
第一步、根据需要写入数据块的长度对数据块进行分类:
遍历已经修改的文件内容数据块的集合,将处于连续位置的数据块整理成一个连续的数据块写入,整理完成后根据数据块的长度是否大于特定的阈值将这些数据块分成连续数据块和随机数据块两类,并设置标志位表示这些数据块是连续(sequential)的----如果数据块的长度超过阈值时,或者是随机(random)的----如果数据块的长度小于阈值时;
第二步、将需要写入的连续数据块,也就是被标记连续标志的数据块,写入文件系统的数据区;
第三步、将需要写入的随机数据块,也就是被标记随机标志的数据块,与元数据以及事务数据写入文件系统的日志区;
第四步、在建立检查点时,将存储在日志区的随机数据块与元数据一起写入文件系统的数据区。
本发明基于I/O自适应的日志文件系统数据存储方法采取根据需要写入数据块的长度对数据块进行分类,将需要写入的连续数据块写入文件系统的数据区,将需要写入的随机数据块以及元数据写入文件系统的日志区,在建立检查点时,将随机数据块与元数据写入文件系统的数据区的操作步骤。由于采用了I/O自适应的日志文件系统数据存储方法,与传统的日志文件系统数据存储方法相比,在保证文件系统一致性情况下,降低了对数据区的写入数据量、减少了写入次数,缩短了文件系统的写请求的响应时间,提高了文件系统的服务质量与性能。
附图说明
图1为文件系统数据存储示意图。
图2为对数据块进行分类的操作流程示意框图。
图3为文件系统写入时数据状态变化示意图。
图4为文件系统经过检查点之后数据状态示意图。
具体实施方式
下面结合附图通过具体实施例对本发明基于I/O自适应的日志文件系统数据存储方法作进一步的详细说明。
实施例1:
本实施例基于I/O自适应的日志文件系统数据存储方法,具体包括以下步骤:
第一步、根据需要写入数据块的长度对数据块进行分类:
附图1给出了文件系统数据存储示意图。图中的粗线条的方框表示文件系统中的各个区域,整个文件系统分为元数据区M、数据区D以及日志区J三个部分,每个区域中使用细线的小方格来表示一个数据块或者元数据块,元数据区的元数据块标志为M1-M12,数据区的数据块标志为D1-D12,日志区可以存储任意位置的数据块。设在某一时刻需要写入的数据块为D1、D2、D3、D6、D8和D11以及元数据M1。本实施例在附图1所示的文件系统结构的基础上进行基于I/O自适应的文件系统日志模式;
附图2给出了为对数据块进行分类的操作流程示意框图。在执行附图2中的获取信息步骤①获取所有需要写入的数据块信息时,此时得知数据块D1、D2、D3、D6、D8和D11需要写入,在执行附图2中的请求合并步骤②将连续的数据块请求合并时,数据块D1、D2、D3位置是连续的,所以合并为连续的数据请求。在执行附图2中的添加标记步骤③为数据块添加标记时,对各个数据块设置连续标记或者设置随机标记,由于数据块D1、D2、D3是连续的,所以对D1、D2和D3这三个数据块设置连续标志;数据块D6、D8、D11是随机分散开的,所以对D6、D8和D11这三个数据块设置随机标志;
第二步:、将需要写入的连续数据块写入文件系统的数据区:
附图3给出了文件系统写入时数据状态变化示意图。在执行附图三将连续数据写入数据区步骤时,文件系统首先将连续的数据块D1、D2和D3连续的写入到数据区,并等待写入操作完成;
第三步、将需要写入的随机数据块、元数据以及事务数据写入文件系统的日志区:
在执行附图3中的将随机数据写入日志区步骤时,等连续数据块D1、D2、D3的写入操作完成后,将数据块D6、D8、D11以及元数据块M1一起写入文件系统的日志区,此时写操作完成;
第四步、在建立检查点时,将随机数据块与元数据写入文件系统的数据区:
附图4给出了文件系统经过检查点之后数据状态示意图。当系统需要创建检查点的时候,系统将保存在日志区的数据块D6、D8、D11以及元数据块M1分别写入到磁盘的数据区以及元数据区。
在本实施例中,通过基于I/O自适应的日志文件系统数据存储方法,通过自适应的写入方式,将写操作所需要引起的写入次数控制为2次,与传统的顺序模式引起5次写操作相比,在本实施例中减少了3次写操作,缩短了系统写请求完成所需要的时间。

Claims (1)

1.一种基于I/O自适应的日志文件系统数据存储方法,其特征在于包括以下步骤:
第一步、根据需要写入数据块的长度对数据块进行分类:
遍历已经修改的文件内容数据块的集合,将处于连续位置的数据块整理成一个连续的数据块写入,整理完成后根据数据块的长度是否大于特定的阈值将这些数据块分成连续数据块和随机数据块两类,并设置标志位表示这些数据块是连续的----如果数据块的长度超过阈值时,或者是随机的----如果数据块的长度小于阈值时;
第二步、将需要写入的连续数据块,也就是被标记连续标志的数据块,写入文件系统的数据区;
第三步、将需要写入的随机数据块,也就是被标记随机标志的数据块,与元数据以及事务数据写入文件系统的日志区:
第四步、在建立检查点时,将存储在日志区的随机数据块与元数据一起写入文件系统的数据区。
CN201610284434.8A 2016-04-27 2016-04-27 一种基于i/o自适应的日志文件系统数据存储方法 Active CN105956090B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610284434.8A CN105956090B (zh) 2016-04-27 2016-04-27 一种基于i/o自适应的日志文件系统数据存储方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610284434.8A CN105956090B (zh) 2016-04-27 2016-04-27 一种基于i/o自适应的日志文件系统数据存储方法

Publications (2)

Publication Number Publication Date
CN105956090A CN105956090A (zh) 2016-09-21
CN105956090B true CN105956090B (zh) 2019-06-11

Family

ID=56914299

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610284434.8A Active CN105956090B (zh) 2016-04-27 2016-04-27 一种基于i/o自适应的日志文件系统数据存储方法

Country Status (1)

Country Link
CN (1) CN105956090B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106502587B (zh) * 2016-10-19 2019-10-25 华为技术有限公司 硬盘数据管理方法和硬盘控制装置
CN107967122B (zh) * 2017-11-22 2021-06-29 郑州云海信息技术有限公司 一种块设备的数据写入方法、装置及介质
CN109828862B (zh) * 2017-11-23 2023-08-22 成都华为技术有限公司 一种回放日志的方法和装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1755673A (zh) * 2004-09-30 2006-04-05 株式会社东芝 具备文件管理功能的文件系统及文件管理方法
EP1221646A3 (en) * 2001-01-09 2008-07-23 Kabushiki Kaisha Toshiba Disk control system and method
CN101364218A (zh) * 2007-08-10 2009-02-11 深圳市锐明视讯技术有限公司 一种硬盘录像机文件系统及其检查方法
CN101937319A (zh) * 2009-06-29 2011-01-05 联发科技股份有限公司 存储器系统及其映射方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1221646A3 (en) * 2001-01-09 2008-07-23 Kabushiki Kaisha Toshiba Disk control system and method
CN1755673A (zh) * 2004-09-30 2006-04-05 株式会社东芝 具备文件管理功能的文件系统及文件管理方法
CN101364218A (zh) * 2007-08-10 2009-02-11 深圳市锐明视讯技术有限公司 一种硬盘录像机文件系统及其检查方法
CN101937319A (zh) * 2009-06-29 2011-01-05 联发科技股份有限公司 存储器系统及其映射方法

Also Published As

Publication number Publication date
CN105956090A (zh) 2016-09-21

Similar Documents

Publication Publication Date Title
US10255235B2 (en) Database storage system based on jukebox and method using the system
US9996557B2 (en) Database storage system based on optical disk and method using the system
CN104731921B (zh) Hadoop分布式文件系统针对日志型小文件的存储和处理方法
CN101908073B (zh) 一种文件系统中实时删除重复数据的方法
JP5387757B2 (ja) 並列データ処理システム、並列データ処理方法及びプログラム
US20190146886A1 (en) Database system recovery using preliminary and final slave node replay positions
CN103744936A (zh) 一种数据库中的多版本并发控制方法及数据库系统
CN106663047A (zh) 用于优化的签名比较和数据复制的系统和方法
CN105956090B (zh) 一种基于i/o自适应的日志文件系统数据存储方法
CN103412803A (zh) 数据恢复的方法及装置
CN106777270A (zh) 一种基于提交点时间线同步的异构数据库复制并行执行系统及方法
CN102184229B (zh) 一种海量rfid标签信息的内存数据存储方法
CN103514258B (zh) 一种基于离线缓存文件操作集中记录预处理并重放的方法
Radoev A comparison between characteristics of NoSQL databases and traditional databases
CN105227672B (zh) 数据存储及访问的方法和系统
US8140555B2 (en) Apparatus, system, and method for dynamically defining inductive relationships between objects in a content management system
US20230098227A1 (en) Change control and version management of data
CN105302488B (zh) 一种存储系统的数据写入方法及系统
CN107665219A (zh) 一种日志管理方法及装置
WO2023185111A1 (zh) 一种数据文件的快速存取方法及装置
CN109558453A (zh) 一种区块链数据网络化存储和移存的方法
CN103984508A (zh) 基于飞腾处理器平台的raid多线程并发读写方法
CN103377090A (zh) 多处理器系统中共享不同数据集的多个编目的方法和系统
CN107315661A (zh) 一种集群文件系统已删除文件恢复方法及装置
CN103841168B (zh) 数据副本更新方法及元数据服务器

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