CN115129247A - 一种数据写入方法、系统、设备及可读存储介质 - Google Patents

一种数据写入方法、系统、设备及可读存储介质 Download PDF

Info

Publication number
CN115129247A
CN115129247A CN202210747686.5A CN202210747686A CN115129247A CN 115129247 A CN115129247 A CN 115129247A CN 202210747686 A CN202210747686 A CN 202210747686A CN 115129247 A CN115129247 A CN 115129247A
Authority
CN
China
Prior art keywords
partition
data
file system
writing
sub
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
CN202210747686.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.)
Suzhou Inspur Intelligent Technology Co Ltd
Original Assignee
Suzhou Inspur Intelligent 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 Suzhou Inspur Intelligent Technology Co Ltd filed Critical Suzhou Inspur Intelligent Technology Co Ltd
Priority to CN202210747686.5A priority Critical patent/CN115129247A/zh
Publication of CN115129247A publication Critical patent/CN115129247A/zh
Pending legal-status Critical Current

Links

Images

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/061Improving I/O performance
    • G06F3/0611Improving I/O performance in relation to response time
    • 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/0644Management of space entities, e.g. partitions, extents, pools

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)

Abstract

本发明提出一种数据写入方法,包括:将固态硬盘分成第一分区和第二分区,并将所述第二分区和HDD硬盘封装成逻辑分区并挂载到文件系统;通过所述第一分区承载所述文件系统的事务日志数据并将所述事务日志数据对应的数据写入到所述逻辑分区。通过本发明提出的一种数据写入方法,充分利用存储系统中的固态硬盘闲置区域的存储空间以及固态硬盘的数据读写速度代替HDD硬盘直接作为存储系统的落盘设备,以提高存储系统的数据写入能力以及响应能力。

Description

一种数据写入方法、系统、设备及可读存储介质
技术领域
本发明属于计算机领域,具体涉及一种数据写入方法、系统、设备及可读存储介质。
背景技术
本发明是基于Ceph开源框架下的扩展。目前Ceph已经成为OpenStack社区中呼声较高的开源存储方案,Ceph存储系统可以有效解决大规模部署集群带来的规模变化、设备变化、数据变化问题,具备高可靠性、高自动化和高可扩展性。作为存储领域的提供商,在特定场景中,应当利用有限的硬件资源,精确控制具体到块大小的读写性能提升,在考虑成本的同时,满足业务要求。
现有的基于Ceph框架的存储技术,在面对写多要求场景,排除算法优化外,如图2所示,从文件系统考虑大多基于filestore落盘方式实现写性能提升。在rados架构中,将用户需要存储或访问的文件file按照2M或者4M大小切片得到object,每个object先通过HASH(哈希)算法计算得到对应的PG(Placement Group,用途是对Object的存储进行组织和位置映射的),最后PG负责将object通过CRUSH算法映射到对应的OSD上。OSD可以被抽象为系统和守护进程(OSD Daemon)两个部分,每个OSD拥有一个自己的OSD Daemon。这个Daemon负责完成OSD的所有逻辑功能;而OSD的系统部分占用了部分计算能力、一定数量的内存和一块硬盘(在通常情况下一个OSD对应一块硬盘)和网络资源,同时安装有独立的文件系统用于存储数据。
在OSD层,每个Object会被FileStore看作是一个文件,Object的属性(xattr)会利用文件的属性存取,受部分文件系统对属性的长度有限制,超出长度的属性会作为omap存储。通常FileStore默认使用XFS文件系统存储对象。即Ceph引入事务与日志,来实现数据写盘操作的原子性,并解决数据不一致的问题。即所谓的“ceph数据双写”:先把数据全部封装成一个事务,将其整体作为一条日志,写入ceph-osd journal,然后再把数据定时回刷写入对象文件,将其持久化到ceph-osd filestore中。基于以上过程,可以将SSD作为ceph-osdjournal的底层存储设备,对小块的写入性能提升尤为明显。
由于ceph-osd journal在实现逻辑上具有循环写入、定期回刷的特性,这将造成其对SSD设备容量空间的利用率很低;即使提升了journal的写效率,在混合介质的存储系统中,数据实际落盘的HDD一般使用SATA或者SAS盘,这也将限制写效率的提升。
发明内容
为解决上述问题,本发明提出一种数据写入方法,包括:
将固态硬盘分成第一分区和第二分区,并将所述第二分区和HDD硬盘封装成逻辑分区并挂载到文件系统;
通过所述第一分区承载所述文件系统的事务日志数据并将所述事务日志数据对应的数据写入到所述逻辑分区。
在本发明的一些实施方式中,将固态硬盘分成第一分区和第二分区,并将所述第二分区和HDD硬盘封装成逻辑分区并挂载到文件系统包括:
根据HDD硬盘的个数将所述第二分区分成对应的子分区,将所述HDD硬盘与对应的子分区挂载到F2FS文件系统作为一个OSD分区。
在本发明的一些实施方式中,根据HDD硬盘的个数将所述第二分区分成对应的子分区包括:
将对应的HDD硬盘容量与所有HDD硬盘总容量的比值作为子分区的权重,基于所述权重划分所述第二分区。
在本发明的一些实施方式中,方法还包括:
将所述第一分区和所述逻辑分区挂载到Ceph系统和F2FS文件系统并在所述Ceph系统和F2FS文件系统中指定所述第一分区和所述逻辑分区的存储位置。
在本发明的一些实施方式中,在所述Ceph系统和F2FS文件系统中指定所述第一分区和所述逻辑分区的存储位置包括:
在所述Ceph系统中将所述第一分区作为事务日志数据的存储位置以及将所述逻辑分区作为数据存储位置;
在所述F2FS文件系统中将所述第一分区作为元数据存储区域,并将所述F2FS系统中的多个参数与所述第一分区对齐。
在本发明的一些实施方式中,方法还包括:
响应于接收到数据写入任务,通过所述F2FS文件系统将所述写入任务中的事务日志数据写入到所述第一分区以及将所述写入任务的数据写入到所述逻辑分区。
在本发明的一些实施方式中,将所述写入任务的数据写入到所述逻辑分区包括:
在所述F2FS文件系统中建立所述HDD硬盘与对应的所述子分区的映射关系,并基于所述映射关系将所述数据优先写入到所述子分区;以及
响应于所述子分区中的所述数据达到预设门限值,通过所述F2FS文件系统将所述子分区中的数据写入到所述子分区对应的HDD硬盘中。
本发明的另一方面还提出一种数据写入系统,包括:
管理模块,所述管理模块配置用于将固态硬盘分成第一分区和第二分区,并将所述第二分区和HDD硬盘封装成逻辑分区并挂载到文件系统;
数据写入模块,所述数据写入模块配置用于通过所述第一分区承载所述文件系统的事务日志数据并将所述事务日志数据对应的数据写入到所述逻辑分区。
本发明的又一方面还提出一种计算机设备,包括:
至少一个处理器;以及
存储器,所述存储器存储有可在所述处理器上运行的计算机指令,所述指令由所述处理器执行时实现上述实施方式中任意一项所述方法的步骤。
本发明的再一方面还一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述实施方式中任意一项所述方法的步骤。
通过本发明提出的一种数据写入方法,充分利用存储系统中的固态硬盘闲置区域的存储空间以及固态硬盘的数据读写速度代替HDD硬盘直接作为存储系统的落盘设备,以提高存储系统的数据写入能力以及响应能力。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种数据写入方法的方法流程图;
图2为本发明实施例提供的现有技术中Ceph架构的应用示意图;
图3为本发明实施例提供的本发明改进后的Ceph架构的应用示意图;
图4为本发明实施例提供的一种数据写入系统的架构示意图;
图5为本发明实施例提供的一种计算机设备的结构示意图;
图6为本发明实施例提供的一种计算机可读存储介质的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明实施例进一步详细说明。
需要说明的是,本发明实施例中所有使用“第一”和“第二”的表述均是为了区分两个相同名称非相同的实体或者非相同的参量,可见“第一”“第二”仅为了表述的方便,不应理解为对本发明实施例的限定,后续实施例对此不再一一说明。
本发明所要解决的是Ceph架构下使用FileStore模式存储数据时磁盘写入性能较低,并且所利用的固态硬盘存在独占浪费的情况。如图2所示,在传统的Ceph架构的实现方式中,在数据落盘阶段(即操作磁盘将数据写入到磁盘上),为实现数据落盘操作的原子性并解决数据一致问题,Ceph将数据封装成一个事务并将整体作为一条日志,写入Ceph-osdjournal即filejournal,以filejournal的方式把数据进行持久化。FileStore模式下首先会将对应的filejournal写入到具备较高速度的存储设备中,如SSD/nvme固态硬盘作为缓存,另外由于Ceph架构的限制,FileStore模式下的缓存一般设置为10GB左右,也即只利用SSD/nvme固态硬盘10GB的空间(利用SSD作为缓存更多的是BlueStore模式,是Ceph下的一种直接管理裸设备,抛弃了原始的文件系统,使用特定文件系统blueFS对接RocksDB,元数据以KV的形式保存到KV数据库里。)造成设备上SSD空间浪费,当然10GB的空间也可以采用内存作为缓存替代以省去SSD硬盘的消耗,但会造成内存空间紧张。
如图1所示,为解决以上问题,本发明提出本发明提出一种数据写入方法,包括:
步骤S1、将固态硬盘分成第一分区和第二分区,并将所述第二分区和HDD硬盘封装成逻辑分区并挂载到文件系统;
步骤S2、通过所述第一分区承载所述文件系统的事务日志数据并将所述事务日志数据对应的数据写入到所述逻辑分区。
在发明的施例中,在步骤S1中,在如图3所示,将固态硬盘分成第一分区(图中SSDPART1)和第二分区(图中SSDPART2)。进一步将SSDPART2和HDD封装成逻辑分区挂载到F2FS文件系统,F2FS(Flash Friendly File System)专门为闪存设备设计的一个日志追加型文件系统。以替换Ceph架构中原有的XFS文件系统。通过F2FS文件系统节后Ceph下发的filejournal数据并根据filejournal在Ceph下的数据写入方法存储到上述第一分区和第二分区中。
在步骤S2中,具体地通过F2FS文件系统将filejournal写入到第一分区中,同时F2FS文件系统下的元数据和日志也写入到第一分区中。对于要持久保存的数据则通过F2FS文件系统写入到第二区域。
在本发明的一些实施方式中,将固态硬盘分成第一分区和第二分区,并将所述第二分区和HDD硬盘封装成逻辑分区并挂载到文件系统包括:
根据HDD硬盘的个数将所述第二分区分成对应的子分区,将所述HDD硬盘与对应的子分区挂载到F2FS文件系统作为一个OSD分区。
在本实施例中,在对固态硬盘进行分区时第一分区的大小可以按照Ceph默认设置为10GB。对于第二分区则根据HDD硬盘的个数将剩余的SSD硬盘空间进行划分成对应个数的子分区,如果HDD硬盘个数为10个则将剩余硬盘空间划分为10各个子分区。
进一步,将分别将HDD硬盘和对应的子分区封装成一个Ceph架构下的OSD分区并挂载到F2FS文件系统上,对应的需要在Ceph架构上进行绑定该OSD分区。如图3所示,当Ceph基于FielStore下发对应的filejournal时,由F2FS文件系统实现将Ceph架构下的filejournal数据存储到该OSD分区中。
在本发明的一些实施方式中,根据HDD硬盘的个数将所述第二分区分成对应的子分区包括:
将对应的HDD硬盘容量与所有HDD硬盘总容量的比值作为子分区的权重,基于所述权重划分所述第二分区。
在本实施例中,在对固态硬盘第二分区(PART2)划分对应的子分区时,将根据HDD硬盘的的存储空间分布比重作为划分对应子分区的权重。即理想情况下,如果HDD硬盘的存储空间相同,则第二分区的所有子分区的大小将相同。对于HDD硬盘的存储空间不同则需从系统上获取对应的HDD硬盘的可用空间大小,然后计算所有的HDD硬盘的总存储空间大小并基于对应的HDD硬盘的存储空间大小计算该HDD硬盘存储空间占总存储空间的比值,然后按照比值在第二分区划分对应比例的SSD空间。需要说明的是,本发明第二分区子分区的划分必须依赖HDD硬盘空间的比例,由于Ceph系统下FileStore模式在下发filejournal时以负载均衡的方式进行下发,当将第二分区对应的子分区和对应的HDD封装成Ceph架构下的OSD分区时,FileStore的负载均衡策略会根据OSD分区大小向对应的OSD分区下发filejournal,如果第二子分区划分没有匹配HDD空间,可能会造成HDD存储空间大OSD的子分区存储空间与HDD存储空间不匹配,但是F2FS写入数据时优先写对应的子分区,而由于HDD硬盘存储空间较大,FileStore发送给该OSD分区的filejournal较多,在一些情况下容易造成子分区数据轻易写满,而较小存储空间的HDD分配的filejournal较小,但其对应的SSD的子分区和较大存储空间的HDD硬盘的子分区一样大。这种情况下会使较小存储空间的HDD硬盘的子分区闲置。使得本发明的加速效果失败。
具体地,以三块HDD硬盘为例,假如三块硬盘的大小分别为1TB、2TB和3TB。如果是均分SSD硬盘的第二分区,假设第二分区大小为60GB,则每个硬盘分得20GB,在组成OSD分区并挂载到F2FS和Ceph系统上时,FileStore会按照1:2:3的比例向三块硬盘对应的OSD分区发送对应的filejournal数据,按照1:2:3的比例很容易造成第三块硬盘对应的子分区的数据写满,在第三个子分区写满时,而第一和第二子分区还有大量空闲。因此,正确的情况应该是按照1:2:3的比例分配第二分区,即第一块硬盘分10GB的空间,第二块硬盘分配20GB的空间,第三块硬盘分配30GB的SSD空间。
在本发明的一些实施方式中,方法还包括:
将所述第一分区和所述逻辑分区挂载到Ceph系统和F2FS文件系统并在所述Ceph系统和F2FS文件系统中指定所述第一分区和所述逻辑分区的存储位置。
在本实施例中,为使Ceph系统支持本发明一F2FS文件系统作为底层的数据写入系统,需要将第一分区和逻辑分区(OSD分区)分别配置到Ceph系统和F2FS文件系统。具体地,将第一分区挂载到Ceph系统的/Ceph/Data/Osd/osd-nvme-(设备SN)-partx/journal目录下,将对应的逻辑分区挂载到/Ceph/Data/Osd/osd-nvme-(设备sn)-partx下。
在本发明的一些实施方式中,在所述Ceph系统和F2FS文件系统中指定所述第一分区和所述逻辑分区的存储位置包括:
在所述Ceph系统中将所述第一分区作为事务日志数据的存储位置以及将所述逻辑分区作为数据存储位置;
在所述F2FS文件系统中将所述第一分区作为元数据存储区域,并将所述F2FS系统中的多个参数与所述第一分区对齐。
在本实施例中,需要在Ceph系统中指定filejournal日志和数据落盘位置,即修改Ceph架构的配置文件ceph.conf中osd部分,例如OSD分区0的配置参数如下:
[osd.0]
host=对应的IP地址
public addr=对应的IP地址
cluster addr=对应的IP地址
osdjournal=/Ceph/Data/Osd/osd-nvme-SSDPE2KX040T8L_PHLJ903500PF4P0DGN-part1/journal
osddata=/Ceph/Data/Osd/osd-nvme-SSDPE2KX040T8L_PHLJ903500PF4P0DGN-part1;
osd_numa_node=0;
上述osdjournal表示filejournal日志的存储位置,应指向第一分区,osd data表示对应的数据落盘位置及对应的HDD硬盘的子分区,在使用时Ceph系统会通过F2FS文件系统将OSD分区0(0表示在计算机中的编号为第一个的OSD分区,该OSD分区是指前述内容中一个HDD硬盘和一个第二分区的子分区封装的OSD分区)的负载均衡后的数据中的日志数据写入到osdjournal,将落盘数据写入到osddata。
进一步,在F2FS系统中,还需要指定F2FS文件系统中的日志、元数据的位置,即F2FS是专门为闪存的而开发的文件写入系统,所以在基于SSD硬盘的存储机制会存在元数据和数据的关系(SSD存储的特点,通过元数据在闪存中索引对应的数据地址)。因此在本发明中,本发明将SSD硬盘的第一分区在同时作为Ceph的filejournal数据的存储地点的情况下,还将F2FS系统的元数据存储到第一分区。
因此,需要将F2FS的元数据存储区域(CP、SIT、NAT、SSA)指向第一分区并对齐。(为了避免文件系统和flash存储之间不对齐,F2FS使CP的起始块地址与Segment大小对齐。同时,F2FS使Main Area的起始块地址与Zone的大小对齐。)
在本发明的一些实施方式中,方法还包括:
响应于接收到数据写入任务,通过所述F2FS文件系统将所述写入任务中的事务日志数据写入到所述第一分区以及将所述写入任务的数据写入到所述逻辑分区。
在本实施例中,当接收到Ceph的FileStore发送的数据时,通过F2FS文件系统对数据进行处理,将filejournal数据写入第一分区,将对应的落盘数据写入封装的OSD分区即逻辑分区。在本实施例中通过F2FS文件系统xattr方法实现数据可落盘到不同磁盘介质。
在本发明的一些实施方式中,将所述写入任务的数据写入到所述逻辑分区包括:
在所述F2FS文件系统中建立所述HDD硬盘与对应的所述子分区的映射关系,并基于所述映射关系将所述数据优先写入到所述子分区;以及
响应于所述子分区中的所述数据达到预设门限值,通过所述F2FS文件系统将所述子分区中的数据写入到所述子分区对应的HDD硬盘中。
在本实施例中,在将OSD分区挂载到F2FS文件系统后,为了实现在接收到Ceph系统下发的落盘数据,并将落盘数据优先保存到存储介质是高速度SSD固态硬盘的子分区中,以及后续将子分区的数据内容以顺序写的方式快速写入到对应的HHD硬盘,因此为防止乱写如OSD分区,需要在F2FS文件系统内对OSD分区中的子分区和对应的HDD硬盘进行区分并建立映射关系,在本实施例中通过F2FS文件系统中的fsrepairHDD硬盘与SSD子分区,例如:
fsrepair.f2fs/opt/ceph/f2fs/conf/f2fs-nvme-INTEL_SSDPEDME016T4S_CVMD4475003T1P6KGN-part1.conf-o 0-m/dev/disk/by-id/scsi-35000c500b80bf447-part1,/dev/disk/by-id/scsi-35000c500b80acb7f-part1-d 0。
-m后表示要将子分区中的内容写入到对应的HDD硬盘的地址。这样F2FS系统会优先将Ceph系统下发的数据写入到子分区,然后再从子分区将数据读出后写入HDD硬盘,借助SSD硬盘的高速性能可极大提高Ceph系统下FileS tore模式的数据响应能力,即通过数据落入OSD的SSD子分区,便可将对应的filejournal日志数据清除,基于此可快速处理FileStore模式下的filej ournal的日志事务数据和落盘数据。
进一步,在本发明的一些实施例中,为提高对HDD硬盘的写入效率在F2FS系统内设定从对应的子分区向对应的HDD硬盘写入数据时的门限值,即当子分区中的落盘数据存储到一定数量时才会触发向HDD硬盘写入数据,以此来提高对HDD硬盘的写入效率,防止频繁触发IO请求,但数据写入量却较低导致整个系统的IO效率降低。
通过本发明提出的一种数据写入方法,充分利用存储系统中的固态硬盘闲置区域的存储空间以及固态硬盘的数据读写速度代替HDD硬盘直接作为存储系统的落盘设备,以提高存储系统的数据写入能力以及响应能力。
本发明通过优化filestore后端存储落盘方式、以及充分利用journal缓存设备,可得到以下效果:避免将单独ssd/nvme设备分配给filejournal造成的空间浪费;F2FS文件系统通过指定元数据位置到缓存设备上,解决原有文件系统metadata journal都位于HDD上的问题,造成因journal产生瓶颈;数据落盘过程,新写数据在缓存盘完成后直接返回成功,当缓存盘达到门限后,数据再向HDD下刷,提升写入效率。
如图4所示,本发明的另一方面还提出一种数据写入系统,包括:
管理模块1,所述管理模块1配置用于将固态硬盘分成第一分区和第二分区,并将所述第二分区和HDD硬盘封装成逻辑分区并挂载到文件系统;
数据写入模块2,所述数据写入模块2配置用于通过所述第一分区承载所述文件系统的事务日志数据并将所述事务日志数据对应的数据写入到所述逻辑分区。
如图5所示,本发明的又一方面还提出一种计算机设备,包括:
至少一个处理器21;以及
存储器22,所述存储器22存储有可在所述处理器21上运行的计算机指令23,所述指令23由所述处理器21执行时实现一种数据写入方法,包括:
将固态硬盘分成第一分区和第二分区,并将所述第二分区和HDD硬盘封装成逻辑分区并挂载到文件系统;
通过所述第一分区承载所述文件系统的事务日志数据并将所述事务日志数据对应的数据写入到所述逻辑分区。
在本发明的一些实施方式中,将固态硬盘分成第一分区和第二分区,并将所述第二分区和HDD硬盘封装成逻辑分区并挂载到文件系统包括:
根据HDD硬盘的个数将所述第二分区分成对应的子分区,将所述HDD硬盘与对应的子分区挂载到F2FS文件系统作为一个OSD分区。
在本发明的一些实施方式中,根据HDD硬盘的个数将所述第二分区分成对应的子分区包括:
将对应的HDD硬盘容量与所有HDD硬盘总容量的比值作为子分区的权重,基于所述权重划分所述第二分区。
在本发明的一些实施方式中,方法还包括:
将所述第一分区和所述逻辑分区挂载到Ceph系统和F2FS文件系统并在所述Ceph系统和F2FS文件系统中指定所述第一分区和所述逻辑分区的存储位置。
在本发明的一些实施方式中,在所述Ceph系统和F2FS文件系统中指定所述第一分区和所述逻辑分区的存储位置包括:
在所述Ceph系统中将所述第一分区作为事务日志数据的存储位置以及将所述逻辑分区作为数据存储位置;
在所述F2FS文件系统中将所述第一分区作为元数据存储区域,并将所述F2FS系统中的多个参数与所述第一分区对齐。
在本发明的一些实施方式中,方法还包括:
响应于接收到数据写入任务,通过所述F2FS文件系统将所述写入任务中的事务日志数据写入到所述第一分区以及将所述写入任务的数据写入到所述逻辑分区。
在本发明的一些实施方式中,将所述写入任务的数据写入到所述逻辑分区包括:
在所述F2FS文件系统中建立所述HDD硬盘与对应的所述子分区的映射关系,并基于所述映射关系将所述数据优先写入到所述子分区;以及
响应于所述子分区中的所述数据达到预设门限值,通过所述F2FS文件系统将所述子分区中的数据写入到所述子分区对应的HDD硬盘中。
如图6所示本发明的再一方面还一种计算机可读存储介质401,所述计算机可读存储介质401存储有计算机程序402,所述计算机程序402被处理器执行时实现一种数据写入方法,包括:
将固态硬盘分成第一分区和第二分区,并将所述第二分区和HDD硬盘封装成逻辑分区并挂载到文件系统;
通过所述第一分区承载所述文件系统的事务日志数据并将所述事务日志数据对应的数据写入到所述逻辑分区。
在本发明的一些实施方式中,将固态硬盘分成第一分区和第二分区,并将所述第二分区和HDD硬盘封装成逻辑分区并挂载到文件系统包括:
根据HDD硬盘的个数将所述第二分区分成对应的子分区,将所述HDD硬盘与对应的子分区挂载到F2FS文件系统作为一个OSD分区。
在本发明的一些实施方式中,根据HDD硬盘的个数将所述第二分区分成对应的子分区包括:
将对应的HDD硬盘容量与所有HDD硬盘总容量的比值作为子分区的权重,基于所述权重划分所述第二分区。
在本发明的一些实施方式中,方法还包括:
将所述第一分区和所述逻辑分区挂载到Ceph系统和F2FS文件系统并在所述Ceph系统和F2FS文件系统中指定所述第一分区和所述逻辑分区的存储位置。
在本发明的一些实施方式中,在所述Ceph系统和F2FS文件系统中指定所述第一分区和所述逻辑分区的存储位置包括:
在所述Ceph系统中将所述第一分区作为事务日志数据的存储位置以及将所述逻辑分区作为数据存储位置;
在所述F2FS文件系统中将所述第一分区作为元数据存储区域,并将所述F2FS系统中的多个参数与所述第一分区对齐。
在本发明的一些实施方式中,方法还包括:
响应于接收到数据写入任务,通过所述F2FS文件系统将所述写入任务中的事务日志数据写入到所述第一分区以及将所述写入任务的数据写入到所述逻辑分区。
在本发明的一些实施方式中,将所述写入任务的数据写入到所述逻辑分区包括:
在所述F2FS文件系统中建立所述HDD硬盘与对应的所述子分区的映射关系,并基于所述映射关系将所述数据优先写入到所述子分区;以及
响应于所述子分区中的所述数据达到预设门限值,通过所述F2FS文件系统将所述子分区中的数据写入到所述子分区对应的HDD硬盘中。
以上是本发明公开的示例性实施例,但是应当注意,在不背离权利要求限定的本发明实施例公开的范围的前提下,可以进行多种改变和修改。根据这里描述的公开实施例的方法权利要求的功能、步骤和/或动作不需以任何特定顺序执行。此外,尽管本发明实施例公开的元素可以以个体形式描述或要求,但除非明确限制为单数,也可以理解为多个。
应当理解的是,在本文中使用的,除非上下文清楚地支持例外情况,单数形式“一个”旨在也包括复数形式。还应当理解的是,在本文中使用的“和/或”是指包括一个或者一个以上相关联地列出的项目的任意和所有可能组合。
上述本发明实施例公开实施例序号仅仅为了描述,不代表实施例的优劣。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
结合这里的公开所描述的方法或算法的步骤可以直接包含在硬件中、由处理器执行的软件模块中或这两者的组合中。软件模块可以驻留在RAM存储器、快闪存储器、ROM存储器、EPROM存储器、EEPROM存储器、寄存器、硬盘、可移动盘、CD-ROM、或本领域已知的任何其它形式的存储介质中。示例性的存储介质被耦合到处理器,使得处理器能够从该存储介质中读取信息或向该存储介质写入信息。在一个替换方案中,所述存储介质可以与处理器集成在一起。处理器和存储介质可以驻留在ASIC中。ASIC可以驻留在用户终端中。在一个替换方案中,处理器和存储介质可以作为分立组件驻留在用户终端中。
所属领域的普通技术人员应当理解:以上任何实施例的讨论仅为示例性的,并非旨在暗示本发明实施例公开的范围(包括权利要求)被限于这些例子;在本发明实施例的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,并存在如上所述的本发明实施例的不同方面的许多其它变化,为了简明它们没有在细节中提供。因此,凡在本发明实施例的精神和原则之内,所做的任何省略、修改、等同替换、改进等,均应包含在本发明实施例的保护范围之内。

Claims (10)

1.一种数据写入方法,其特征在于,包括:
将固态硬盘分成第一分区和第二分区,并将所述第二分区和HDD硬盘封装成逻辑分区并挂载到文件系统;
通过所述第一分区承载所述文件系统的事务日志数据并将所述事务日志数据对应的数据写入到所述逻辑分区。
2.根据权利要求1所述的方法,其特征在于,所述将固态硬盘分成第一分区和第二分区,并将所述第二分区和HDD硬盘封装成逻辑分区并挂载到文件系统包括:
根据HDD硬盘的个数将所述第二分区分成对应的子分区,将所述HDD硬盘与对应的子分区挂载到F2FS文件系统作为一个OSD分区。
3.根据权利要求2所述的方法,其特征在于,所述根据HDD硬盘的个数将所述第二分区分成对应的子分区包括:
将对应的HDD硬盘容量与所有HDD硬盘总容量的比值作为子分区的权重,基于所述权重划分所述第二分区。
4.根据权利要求1所述的方法,还其特征在于,还包括:
将所述第一分区和所述逻辑分区挂载到Ceph系统和F2FS文件系统并在所述Ceph系统和F2FS文件系统中指定所述第一分区和所述逻辑分区的存储位置。
5.根据权利要求4所述的方法,其特征在于,所述在所述Ceph系统和F2FS文件系统中指定所述第一分区和所述逻辑分区的存储位置包括:
在所述Ceph系统中将所述第一分区作为事务日志数据的存储位置以及将所述逻辑分区作为数据存储位置;
在所述F2FS文件系统中将所述第一分区作为元数据存储区域,并将所述F2FS系统中的多个参数与所述第一分区对齐。
6.根据权利要求2所述的方法,其特征在于,还包括:
响应于接收到数据写入任务,通过所述F2FS文件系统将所述写入任务中的事务日志数据写入到所述第一分区以及将所述写入任务的数据写入到所述逻辑分区。
7.根据权利要求6所述的方法,其特征在于,所述将所述写入任务的数据写入到所述逻辑分区包括:
在所述F2FS文件系统中建立所述HDD硬盘与对应的所述子分区的映射关系,并基于所述映射关系将所述数据优先写入到所述子分区;以及
响应于所述子分区中的所述数据达到预设门限值,通过所述F2FS文件系统将所述子分区中的数据写入到所述子分区对应的HDD硬盘中。
8.一种数据写入系统,其特征在于,包括:
管理模块,所述管理模块配置用于将固态硬盘分成第一分区和第二分区,并将所述第二分区和HDD硬盘封装成逻辑分区并挂载到文件系统;
数据写入模块,所述数据写入模块配置用于通过所述第一分区承载所述文件系统的事务日志数据并将所述事务日志数据对应的数据写入到所述逻辑分区。
9.一种计算机设备,其特征在于,包括:
至少一个处理器;以及
存储器,所述存储器存储有可在所述处理器上运行的计算机指令,所述指令由所述处理器执行时实现权利要求1-7任意一项所述方法的步骤。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1-7任意一项所述方法的步骤。
CN202210747686.5A 2022-06-29 2022-06-29 一种数据写入方法、系统、设备及可读存储介质 Pending CN115129247A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210747686.5A CN115129247A (zh) 2022-06-29 2022-06-29 一种数据写入方法、系统、设备及可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210747686.5A CN115129247A (zh) 2022-06-29 2022-06-29 一种数据写入方法、系统、设备及可读存储介质

Publications (1)

Publication Number Publication Date
CN115129247A true CN115129247A (zh) 2022-09-30

Family

ID=83379193

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210747686.5A Pending CN115129247A (zh) 2022-06-29 2022-06-29 一种数据写入方法、系统、设备及可读存储介质

Country Status (1)

Country Link
CN (1) CN115129247A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117056245A (zh) * 2023-08-18 2023-11-14 武汉麓谷科技有限公司 一种基于zns固态硬盘的面向日志记录应用的数据组织方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117056245A (zh) * 2023-08-18 2023-11-14 武汉麓谷科技有限公司 一种基于zns固态硬盘的面向日志记录应用的数据组织方法
CN117056245B (zh) * 2023-08-18 2024-02-23 武汉麓谷科技有限公司 一种基于zns固态硬盘的面向日志记录应用的数据组织方法

Similar Documents

Publication Publication Date Title
US11663029B2 (en) Virtual machine storage controller selection in hyperconverged infrastructure environment and storage system
US11243922B2 (en) Method, apparatus, and storage medium for migrating data node in database cluster
US11144415B2 (en) Storage system and control software deployment method
WO2014087518A1 (ja) ネットワークシステム及びその運用方法
US11861196B2 (en) Resource allocation method, storage device, and storage system
JP6412244B2 (ja) 負荷に基づく動的統合
US9110591B2 (en) Memory resource provisioning using SAS zoning
US11199972B2 (en) Information processing system and volume allocation method
US11281509B2 (en) Shared memory management
US11048546B1 (en) Information processing system and information processing method with high availability during failover caused by fault occurance
CN111984370B (zh) 一种多磁盘虚拟机在线迁移到不同存储池的方法及装置
CN114860163A (zh) 一种存储系统、内存管理方法和管理节点
US20210303178A1 (en) Distributed storage system and storage control method
US8386741B2 (en) Method and apparatus for optimizing data allocation
JP2012123556A (ja) 仮想サーバーシステム、及びその制御方法
CN115129247A (zh) 一种数据写入方法、系统、设备及可读存储介质
US11675545B2 (en) Distributed storage system and storage control method
US10761726B2 (en) Resource fairness control in distributed storage systems using congestion data
KR102376152B1 (ko) 클라우드 서비스 제공을 위한 스토리지 제공 장치 및 방법
US11593182B2 (en) Storage system
US11201788B2 (en) Distributed computing system and resource allocation method
CN115827745A (zh) 内存数据库集群的实现方法、装置及内存数据库集群
US11221799B2 (en) Techniques for clustering compute nodes in distributed storage
JP2023094302A (ja) 情報処理システム及び構成管理方法
CN115470154A (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