CN111399762A - 数据存储方法、装置及存储系统 - Google Patents

数据存储方法、装置及存储系统 Download PDF

Info

Publication number
CN111399762A
CN111399762A CN201911181875.5A CN201911181875A CN111399762A CN 111399762 A CN111399762 A CN 111399762A CN 201911181875 A CN201911181875 A CN 201911181875A CN 111399762 A CN111399762 A CN 111399762A
Authority
CN
China
Prior art keywords
data
stored
storage area
storage
index information
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
CN201911181875.5A
Other languages
English (en)
Other versions
CN111399762B (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.)
Hangzhou Hikvision System Technology Co Ltd
Original Assignee
Hangzhou Hikvision System 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 Hangzhou Hikvision System Technology Co Ltd filed Critical Hangzhou Hikvision System Technology Co Ltd
Priority to CN201911181875.5A priority Critical patent/CN111399762B/zh
Publication of CN111399762A publication Critical patent/CN111399762A/zh
Priority to PCT/CN2020/131816 priority patent/WO2021104380A1/zh
Priority to EP20894122.9A priority patent/EP4068070A4/en
Priority to US17/780,334 priority patent/US11853549B2/en
Application granted granted Critical
Publication of CN111399762B publication Critical patent/CN111399762B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/0608Saving storage space on 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/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
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/13File access structures, e.g. distributed indices
    • 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/1847File system types specifically adapted to static storage, e.g. adapted to flash memory or SSD
    • 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/0614Improving the reliability of storage systems
    • G06F3/0619Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
    • 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
    • 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
    • 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/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/0647Migration mechanisms
    • G06F3/0649Lifecycle 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/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/0652Erasing, e.g. deleting, data cleaning, moving of data to a wastebasket
    • 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/0673Single storage device
    • G06F3/0674Disk device
    • G06F3/0676Magnetic disk device
    • 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
    • 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/0689Disk arrays, e.g. RAID, JBOD
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/12Formatting, e.g. arrangement of data block or words on the record carriers
    • G11B20/1217Formatting, e.g. arrangement of data block or words on the record carriers on discs
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/12Formatting, e.g. arrangement of data block or words on the record carriers
    • G11B20/1217Formatting, e.g. arrangement of data block or words on the record carriers on discs
    • G11B2020/1218Formatting, e.g. arrangement of data block or words on the record carriers on discs wherein the formatting concerns a specific area of the disc
    • G11B2020/1238Formatting, e.g. arrangement of data block or words on the record carriers on discs wherein the formatting concerns a specific area of the disc track, i.e. the entire a spirally or concentrically arranged path on which the recording marks are located

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)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明实施例提供了一种数据存储方法、装置及存储系统,其中,该方法包括:在获取到待存储数据时,确定待存储数据的数据类型;基于SMR磁盘中的各个存储区中已存储的数据的数据类型,确定与待存储数据的数据类型相同的目标存储区;在目标存储区中确定待写入待存储数据的目标存储块;基于目标存储块的标识,生成待存储数据的主索引信息以及备索引信息;基于待存储数据以及目标存储块的标识,生成待存储数据的数据库索引信息;将待存储数据的备索引信息和待存储数据写入目标存储块,将待存储数据的主索引信息写入CMR区域或非SMR磁盘,并将待存储数据的数据库索引信息写入非SMR磁盘。从而可以提高SMR磁盘的存储资源利用率。

Description

数据存储方法、装置及存储系统
技术领域
本发明涉及数据存储技术领域,特别是涉及一种数据存储方法、装置及存储系统。
背景技术
随着信息技术的发展,各种各样的电子设备会产生大量的数据,为了定期对该数据进行分析处理,需要先将该数据存储到存储介质中,例如,存储到软盘、光盘、磁盘、闪存、U盘、SM卡、记忆棒等存储介质中。
为了使得单个磁盘能够存储更多的数据,现有技术中出现了SMR(ShingledMagneting Recording,叠瓦式磁记录)磁盘,在SMR磁盘中,各个数据磁道之间如同屋顶上的瓦片一样部分重叠,这样可以使得在写入数据时,在相同的面积内容纳了更多的磁道,从而提高了存储面密度,增加了单个磁盘的存储容量。
然而,发明人发现,在现有技术中,通常是按照接收到的数据写入指令的先后顺序来将待写入数据写入到SMR磁盘中的。由于SMR磁盘的一个存储区只能顺序写入,当在该SMR磁盘的一个存储区中对同一个数据进行频繁的覆盖写入操作时,存储该数据的存储块中,只有最后一个存储该数据的存储块中存储的是有效数据,其他存储块中存储的该数据均为无效数据,并且该存储区的存储块不支持删除操作,容易导致该SMR磁盘出现大量碎片,如果这些碎片不能及时回收,则使得该SMR磁盘的存储资源利用率不高。
发明内容
本发明实施例的目的在于提供一种数据存储方法、装置及存储系统,以提高SMR磁盘的存储资源利用率。具体技术方案如下:
第一方面,本发明实施例提供了一种数据存储方法,应用于叠瓦式磁记录SMR存储系统,SMR存储系统包括SMR磁盘及非SMR磁盘;SMR磁盘包括传统式磁记录CMR(conventional magnetic recording,传统式磁记录)区域及SMR区域,SMR区域包括多个存储区,每个存储区逻辑划分为多个存储块;该方法包括:
在获取到待存储数据时,确定待存储数据的数据类型;
基于SMR磁盘中的各个存储区中已存储的数据的数据类型,确定与待存储数据的数据类型相同的目标存储区;
在目标存储区中确定待写入待存储数据的目标存储块;
基于目标存储块的标识,生成待存储数据的主索引信息以及备索引信息;
基于待存储数据以及目标存储块的标识,生成待存储数据的数据库索引信息;
将待存储数据的备索引信息和待存储数据写入目标存储块,将待存储数据的主索引信息写入CMR区域或非SMR磁盘,并将待存储数据的数据库索引信息写入非SMR磁盘。
第二方面,本发明实施例还提供了一种数据存储装置,应用于叠瓦式磁记录SMR存储系统,SMR存储系统包括SMR磁盘及非SMR磁盘;SMR磁盘包括传统式磁记录CMR区域及SMR区域,SMR区域包括多个存储区,每个存储区逻辑划分为多个存储块;装置包括:
第一数据类型确定模块,用于在获取到待存储数据时,确定待存储数据的数据类型;
目标存储区确定模块,用于基于SMR磁盘中的各个存储区中已存储的数据的数据类型,确定与待存储数据的数据类型相同的目标存储区;
目标存储块确定模块,用于在目标存储区中确定待写入待存储数据的目标存储块;
第一索引信息生成模块,用于基于目标存储块的标识,生成待存储数据的主索引信息以及备索引信息;
第二索引信息生成模块,用于基于待存储数据以及目标存储块的标识,生成待存储数据的数据库索引信息;
存储模块,用于将待存储数据的备索引信息和待存储数据写入目标存储块,将待存储数据的主索引信息写入CMR区域或非SMR磁盘,并将待存储数据的数据库索引信息写入非SMR磁盘。
第三方面,本发明实施例还提供了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现上述第一方面的方法步骤。
第四方面,本发明实施例还提供了一种计算机可读存储介质,计算机可读存储介质内存储有计算机程序,计算机程序被处理器执行时实现权利要求1-8任一的方法步骤。
第五方面,本发明实施例还提供了一种SMR存储系统,SMR存储系统包括:SMR磁盘、非SMR磁盘及处理器,SMR磁盘包括CMR区域及SMR区域,SMR区域包括多个存储区,每个存储区逻辑划分为多个存储块;
存储块用于存储待存储数据及待存储数据的备索引信息;
CMR区域用于存储待存储数据的主索引信息;
非SMR磁盘用于存储待存储数据的数据库索引信息;
处理器用于在运行时执行上述第一方面的数据存储方法。
本发明实施例提供的一种数据存储方法、装置、电子设备、存储介质及存储系统,在获取到待存储数据时,可以确定待存储数据的数据类型;然后可以基于SMR磁盘中的各个存储区中已存储的数据的数据类型,确定与待存储数据的数据类型相同的目标存储区;在目标存储区中确定待写入待存储数据的目标存储块;在确定出目标存储块后,可以基于目标存储块的标识,生成待存储数据的主索引信息以及备索引信息;基于待存储数据以及目标存储块的标识,生成待存储数据的数据库索引信息;最后,可以将待存储数据的备索引信息和待存储数据写入目标存储块,将待存储数据的主索引信息写入CMR区域或非SMR磁盘,并将待存储数据的数据库索引信息写入非SMR磁盘。这样,可以使得相同数据类型的数据,存储到同一个存储区;由于相同数据类型的数据,通常具有相同或相近的覆盖写入操作频率,因此,将具有相同或相近的覆盖写入操作的数据存储到同一个存储区中,以方便按照该数据的覆盖写入操作频率,对该存储区中产生的碎片进行及时回收,减少碎片量,进而可以提高SMR磁盘的存储资源利用率。当然,实施本发明的任一产品或方法并不一定需要同时达到以上所述的所有优点。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为相关技术中SMR磁盘的一种示意图;
图2为本发明实施例的一种数据存储系统的结构示意图;
图3a为本发明实施例的SMR磁盘中SMR区域的示意图;
图3b为本发明实施例的SMR磁盘的CMR区域中主索引块的示意图;
图3c为本发明实施例的SMR磁盘的SMR区域中备索引块的示意图;
图4为本发明实施例的一种数据存储方法第一种实施方式的流程图;
图5a为图4所示的实施方式中存储视频数据的存储区的示意图;
图5b为图4所示的实施方式中存储视频索引数据的存储区的示意图;
图6为本发明实施例的一种数据存储方法第二种实施方式的流程图;
图7为本发明实施例的一种数据存储方法第三种实施方式的流程图;
图8为本发明实施例的一种数据存储方法第四种实施方式的流程图;
图9为图8所示的一种数据存储方法中数据转移过程的示意图;
图10为本发明实施例的一种数据存储装置的结构示意图;
图11为本发明实施例的一种电子设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
相关技术中,为了增加SMR磁盘的读写效率,采用了HM(Host Manage,主机管理)SMR技术。参见图1,HM SMR磁盘分为CMR区域与SMR两个存储区域,该SMR区域包括多个存储区,CMR区域支持随机读写。SMR区域中的每个存储区内仅支持顺序写,多个存储区之间支持并行写;SMR区域的每个存储区内部都有一个写指针,每个写操作必须从写指针开始,写操作必须根据物理扇区大小对齐,单次读写操作不能跨越多个存储区,已经写入数据的存储区域在下次复用写之前必须重置。HM SMR磁盘暴露存储区与写指针后,应用层软件可以直接管理存储区的完整生命周期,包括存储区内数据顺序写入、存储区域的回收重置等。
安防行业视频数据、图片、音频数据简称流式数据,流式数据存在数据量较大、写多读少、覆盖频率快等特点;项目应用中存储流式数据时,需要处理大量新数据写入与过期数据删除问题,以及大量流式数据存储带来的硬件成本问题。SMR磁盘具有存储密度高的特点,因此,非常适合安防行业使用。
然而,由于SMR磁盘的一个存储区只能顺序写入,当在该SMR磁盘的一个存储区中对同一个数据进行频繁的覆盖写入操作时,存储该数据的存储块中,只有最后一个存储该数据的存储块中存储的是有效数据,其他存储块中存储的该数据均为无效数据,并且该存储区的存储块不支持删除操作,容易导致该SMR磁盘出现大量碎片,如果这些碎片不能及时回收,则使得该SMR磁盘的存储资源利用率不高。
有鉴于此,本发明实施例提供了一种数据存储方法、装置、电子设备、存储介质及存储系统,以提高SMR磁盘的存储资源利用率。
下面,首先对发明实施例的SMR存储系统进行介绍,如图2所示,为本发明实施例的SMR存储系统的结构示意图,该SMR存储系统可以包括:处理器210、SMR磁盘220以及非SMR磁盘230,SMR磁盘包括CMR区域及SMR区域,SMR区域包括多个存储区,每个存储区逻辑划分为多个存储块;
SMR磁盘220中的存储块用于存储待存储数据及待存储数据的备索引信息;
SMR磁盘220中的CMR区域用于存储待存储数据的主索引信息;
非SMR磁盘230用于存储待存储数据的数据库索引信息;
处理器210用于在运行时执行本发明实施例的任一种数据存储方法的实施例。
在一些示例中,如图3a所示,该SMR磁盘可以包括传统式磁记录CMR区域及SMR区域,SMR区域包括多个存储区,每个存储区逻辑划分为多个存储块。
如图3a所示,SMR区域的包括:存储区、备元数据区和保留区。其中,存储区用于存储对象数据和对象数据对应的备索引信息。具体在数据区中,对象数据和对象数据的备索引信息存储在存储块中。
在一些示例中,每个存储块包括对象块和备索引块。对象数据存储在对象块中,对象数据的备索引信息存储在该备索引块中,通常,一个存储区中划分有多个对象块和多个备索引块,每个对象块之后紧跟有一个备索引块,作为该对象块对应的一个备索引块。备元数据区用于存储备元数据信息。保留区用于在对对象块进行回收时,作为中间介质。
如图3a所示,CMR区域包括:主元数据区和主索引存储区,该主索引存储区被划分为多个主索引块。其中,主元数据区用于存储主元数据信息。主索引存储区用于存储与备索引信息互为备份的主索引信息,主索引信息存储在主索引块。那么,对于上述存储区中的一个对象块,在该存储区中的任一个对象块除了在SMR区域具有对应的一个备索引块外,在主索引区还具有与该对象块对应的一个主索引块。
上述主元数据信息和备元数据信息的内容一致且互为备份,可以包括:CMR区域的大小、SMR区域的大小、SMR区域中存储区的个数、单个主/备索引块的大小、单个对象块的大小、文件系统初始化时间、文件系统可用块总数等信息。在具体应用中,可以将SMR区域中的最后一个存储区作为备元数据区,用来存储备元数据信息,这样,可以防止CMR区域损坏后导致元数据信息丢失。任一对象块对应的主索引信息和备索引信息的内容一致且互为备份。
图3b所示,为CMR区域中主索引存储区的存储结构图。可以包括:文件系统管理数据和Unit_key。其中,Unit_key是对象块对应的单元键。文件系统管理数据可以包括:对象块号、Unit_key长度、对象块的存储状态(例如为空闲、已使用或已删除等)、对象块存储的有效数据的长度、对象块存储的数据的校验值,对象块的写入时间。其中,对象块的写入时间是指:对象块对应的对象数据的写入时间。
主索引存储区可以包括一个主索引存储区,也可以包括多个连续的主索引存储区。如图3b所示,每个主索引存储区可以包括多个主索引块,各个主索引块(主索引块1~主索引块N)连续分布。也就是说,对于SMR区域中的一个存储区来说,在主索引存储区中,连续存储有该存储区中各个对象块对应的主索引信息。
如图3c所示,SMR区域中的每个存储块中的备索引块也可以包括:文件系统管理数据和Unit_key,这样可以使得备索引块与图3b中的主索引块对应。
结合图3b和图3c可知,各个主索引块连续存储是指:对于一个存储区中的多个连续的存储块,该多个存储块中的主索引块中存储的主索引信息,在主索引存储区中也是按照该多个连续的存储块进行连续存储的。
通常,将流式数据作为对象数据存储至SMR区域的存储区中的对象块中,每一对象块对应有内容一致且互为备份的主索引信息和备索引信息,其中,主索引信息存储在CMR区域的主索引存储区中,备索引信息存储在SMR区域的存储区中。在一些示例中,该非SMR磁盘可以包括固态硬盘。
下面,对本发明实施例的一种数据存储方法进行介绍,如图4所示,为本发明实施例的一种数据存储方法第一种实施方式的流程图,该方法可以包括:
S410,在获取到待存储数据时,确定待存储数据的数据类型。
在一些示例中,当用户向上述的数据存储系统中存储数据时,可以向上述的数据存储系统发送一个数据存储指令,该数据存储指令中可以包括该待存储数据,该数据存储系统在获取到该数据存储指令时,则可以获取到该待存储数据。
在一些示例中,用户可以使用一个终端设备向该数据存储系统发送一个数据存储指令,该终端设备可以包括个人电脑、智能手机等。
在一些示例中,该终端设备可以调用该数据存储系统的应用程序接口,以将该数据存储指令发送至该应用程序接口,该数据存储系统可以通过该应用程序接口获取到该数据存储指令,在又一些示例中,该数据存储指令中还可以包括该待存储数据的数据类型标识,则上述的数据存储系统可以在获取到待存储数据后,基于该待存储数据的数据类型标识,确定待存储数据的数据类型。
S420,基于SMR磁盘中的各个存储区中已存储的数据的数据类型,确定与待存储数据的数据类型相同的目标存储区。
S430,在目标存储区中确定待写入待存储数据的目标存储块。
上述的数据存储系统在确定待存储数据的数据类型后,为了按照该待存储数据的数据类型对该待存储数据进行存储,可以基于SMR磁盘中的各个存储区中已存储的数据的数据类型,确定与待存储数据的数据类型相同的目标存储区,然后在该目标存储区中确定目标存储块。
例如,当该SMR磁盘中的各个存储区中,有至少一个存储区中已存储的数据的数据类型与该待存储数据的数据类型相同,则可以从该至少一个存储区中选择一个存储区作为目标存储区。在一些示例中,可以在该至少一个存储区中选择还有可用存储块的存储区作为目标存储区。
上述的数据存储系统在确定出目标存储区后,可以在该目标存储区中选择一个存储块作为该待存储数据的目标存储块。例如,将该目标存储区中的空闲存储块作为该目标存储块。
S440,基于目标存储块的标识,生成待存储数据的主索引信息以及备索引信息;
S450,基于待存储数据以及目标存储块的标识,生成待存储数据的数据库索引信息;
S460,将待存储数据的备索引信息和待存储数据写入目标存储块,将待存储数据的主索引信息写入CMR区域或非SMR磁盘,并将待存储数据的数据库索引信息写入非SMR磁盘。
在确定出目标存储区和目标存储块后,为了使得后续能够读取到该待存储数据,可以基于该目标存储块的标识,来生成该待存储数据的主索引信息和备索引信息,基于该待存储数据以及目标存储块的标识,生成待存储数据的数据库索引信息。
在一些示例中,在基于该待存储数据以及目标存储块的标识,生成待存储数据的数据库索引信息时,可以先从上述的数据存储指令中获取该待存储数据的单元键,然后基于该待存储数据的单元键和目标存储块的标识,生成待存储数据的数据库索引信息。该目标存储块的标识可以是该目标存储块在SMR区域的序号。
应当理解的是,由于存储块在SMR区域的序号是按照该SMR区域的存储块的数量进行计数的,例如,存储块的最大序号为该SMR区域中的所有存储块的总数量。因此,这里在生成数据库索引信息时,无需使用存储区的标识信息。
在一些示例中,上述的数据存储系统可以采用三级索引,包括数据库索引、主索引及备索引。其中,数据库索引为一级索引、主索引为二级索引、备索引为三级索引。
基于此,在生成待存储数据的主索引信息、备索引信息和待存储数据的数据库索引信息后,可以将该待存储数据的数据库索引信息存储在上述非SMR磁盘中,将该待存储数据的备索引信息和该待存储数据存储在SMR区域的存储区中的存储块中,将主索引信息存储在该SMR磁盘的CMR区域或者存储在非SMR磁盘中。
在一些示例中,该目标存储块可以包括目标对象子块和目标索引子块,该目标索引子块近邻在该目标对象子块之后,基于此,可以将该待存储数据的备索引信息存储至该目标索引子块中,将该待存储数据存储在该目标对象子块中。
在生成该待存储数据的主索引信息、备索引信息以及该待存储数据的数据库索引信息后,可以将待存储数据的备索引信息和待存储数据写入目标存储块,将待存储数据的主索引信息写入CMR区域或非SMR磁盘,并将待存储数据的数据库索引信息写入非SMR磁盘,这样,可以使得对待存储数据进行存储后,方便后续读取。
在又一些示例中,该数据存储系统中的SMR磁盘可以是一个,也可以是多个。当该SMR磁盘为多个时,为了保证数据的一致性,避免相同的数据存储在多个SMR磁盘,这里,在生成待存储数据的数据库索引信息时,还可以基于该待存储数据的单元键、该SMR磁盘的WWN(World Wide Name,硬件的全球唯一标识)和目标存储块的标识,生成待存储数据的数据库索引信息。
为了更清楚的说明本发明实施例,这里以视频数据和视频索引信息数据作为该待存储数据为例进行说明。
假设该数据存储系统获取到的待存储数据是视频数据,则可以基于SMR磁盘中的各个存储区中已存储的数据的数据类型,确定与视频数据的数据类型相同的目标存储区,然后在与视频数据的数据类型相同的目标存储区中确定一个存储块作为存储该视频数据的目标存储块。最后,可以将该视频数据存储至该视频数据的目标存储块的目标对象子块中,将该视频数据的备索引信息,存储至该视频数据的目标对象子块之后的目标索引子块中。存储该视频数据的存储区可以是图5a所示的存储区,在该存储区中,共有N-1个存储块,每个存储块存储一个视频数据,则可以存储N-1个视频数据。
又假设,该数据存储系统获取到的待存储数据是视频索引数据,则可以基于SMR磁盘中的各个存储区中已存储的数据的数据类型,确定与视频索引数据的数据类型相同的目标存储区,然后在与视频索引数据的数据类型相同的目标存储区中确定一个存储块作为存储该视频索引数据的目标存储块。最后,可以将该视频索引数据存储至该视频索引数据的目标存储块的目标对象子块中,将该视频索引数据的备索引信息,存储至该视频索引数据的目标对象子块之后的目标索引子块中。存储该视频索引数据的存储区可以是图5b所示的存储区,在该存储区中,共有N-1个存储块,每个存储块存储一个视频索引数据,则可以存储N-1个视频索引数据。
本发明实施例提供的一种数据存储方法,在获取到待存储数据时,可以确定待存储数据的数据类型;然后可以基于SMR磁盘中的各个存储区中已存储的数据的数据类型,确定与待存储数据的数据类型相同的目标存储区;在目标存储区中确定待写入待存储数据的目标存储块;在确定出目标存储块后,可以基于目标存储块的标识,生成待存储数据的主索引信息以及备索引信息;基于待存储数据以及目标存储块的标识,生成待存储数据的数据库索引信息;最后,可以将待存储数据的备索引信息和待存储数据写入目标存储块,将待存储数据的主索引信息写入CMR区域或非SMR磁盘,并将待存储数据的数据库索引信息写入非SMR磁盘。这样,可以使得相同数据类型的数据,存储到同一个存储区;由于相同数据类型的数据,通常具有相同或相近的覆盖写入操作频率,因此,将具有相同或相近的覆盖写入操作的数据存储到同一个存储区中,以方便按照该数据的覆盖写入操作频率,对该存储区中产生的碎片进行及时回收,减少碎片量,进而可以提高SMR磁盘的存储资源利用率。
在图4所示的一种数据存储方法的基础上,本发明实施例还提供了一种可能的实现方式,如图6所示,为本发明实施例的一种数据存储方法第二种实施方式的流程图,该方法可以包括:
S610,在获取到待存储数据时,确定待存储数据的数据类型。
S620,判断已存储数据的存储区中,是否存在存储有与待存储数据具有相同数据类型的已存储的数据的存储区;如果存在,执行步骤S630,如果不存在执行步骤S640。
S630,将存储有与待存储数据具有相同数据类型的已存储的数据的存储区作为目标存储区。
S640,选择SMR磁盘中的一个空闲存储区确定为目标存储区。
在一些示例中,上述的已存储数据的存储区中已存储的数据的数据类型,可能与该待存储数据的数据类型相同,也有可能与该待存储数据的数据类型不同,为了确定该已存储数据的存储区中,是否存在存储有与待存储数据具有相同数据类型的已存储的数据的存储区,可以基于各个已存储数据的存储区存储的数据的数据类型标识和待存储数据的数据类型标识,判断已存储数据的存储区中,是否存在存储有与待存储数据具有相同数据类型的已存储的数据的存储区。
当该已存储数据的存储区中,存在存储有与待存储数据具有相同数据类型的已存储的数据的存储区,则可以将存储有与待存储数据具有相同数据类型的已存储的数据的存储区作为目标存储区。
在一些示例中,当该存储有与待存储数据具有相同数据类型的已存储的数据的存储区有多个时,可以从该存储有与待存储数据具有相同数据类型的已存储的数据的多个存储区,选择具有空闲存储块的存储区作为该目标存储区。
当不存在存储有与待存储数据具有相同数据类型的已存储的数据的存储区时,则说明该待存储数据的数据类型与已存储数据的存储区中的任何一个存储块中存储的数据的数据类型都不同,此时,可以选择一个空闲存储区作为目标存储区。然后可以通过后续步骤将该待存储数据存储至该空闲存储区的目标存储块中,并标记该空闲存储区中存储的数据类型为该待存储数据的数据类型,最后,可以将对该空闲存储区标记的数据类型存储至主元数据区中,以便后续查询。
S650,在目标存储区中确定待写入待存储数据的目标存储块;
S660,基于目标存储块的标识,生成待存储数据的主索引信息以及备索引信息;
S670,基于待存储数据以及目标存储块的标识,生成待存储数据的数据库索引信息;
S680,将待存储数据的备索引信息和待存储数据写入目标存储块,将待存储数据的主索引信息写入CMR区域或非SMR磁盘,并将待存储数据的数据库索引信息写入非SMR磁盘。
通过本发明实施例,可以实现在已存储数据的存储区中存储的数据类型都与该待存储数据的数据类型不同时,为该待存储数据确定出目标存储区,从而可以通过后续步骤实现对该待存储数据的存储。
可以理解的是,本发明实施例中的步骤S610、S650~S680与第一种实施方式中的步骤SS410、S430~S460相同,这里不再赘述。
在图4所示的一种数据存储方法的基础上,本发明实施例还提供了一种可能的实现方式,如图7所示,为本发明实施例的一种数据存储方法第三种实施方式的流程图,该方法可以包括:
S710,在获取到待存储数据时,确定待存储数据的数据类型;
S720,基于SMR磁盘中的各个存储区中已存储的数据的数据类型,确定与待存储数据的数据类型相同的目标存储区;
S730,在目标存储区中确定待写入待存储数据的目标存储块;
S740,基于目标存储块的标识,生成待存储数据的主索引信息以及备索引信息;
S750,基于待存储数据以及目标存储块的标识,生成待存储数据的数据库索引信息;
S760,获取待存储数据的单元键,并在非SMR磁盘中查找是否存在与待存储数据具有相同单元键的数据库索引信息;如果存在,执行步骤S770;
S770,基于与待存储数据具有相同单元键的数据库索引信息中的存储块的标识信息,确定待删除主索引信息;
S780,删除CMR区域中的待删除主索引信息。
在一些示例中,该待存储数据可以是初次存储至该存储区中,也可以是对该存储区中已存储的数据进行更新的。
为了确定该待存储数据是否为初次存储至该待存储区,可以先获取该待存储数据的单元键。在一些示例中,在将待存储数据存储至数据库中时,可以以键值对的形式对该待存储数据进行存储,此时,该数据库可以为该待存储数据分配一个单元键。可以理解的是,该数据库是基于该存储系统中的SMR磁盘和非SMR磁盘,以软件的形式存在的。
在获取到该待存储数据的单元键后,可以在非SMR磁盘中查找是否存在与待存储数据具有相同单元键的数据库索引信息。当存在与该待存储数据具有相同单元键的数据库索引信息时,则说明该待存储数据是对该SMR磁盘中存储的数据进行更新的数据,当不存在与该待存储数据具有相同单元键的数据库索引信息时,则说明该待存储数据是初次存储至该SMR磁盘中的。则可以直接执行步骤S790。
在一些示例中,为了保证使用该待存储数据对已存储数据的存储区中存储的数据进行更新后,该数据的主索引信息具有唯一性,当确定非SMR磁盘中存在与该待存储数据具有相同单元键的数据库索引信息时,可以基于与该待存储数据具有相同单元键的数据库索引信息中的存储块的标识信息,确定待删除主索引信息。
例如,在确定非SMR磁盘中存在与该待存储数据具有相同单元键的数据库索引信息后,可以基于该待存储数据的单元键,确定出存储与该待存储数据相同的数据的存储块的标识,进而可以确定出对应的存储块。由于该存储块中存储的备索引信息与主索引信息互为备份,因此,可以确定出待删除的主索引信息。该待删除的主索引信息对应的已存储数据为使用该待存储数据进行更新的数据。再确定出待删除主索引信息后,当该待删除主索引信息存储在该SMR磁盘的CMR区域时,则可以删除该CMR区域中存储的待删除主索引信息,当该待删除主索引信息存储在非SMR磁盘中时,则可以删除该非SMR磁盘中存储的待删除主索引信息。从而可以保证主索引信息的唯一性。避免获取到更新前的数据。
S790,将待存储数据的备索引信息和待存储数据写入目标存储块,将待存储数据的主索引信息写入CMR区域或非SMR磁盘,并将待存储数据的数据库索引信息写入非SMR磁盘。
在一些示例中,上述的存储区可以设置有状态,该状态可以包括空闲状态、忙碌状态和满载状态。当上述的数据存储系统在确定出目标存储区时,可以将该目标存储区的状态设置为忙碌状态,以避免将该目标存储区确定为其他待存储数据的存储区。在将待存储数据写入该目标存储区中的目标存储块后,可以判断该目标存储区中是否存储满,如果存储满数据,则可以将该目标存储区的状态设置为满载状态,该满载状态可以表示该目标存储区中可存储数据的存储块为0。如果该目标存储区中还未存储满数据,则可以将该目标存储区的状态设置为空闲状态,以便为其他待存储数据确定目标存储区。
可以理解的是,本发明实施例的步骤S710~S750和S790,与第一种实施方式中的步骤S410~S450和S460相同,这里不再赘述。
在图4所示的一种数据存储方法的基础上,本发明实施例还提供了一种可能的实现方式,如图8所示,为本发明实施例的一种数据存储方法第四种实施方式的流程图,该方法可以包括:
S810,在获取到待存储数据时,确定待存储数据的数据类型;
S820,基于SMR磁盘中的各个存储区中已存储的数据的数据类型,确定与待存储数据的数据类型相同的目标存储区;
S830,在目标存储区中确定待写入待存储数据的目标存储块;
S840,基于目标存储块的标识,生成待存储数据的主索引信息以及备索引信息;
S850,基于待存储数据以及目标存储块的标识,生成待存储数据的数据库索引信息;
S860,将待存储数据的备索引信息和待存储数据写入目标存储块,将待存储数据的主索引信息写入CMR区域或非SMR磁盘,并将待存储数据的数据库索引信息写入非SMR磁盘。
S870,在接收到对SMR磁盘的清理指令时,基于元数据区中存储的SMR区域的分配存储量、存储区数量以及存储块分配存储量,确定SMR磁盘中可用存储块为0的第一存储区以及每个第一存储区中的存储块数量;
S880,针对每个第一存储区,基于数据库索引信息和该第一存储区中的存储块数量,确定该第一存储区中的有效存储块数量,其中,有效存储块中存储的数据为有效数据;
S890,基于每个第一存储区中的有效存储块数量,确定该第一存储区是否为待清理存储区,如果是,对该待清理存储区进行重置清理。
在一些示例中,当按照不同的数据类型对待存储数据进行存储后,有些数据的更新频率较高,有些数据的更新频率较低,例如,视频数据在存储至存储区后,不需要进行更新,而视频索引数据在存储至存储区后,通常会进行频繁地更新,而由于现有技术中在对该视频索引数据进行更新时,通常是在视频索引数据的存储区中重新选择一个存储块存储该更新后的视频索引数据,并基于该重新选择的存储块的标识生成数据库索引信息,则存储更新前的视频索引数据的存储块成为无效存储块。当进行多次更新后,会使得该视频索引数据存储区中的无效存储块比较多。为了更有效的对SMR磁盘的存储空间进行利用,可以对该无效存储块进行重置回收。
在一些示例中,用户可以使用终端设备向该数据存储系统发送一个清理指令。该数据存储系统在接收到该清理指令后,可以确定待清理存储区,然后对该待清理存储区进行重置清理。
在一些示例中,CMR区域可以包括:元数据区,该元数据区可以存储有SMR区域的分配存储量、存储区数量以及存储块分配存储量,其中,该SMR区域的分配存储量为对该SMR区域分配的总大小,该存储块分配存储量为对每个存储块分配的大小。
上述的数据存储系统可以基于该SMR区域的分配存储量和存储区数量,计算得到每个存储区的大小,然后可以基于每个存储区的大小和存储块分配存储量,计算得到该存储区中存储块的数量。
上述的数据存储系统在计算得到每个存储区中存储块的数量后,针对每个存储区,可以统计该存储区中存储有数据的存储块的数量,进而可以基于每个存储区中存储块的数量和该存储区中存储有数据的存储块的数量,确定该存储区中的可用存储块是否为0,如果为0,则可以将该可用存储块为0的存储区作为第一存储区,这样,可以得到该SMR区域中的所有第一存储区和每个第一存储区中存储块数量。
然后,上述的数据存储系统可以针对每个第一存储区,基于数据库索引信息和该第一存储区中的存储块数量,确定出该第一存储区中具有数据库索引信息的存储块,进而可以将该具有数据库索引信息的存储块确定为该第一存储区中的有效存储块,从而可以统计得到该第一存储区中的有效存储块数量。
最后,可以基于每个第一存储区中的有效存储块数量,来确定该第一存储区是否为待清理存储区。例如,当该第一存储区中的有效存储块数量小于预设清理阈值时,则可以将该第一存储区确定为待清理存储区。然后可以对该待清理存储区进行重置清理。以实现及时对存储区的回收,提高SMR磁盘的存储空间的使用率。
在一些示例中,在对待清理存储区进行重置回收时,该待清理存储区中还可能存储有有效数据,为了避免对有效存储块中存储的有效数据重置,可以针对每个待清理存储区,统计该待清理存储区中的有效存储块数量,在待清理存储区中的有效存储块数量不为0时,可以确定待清理存储区中存储的待复制数据的数据类型,也即存储的有效数据的数据类型;然后可以基于SMR磁盘中除待重置存储区外的各个存储区中已存储的数据的数据类型,确定与待复制数据的数据类型相同的目标粘贴存储区;以便将该有效数据转移至目标粘贴存储区中。
在确定出目标粘贴存储区后,可以在目标粘贴存储区中确定待粘贴待复制数据的目标粘贴存储块。然后可以基于目标粘贴存储块的标识,生成待复制数据的主索引信息以及备索引信息;基于待复制数据以及目标粘贴存储块的标识,生成待复制数据的数据库索引信息。
最后,可以复制有效存储块中的待复制数据,并将待复制数据的备索引信息和所复制的待复制数据写入目标粘贴存储块,将待复制数据的主索引信息写入CMR区域或非SMR磁盘,并将待复制数据的数据库索引信息写入非SMR磁盘。这样,可以将待清理存储区中存储的有效数据,转移至与该有效数据的数据类型相同的存储区中,从而可以避免清理掉该有效数据。
在又一些示例中,当对该有效数据进行转移后,为了使得该有效数据具有唯一的数据库索引,则在复制待重置存储块中的待复制数据之前,还可以删除非SMR磁盘中,与待复制数据具有相同单元键的数据库索引信息。
例如,假设通过上述步骤确定出的待清理存储区为图9所示的存储区1和存储区2,其中,存储区1中的存储块A和存储块B为待复制存储块,存储区2中的存储块C和存储块D也是待复制存储块。又假设存储区1和存储区2中存储的数据的数据类型相同,则可以确定出目标粘贴存储区为存储3。然后可以在存储区3中分别为存储块A、存储块B、存储块C和存储块D确定出待粘贴存储块,假设为存储块A确定出的待粘贴存储块为存储块A’,为存储块B确定出的待粘贴存储块为存储块B’,为存储块C确定出的待粘贴存储块为存储块C’,为存储块D确定出的待粘贴存储块为存储块D’,则可以依次将存储块A中存储的数据复制粘贴至存储块A’,将存储块B中存储的数据复制粘贴至存储块B’,将存储块C中存储的数据复制粘贴至存储块C’,将存储块D中存储的数据复制粘贴至存储块D’;最后对存储区1和存储区2进行重置清理。
应当理解的是,本发明实施例中的步骤S810~S860与第一种实施方式中的步骤S410~S460相同,这里不再赘述。
相应于上述的方法实施例,本发明实施例还提供了一种数据存储装置,该数据存储装置可以应用于叠瓦式磁记录SMR存储系统,SMR存储系统包括SMR磁盘及非SMR磁盘;SMR磁盘包括传统式磁记录CMR区域及SMR区域,SMR区域包括多个存储区,每个存储区逻辑划分为多个存储块;参见图10,该装置可以包括:
第一数据类型确定模块1010,用于在获取到待存储数据时,确定待存储数据的数据类型;
目标存储区确定模块1020,用于基于SMR磁盘中的各个存储区中已存储的数据的数据类型,确定与待存储数据的数据类型相同的目标存储区;
目标存储块确定模块1030,用于在目标存储区中确定待写入待存储数据的目标存储块;
第一索引信息生成模块1040,用于基于目标存储块的标识,生成待存储数据的主索引信息以及备索引信息;
第二索引信息生成模块1050,用于基于待存储数据以及目标存储块的标识,生成待存储数据的数据库索引信息;
存储模块1060,用于将待存储数据的备索引信息和待存储数据写入目标存储块,将待存储数据的主索引信息写入CMR区域或非SMR磁盘,并将待存储数据的数据库索引信息写入非SMR磁盘。
本发明实施例提供的一种数据存储装置,在获取到待存储数据时,可以确定待存储数据的数据类型;然后可以基于SMR磁盘中的各个存储区中已存储的数据的数据类型,确定与待存储数据的数据类型相同的目标存储区;在目标存储区中确定待写入待存储数据的目标存储块;在确定出目标存储块后,可以基于目标存储块的标识,生成待存储数据的主索引信息以及备索引信息;基于待存储数据以及目标存储块的标识,生成待存储数据的数据库索引信息;最后,可以将待存储数据的备索引信息和待存储数据写入目标存储块,将待存储数据的主索引信息写入CMR区域或非SMR磁盘,并将待存储数据的数据库索引信息写入非SMR磁盘。这样,可以使得相同数据类型的数据,存储到同一个存储区;由于相同数据类型的数据,通常具有相同或相近的覆盖写入操作频率,因此,将具有相同或相近的覆盖写入操作的数据存储到同一个存储区中,以方便按照该数据的覆盖写入操作频率,对该存储区中产生的碎片进行及时回收,减少碎片量,进而可以提高SMR磁盘的存储资源利用率。
在一些示例中,目标存储区确定模块1020,可以包括:
判断子模块,用于判断已存储数据的存储区中,是否存在存储有与待存储数据具有相同数据类型的已存储的数据的存储区;如果存在,触发第一目标存储区确定子模块,如果不存在,触发第二目标存储区确定子模块;
第一目标存储区确定子模块,用于将存储有与待存储数据具有相同数据类型的已存储的数据的存储区作为目标存储区;
第二目标存储区确定子模块,用于选择SMR磁盘中的一个空闲存储区确定为目标存储区。
在一些示例中,CMR区域包括:元数据区,元数据区中存储有各个已存储数据的存储区存储的数据的数据类型标识;第一数据类型确定模块1010,包括:
第一数据类型标识获取子模块,用于获取通过应用程序接口发送的待存储数据以及待存储数据的数据类型标识;
第一数据类型确定子模块,用于基于待存储数据的数据类型标识,确定待存储数据的数据类型;
判断子模块,具体用于:
基于各个已存储数据的存储区存储的数据的数据类型标识和待存储数据的数据类型标识,判断已存储数据的存储区中,是否存在存储有与待存储数据具有相同数据类型的已存储的数据的存储区。
在一些示例中,该数据存储装置,还可以包括:
查找模块,用于获取待存储数据的单元键,并在非SMR磁盘中查找是否存在与待存储数据具有相同单元键的数据库索引信息;如果存在,触发待删除信息确定模块;
待删除信息确定模块,用于基于与待存储数据具有相同单元键的数据库索引信息中的存储块的标识信息,确定待删除主索引信息;
第一删除模块,用于删除CMR区域中的待删除主索引信息。
在一些示例中,CMR区域包括:元数据区,该数据存储装置,还可以包括:
第一存储区确定模块,用于在接收到对SMR磁盘的清理指令时,基于元数据区中存储的SMR区域的分配存储量、存储区数量以及存储块分配存储量,确定SMR磁盘中可用存储块为0的第一存储区以及每个第一存储区中的存储块数量;
有效数据块数量确定模块,用于针对每个第一存储区,基于数据库索引信息和该第一存储区中的存储块数量,确定该第一存储区中的有效存储块数量,其中,有效存储块中存储的数据为有效数据;
待清理存储区确定模块,用于基于每个第一存储区中的有效存储块数量数据库索引信息,确定该第一存储区是否为待清理存储区,如果是,触发清理模块;
清理模块,用于对该待清理存储区进行重置清理。
在一些示例中,清理模块,可以包括:
第二数据类型确定模块,用于在待清理存储区中的有效存储块数量不为0时,确定待清理存储区中存储的待复制数据的数据类型;
目标粘贴存储区确定模块,用于基于SMR磁盘中除待重置存储区外的各个存储区中已存储的数据的数据类型,确定与待复制数据的数据类型相同的目标粘贴存储区;
目标粘贴存储块确定模块,用于在目标粘贴存储区中确定待粘贴待复制数据的目标粘贴存储块;
第三索引信息确定模块,用于基于目标粘贴存储块的标识,生成待复制数据的主索引信息以及备索引信息;
第四索引信息确定模块,用于基于待复制数据以及目标粘贴存储块的标识,生成待复制数据的数据库索引信息;
粘贴模块,用于复制有效存储块中的待复制数据,并将待复制数据的备索引信息和所复制的待复制数据写入目标粘贴存储块,将待复制数据的主索引信息写入CMR区域或非SMR磁盘,并将待复制数据的数据库索引信息写入非SMR磁盘。
在一些示例中,该数据存储装置,还可以包括:
第二删除模块,用于删除非SMR磁盘中,与待复制数据具有相同单元键的数据库索引信息。
在一些示例中,待存储数据包括视频数据和/或视频索引信息数据;
第一数据类型确定模块1010,具体用于:
在获取到视频数据时,确定视频数据的数据类型;和/或
在获取到视频索引数据时,确定视频索引数据的数据类型;
目标存储区确定模块1020,具体用于:
基于SMR磁盘中的各个存储区中已存储的数据的数据类型,确定与视频数据的数据类型相同的目标存储区;和/或
基于SMR磁盘中的各个存储区中已存储的数据的数据类型,确定与视频索引数据的数据类型相同的目标存储区。
本发明实施例还提供了一种电子设备,包括处理器1101、通信接口1102、存储器1103和通信总线1104,其中,处理器1101,通信接口1102,存储器1103通过通信总线1104完成相互间的通信;
存储器1103,用于存放计算机程序;
处理器1101,用于执行存储器1103上所存放的程序时,实现以下方法步骤:
在获取到待存储数据时,确定待存储数据的数据类型;
基于SMR磁盘中的各个存储区中已存储的数据的数据类型,确定与待存储数据的数据类型相同的目标存储区;
在目标存储区中确定待写入待存储数据的目标存储块;
基于目标存储块的标识,生成待存储数据的主索引信息以及备索引信息;
基于待存储数据以及目标存储块的标识,生成待存储数据的数据库索引信息;
将待存储数据的备索引信息和待存储数据写入目标存储块,将待存储数据的主索引信息写入CMR区域或非SMR磁盘,并将待存储数据的数据库索引信息写入非SMR磁盘。
本发明实施例提供的一种电子设备,在获取到待存储数据时,可以确定待存储数据的数据类型;然后可以基于SMR磁盘中的各个存储区中已存储的数据的数据类型,确定与待存储数据的数据类型相同的目标存储区;在目标存储区中确定待写入待存储数据的目标存储块;在确定出目标存储块后,可以基于目标存储块的标识,生成待存储数据的主索引信息以及备索引信息;基于待存储数据以及目标存储块的标识,生成待存储数据的数据库索引信息;最后,可以将待存储数据的备索引信息和待存储数据写入目标存储块,将待存储数据的主索引信息写入CMR区域或非SMR磁盘,并将待存储数据的数据库索引信息写入非SMR磁盘。这样,可以使得相同数据类型的数据,存储到同一个存储区;由于相同数据类型的数据,通常具有相同或相近的覆盖写入操作频率,因此,将具有相同或相近的覆盖写入操作的数据存储到同一个存储区中,以方便按照该数据的覆盖写入操作频率,对该存储区中产生的碎片进行及时回收,减少碎片量,进而可以提高SMR磁盘的存储资源利用率。
上述电子设备提到的通信总线1104可以是外设部件互连标准(PeripheralComponent Interconnect,PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口1102用于上述电子设备与其他设备之间的通信。
存储器1103可以包括随机存取存储器(Random Access Memory,RAM),也可以包括非易失性存储器(Non-Volatile Memory,NVM),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器1101可以是通用处理器,包括中央处理器(Central ProcessingUnit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(DigitalSignal Processing,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
本发明实施例还提供了一种计算机可读存储介质,该计算机可读存储介质内存储有计算机程序,计算机程序被处理器执行时实现以下方法步骤:
在获取到待存储数据时,确定待存储数据的数据类型;
基于SMR磁盘中的各个存储区中已存储的数据的数据类型,确定与待存储数据的数据类型相同的目标存储区;
在目标存储区中确定待写入待存储数据的目标存储块;
基于目标存储块的标识,生成待存储数据的主索引信息以及备索引信息;
基于待存储数据以及目标存储块的标识,生成待存储数据的数据库索引信息;
将待存储数据的备索引信息和待存储数据写入目标存储块,将待存储数据的主索引信息写入CMR区域或非SMR磁盘,并将待存储数据的数据库索引信息写入非SMR磁盘。
本发明实施例提供的一种计算机可读存储介质,在获取到待存储数据时,可以确定待存储数据的数据类型;然后可以基于SMR磁盘中的各个存储区中已存储的数据的数据类型,确定与待存储数据的数据类型相同的目标存储区;在目标存储区中确定待写入待存储数据的目标存储块;在确定出目标存储块后,可以基于目标存储块的标识,生成待存储数据的主索引信息以及备索引信息;基于待存储数据以及目标存储块的标识,生成待存储数据的数据库索引信息;最后,可以将待存储数据的备索引信息和待存储数据写入目标存储块,将待存储数据的主索引信息写入CMR区域或非SMR磁盘,并将待存储数据的数据库索引信息写入非SMR磁盘。这样,可以使得相同数据类型的数据,存储到同一个存储区;由于相同数据类型的数据,通常具有相同或相近的覆盖写入操作频率,因此,将具有相同或相近的覆盖写入操作的数据存储到同一个存储区中,以方便按照该数据的覆盖写入操作频率,对该存储区中产生的碎片进行及时回收,减少碎片量,进而可以提高SMR磁盘的存储资源利用率。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。

Claims (12)

1.一种数据存储方法,其特征在于,应用于叠瓦式磁记录SMR存储系统,所述SMR存储系统包括SMR磁盘及非SMR磁盘;所述SMR磁盘包括传统式磁记录CMR区域及SMR区域,所述SMR区域包括多个存储区,每个存储区逻辑划分为多个存储块;所述方法包括:
在获取到待存储数据时,确定所述待存储数据的数据类型;
基于所述SMR磁盘中的各个存储区中已存储的数据的数据类型,确定与所述待存储数据的数据类型相同的目标存储区;
在所述目标存储区中确定待写入所述待存储数据的目标存储块;
基于所述目标存储块的标识,生成所述待存储数据的主索引信息以及备索引信息;
基于所述待存储数据以及所述目标存储块的标识,生成所述待存储数据的数据库索引信息;
将所述待存储数据的备索引信息和所述待存储数据写入所述目标存储块,将所述待存储数据的主索引信息写入所述CMR区域或所述非SMR磁盘,并将所述待存储数据的数据库索引信息写入所述非SMR磁盘。
2.根据权利要求1所述的方法,其特征在于,所述基于所述SMR磁盘中的各个存储区中已存储的数据的数据类型,确定与所述待存储数据的数据类型相同的目标存储区的步骤,包括:
判断已存储数据的存储区中,是否存在存储有与所述待存储数据具有相同数据类型的已存储的数据的存储区;
如果存在,将所述存储有与所述待存储数据具有相同数据类型的已存储的数据的存储区作为所述目标存储区;
如果不存在,则选择所述SMR磁盘中的一个空闲存储区确定为目标存储区。
3.根据权利要求2所述的方法,其特征在于,所述CMR区域包括:元数据区,所述元数据区中存储有各个所述已存储数据的存储区存储的数据的数据类型标识;所述在获取到待存储数据时,确定所述待存储数据的数据类型的步骤,包括:
获取通过应用程序接口发送的待存储数据以及所述待存储数据的数据类型标识;
基于所述待存储数据的数据类型标识,确定所述待存储数据的数据类型;
所述判断已存储数据的存储区中,是否存在存储有与所述待存储数据具有相同数据类型的已存储的数据的存储区,包括:
基于所述各个所述已存储数据的存储区存储的数据的数据类型标识和所述待存储数据的数据类型标识,判断所述已存储数据的存储区中,是否存在存储有与所述待存储数据具有相同数据类型的已存储的数据的存储区。
4.根据权利要求1所述的方法,其特征在于,在所述将所述待存储数据的备索引信息和所述待存储数据写入所述目标存储块之前,所述方法还包括:
获取所述待存储数据的单元键,并在所述非SMR磁盘中查找是否存在与所述待存储数据具有相同单元键的数据库索引信息;
如果存在,基于与所述待存储数据具有相同单元键的数据库索引信息中的存储块的标识信息,确定待删除主索引信息;
删除所述CMR区域中的所述待删除主索引信息。
5.根据权利要求1所述的方法,其特征在于,所述CMR区域包括:元数据区,在所述将所述待存储数据的备索引信息和所述待存储数据写入所述目标存储块,将所述待存储数据的主索引信息写入所述CMR区域或所述非SMR磁盘,并将所述待存储数据的数据库索引信息写入所述非SMR磁盘之后,所述方法还包括:
在接收到对所述SMR磁盘的清理指令时,基于所述元数据区中存储的SMR区域的分配存储量、存储区数量以及存储块分配存储量,确定所述SMR磁盘中可用存储块为0的第一存储区以及每个所述第一存储区中的存储块数量;
针对每个所述第一存储区,基于所述数据库索引信息和该第一存储区中的存储块数量,确定该第一存储区中的有效存储块数量,其中,所述有效存储块中存储的数据为有效数据;
基于每个第一存储区中的有效存储块数量数据库索引信息,确定该第一存储区是否为待清理存储区,如果是,对该待清理存储区进行重置清理。
6.根据权利要求5所述的方法,其特征在于,所述对该待清理存储区进行重置清理,包括:
在所述待清理存储区中的有效存储块数量不为0时,确定所述待清理存储区中存储的待复制数据的数据类型;
基于所述SMR磁盘中除所述待重置存储区外的各个存储区中已存储的数据的数据类型,确定与所述待复制数据的数据类型相同的目标粘贴存储区;
在所述目标粘贴存储区中确定待粘贴所述待复制数据的目标粘贴存储块;
基于所述目标粘贴存储块的标识,生成所述待复制数据的主索引信息以及备索引信息;
基于所述待复制数据以及所述目标粘贴存储块的标识,生成所述待复制数据的数据库索引信息;
复制所述有效存储块中的待复制数据,并将所述待复制数据的备索引信息和所复制的所述待复制数据写入所述目标粘贴存储块,将所述待复制数据的主索引信息写入所述CMR区域或所述非SMR磁盘,并将所述待复制数据的数据库索引信息写入所述非SMR磁盘。
7.根据权利要求6所述的方法,其特征在于,在所述复制所述待重置存储块中的待复制数据之前,所述方法还包括:
删除所述非SMR磁盘中,与所述待复制数据具有相同单元键的数据库索引信息。
8.根据权利要求1所述的方法,其特征在于,所述待存储数据包括视频数据和/或视频索引信息数据;
所述在获取到待存储数据时,确定所述待存储数据的数据类型,包括:
在获取到所述视频数据时,确定所述视频数据的数据类型;和/或
在获取到所述视频索引数据时,确定所述视频索引数据的数据类型;
所述基于所述SMR磁盘中的各个存储区中已存储的数据的数据类型,确定与所述待存储数据的数据类型相同的目标存储区,包括:
基于所述SMR磁盘中的各个存储区中已存储的数据的数据类型,确定与所述视频数据的数据类型相同的目标存储区;和/或
基于所述SMR磁盘中的各个存储区中已存储的数据的数据类型,确定与所述视频索引数据的数据类型相同的目标存储区。
9.一种数据存储装置,其特征在于,应用于叠瓦式磁记录SMR存储系统,所述SMR存储系统包括SMR磁盘及非SMR磁盘;所述SMR磁盘包括传统式磁记录CMR区域及SMR区域,所述SMR区域包括多个存储区,每个存储区逻辑划分为多个存储块;所述装置包括:
第一数据类型确定模块,用于在获取到待存储数据时,确定所述待存储数据的数据类型;
目标存储区确定模块,用于基于所述SMR磁盘中的各个存储区中已存储的数据的数据类型,确定与所述待存储数据的数据类型相同的目标存储区;
目标存储块确定模块,用于在所述目标存储区中确定待写入所述待存储数据的目标存储块;
第一索引信息生成模块,用于基于所述目标存储块的标识,生成所述待存储数据的主索引信息以及备索引信息;
第二索引信息生成模块,用于基于所述待存储数据以及所述目标存储块的标识,生成所述待存储数据的数据库索引信息;
存储模块,用于将所述待存储数据的备索引信息和所述待存储数据写入所述目标存储块,将所述待存储数据的主索引信息写入所述CMR区域或所述非SMR磁盘,并将所述待存储数据的数据库索引信息写入所述非SMR磁盘。
10.根据权利要求9所述的装置,其特征在于,所述目标存储区确定模块,包括:
判断子模块,用于判断已存储数据的存储区中,是否存在存储有与所述待存储数据具有相同数据类型的已存储的数据的存储区;如果存在,触发第一目标存储区确定子模块,如果不存在,触发第二目标存储区确定子模块;
所述第一目标存储区确定子模块,用于将所述存储有与所述待存储数据具有相同数据类型的已存储的数据的存储区作为所述目标存储区;
所述第二目标存储区确定子模块,用于选择所述SMR磁盘中的一个空闲存储区确定为目标存储区。
11.根据权利要求10所述的装置,其特征在于,所述CMR区域包括:元数据区,所述元数据区中存储有各个所述已存储数据的存储区存储的数据的数据类型标识;第一数据类型确定模块,包括:
第一数据类型标识获取子模块,用于获取通过应用程序接口发送的待存储数据以及所述待存储数据的数据类型标识;
第一数据类型确定子模块,用于基于所述待存储数据的数据类型标识,确定所述待存储数据的数据类型;
所述判断子模块,具体用于:
基于所述各个所述已存储数据的存储区存储的数据的数据类型标识和所述待存储数据的数据类型标识,判断所述已存储数据的存储区中,是否存在存储有与所述待存储数据具有相同数据类型的已存储的数据的存储区。
12.一种SMR存储系统,其特征在于,所述SMR存储系统包括:SMR磁盘、非SMR磁盘及处理器,所述SMR磁盘包括CMR区域及SMR区域,所述SMR区域包括多个存储区,每个存储区逻辑划分为多个存储块;
所述存储块用于存储待存储数据及所述待存储数据的备索引信息;
所述CMR区域用于存储所述待存储数据的主索引信息;
所述非SMR磁盘用于存储所述待存储数据的数据库索引信息;
所述处理器用于在运行时执行上述权利要求1-8任一所述的数据存储方法。
CN201911181875.5A 2019-11-27 2019-11-27 数据存储方法、装置及存储系统 Active CN111399762B (zh)

Priority Applications (4)

Application Number Priority Date Filing Date Title
CN201911181875.5A CN111399762B (zh) 2019-11-27 2019-11-27 数据存储方法、装置及存储系统
PCT/CN2020/131816 WO2021104380A1 (zh) 2019-11-27 2020-11-26 数据存储方法、装置及存储系统
EP20894122.9A EP4068070A4 (en) 2019-11-27 2020-11-26 DATA STORAGE METHOD AND DEVICE AND STORAGE SYSTEM
US17/780,334 US11853549B2 (en) 2019-11-27 2020-11-26 Index storage in shingled magnetic recording (SMR) storage system with non-shingled region

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911181875.5A CN111399762B (zh) 2019-11-27 2019-11-27 数据存储方法、装置及存储系统

Publications (2)

Publication Number Publication Date
CN111399762A true CN111399762A (zh) 2020-07-10
CN111399762B CN111399762B (zh) 2021-06-18

Family

ID=71433960

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911181875.5A Active CN111399762B (zh) 2019-11-27 2019-11-27 数据存储方法、装置及存储系统

Country Status (4)

Country Link
US (1) US11853549B2 (zh)
EP (1) EP4068070A4 (zh)
CN (1) CN111399762B (zh)
WO (1) WO2021104380A1 (zh)

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112214169A (zh) * 2020-09-28 2021-01-12 深圳大学 一种数据存储装置及存储数据的迁移方法
CN112463051A (zh) * 2020-11-26 2021-03-09 苏州精控能源科技有限公司 一种电池存储系统的管理方法及数据存储方法
WO2021104380A1 (zh) * 2019-11-27 2021-06-03 杭州海康威视系统技术有限公司 数据存储方法、装置及存储系统
CN113190507A (zh) * 2021-05-14 2021-07-30 杭州海康威视数字技术股份有限公司 一种索引信息同步方法、装置及电子设备
CN113282582A (zh) * 2021-05-21 2021-08-20 海南超船电子商务有限公司 一种船位数据的高效存储方法及系统
CN113467723A (zh) * 2021-07-26 2021-10-01 浙江大华技术股份有限公司 一种数据存储方法、装置、设备及介质
CN113568582A (zh) * 2021-07-30 2021-10-29 重庆紫光华山智安科技有限公司 数据管理方法、装置和存储设备
WO2021249201A1 (zh) * 2020-06-10 2021-12-16 杭州海康威视数字技术股份有限公司 一种基于叠瓦式磁记录盘的监控数据存储方法及装置
CN114153394A (zh) * 2021-11-30 2022-03-08 浙江大华技术股份有限公司 一种数据存储管理方法、装置及设备
CN114237489A (zh) * 2020-09-09 2022-03-25 浙江宇视科技有限公司 将逻辑资源写入smr盘的方法、装置、电子设备及存储介质
CN114356851A (zh) * 2022-01-12 2022-04-15 北京字节跳动网络技术有限公司 数据文件的存储方法、装置、电子设备及存储介质
CN115576947A (zh) * 2022-10-19 2023-01-06 北京力控元通科技有限公司 一种数据管理方法、装置、组合库、电子设备及存储介质
CN115657950A (zh) * 2022-10-31 2023-01-31 深圳市时创意电子有限公司 一种基于多信道的数据读写处理方法、装置及相关设备
WO2023098641A1 (en) * 2021-11-30 2023-06-08 Zhejiang Dahua Technology Co., Ltd. Systems and methods for data storage in storage device
CN116303481A (zh) * 2023-05-22 2023-06-23 深圳市首航新能源股份有限公司 故障录波数据的存储方法、装置、设备及存储介质

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120303928A1 (en) * 2011-05-23 2012-11-29 Hitachi Global Storage Technologies Netherlands B. V. Implementing enhanced deterministic memory allocation for indirection tables for persistent media
CN104461390A (zh) * 2014-12-05 2015-03-25 华为技术有限公司 将数据写入叠瓦状磁记录smr硬盘的方法及装置
CN106201355A (zh) * 2016-07-12 2016-12-07 腾讯科技(深圳)有限公司 数据处理方法和装置以及存储系统
CN106548789A (zh) * 2015-09-17 2017-03-29 伊姆西公司 用于操作叠瓦式磁记录设备的方法和装置
US20170277438A1 (en) * 2016-03-22 2017-09-28 Kabushiki Kaisha Toshiba Method to efficiently store object data of an object storage service on a magnetic disk drive and magnetic smr disk drive
US20180018235A1 (en) * 2016-07-15 2018-01-18 Quantum Corporation Joint de-duplication-erasure coded distributed storage
CN108021513A (zh) * 2016-11-02 2018-05-11 杭州海康威视数字技术股份有限公司 一种数据存储方法及装置
CN108255408A (zh) * 2016-12-28 2018-07-06 中国电信股份有限公司 数据存储方法以及系统
CN110149803A (zh) * 2018-08-27 2019-08-20 深圳市锐明技术股份有限公司 数据存储方法、系统及终端设备
CN110502455A (zh) * 2018-05-18 2019-11-26 杭州海康威视数字技术股份有限公司 数据存储方法及系统

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11636031B2 (en) * 2011-08-11 2023-04-25 Pure Storage, Inc. Optimized inline deduplication
CN104216957A (zh) * 2014-08-20 2014-12-17 北京奇艺世纪科技有限公司 一种视频元数据的查询系统及查询方法
US20170124104A1 (en) * 2015-10-31 2017-05-04 Netapp, Inc. Durable file system for sequentially written zoned storage
CN108062200B (zh) * 2016-11-08 2019-12-20 杭州海康威视数字技术股份有限公司 一种磁盘数据读写方法及装置
US10446174B2 (en) * 2017-05-26 2019-10-15 Microsoft Technology Licensing, Llc File system for shingled magnetic recording (SMR)
US10381040B1 (en) * 2018-02-06 2019-08-13 Western Digital Technologies, Inc. Dynamic hybrid shingled magnetic recording device
CN109254733B (zh) 2018-09-04 2021-10-01 北京百度网讯科技有限公司 用于存储数据的方法、装置和系统
CN111399762B (zh) * 2019-11-27 2021-06-18 杭州海康威视系统技术有限公司 数据存储方法、装置及存储系统

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120303928A1 (en) * 2011-05-23 2012-11-29 Hitachi Global Storage Technologies Netherlands B. V. Implementing enhanced deterministic memory allocation for indirection tables for persistent media
CN104461390A (zh) * 2014-12-05 2015-03-25 华为技术有限公司 将数据写入叠瓦状磁记录smr硬盘的方法及装置
CN106548789A (zh) * 2015-09-17 2017-03-29 伊姆西公司 用于操作叠瓦式磁记录设备的方法和装置
US20170277438A1 (en) * 2016-03-22 2017-09-28 Kabushiki Kaisha Toshiba Method to efficiently store object data of an object storage service on a magnetic disk drive and magnetic smr disk drive
CN106201355A (zh) * 2016-07-12 2016-12-07 腾讯科技(深圳)有限公司 数据处理方法和装置以及存储系统
US20180018235A1 (en) * 2016-07-15 2018-01-18 Quantum Corporation Joint de-duplication-erasure coded distributed storage
CN108021513A (zh) * 2016-11-02 2018-05-11 杭州海康威视数字技术股份有限公司 一种数据存储方法及装置
CN108255408A (zh) * 2016-12-28 2018-07-06 中国电信股份有限公司 数据存储方法以及系统
CN110502455A (zh) * 2018-05-18 2019-11-26 杭州海康威视数字技术股份有限公司 数据存储方法及系统
CN110149803A (zh) * 2018-08-27 2019-08-20 深圳市锐明技术股份有限公司 数据存储方法、系统及终端设备

Cited By (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11853549B2 (en) 2019-11-27 2023-12-26 Hangzhou Hikvision System Technology Co., Ltd. Index storage in shingled magnetic recording (SMR) storage system with non-shingled region
WO2021104380A1 (zh) * 2019-11-27 2021-06-03 杭州海康威视系统技术有限公司 数据存储方法、装置及存储系统
WO2021249201A1 (zh) * 2020-06-10 2021-12-16 杭州海康威视数字技术股份有限公司 一种基于叠瓦式磁记录盘的监控数据存储方法及装置
CN114237489A (zh) * 2020-09-09 2022-03-25 浙江宇视科技有限公司 将逻辑资源写入smr盘的方法、装置、电子设备及存储介质
CN114237489B (zh) * 2020-09-09 2024-04-05 浙江宇视科技有限公司 将逻辑资源写入smr盘的方法、装置、电子设备及存储介质
CN112214169A (zh) * 2020-09-28 2021-01-12 深圳大学 一种数据存储装置及存储数据的迁移方法
CN112463051B (zh) * 2020-11-26 2023-12-29 苏州精控能源科技股份有限公司 一种电池存储系统的管理方法及数据存储方法
CN112463051A (zh) * 2020-11-26 2021-03-09 苏州精控能源科技有限公司 一种电池存储系统的管理方法及数据存储方法
WO2022110603A1 (zh) * 2020-11-26 2022-06-02 苏州精控能源科技有限公司 一种电池存储系统的管理方法及数据存储方法
CN113190507A (zh) * 2021-05-14 2021-07-30 杭州海康威视数字技术股份有限公司 一种索引信息同步方法、装置及电子设备
CN113190507B (zh) * 2021-05-14 2022-06-03 杭州海康威视数字技术股份有限公司 一种索引信息同步方法、装置及电子设备
CN113282582A (zh) * 2021-05-21 2021-08-20 海南超船电子商务有限公司 一种船位数据的高效存储方法及系统
CN113467723A (zh) * 2021-07-26 2021-10-01 浙江大华技术股份有限公司 一种数据存储方法、装置、设备及介质
CN113568582B (zh) * 2021-07-30 2023-05-26 重庆紫光华山智安科技有限公司 数据管理方法、装置和存储设备
CN113568582A (zh) * 2021-07-30 2021-10-29 重庆紫光华山智安科技有限公司 数据管理方法、装置和存储设备
WO2023098641A1 (en) * 2021-11-30 2023-06-08 Zhejiang Dahua Technology Co., Ltd. Systems and methods for data storage in storage device
CN114153394A (zh) * 2021-11-30 2022-03-08 浙江大华技术股份有限公司 一种数据存储管理方法、装置及设备
CN114356851A (zh) * 2022-01-12 2022-04-15 北京字节跳动网络技术有限公司 数据文件的存储方法、装置、电子设备及存储介质
CN115576947A (zh) * 2022-10-19 2023-01-06 北京力控元通科技有限公司 一种数据管理方法、装置、组合库、电子设备及存储介质
CN115657950A (zh) * 2022-10-31 2023-01-31 深圳市时创意电子有限公司 一种基于多信道的数据读写处理方法、装置及相关设备
CN116303481A (zh) * 2023-05-22 2023-06-23 深圳市首航新能源股份有限公司 故障录波数据的存储方法、装置、设备及存储介质
CN116303481B (zh) * 2023-05-22 2023-09-12 深圳市首航新能源股份有限公司 故障录波数据的存储方法、装置、设备及存储介质

Also Published As

Publication number Publication date
US11853549B2 (en) 2023-12-26
EP4068070A4 (en) 2023-01-25
WO2021104380A1 (zh) 2021-06-03
EP4068070A1 (en) 2022-10-05
CN111399762B (zh) 2021-06-18
US20220413706A1 (en) 2022-12-29

Similar Documents

Publication Publication Date Title
CN111399762B (zh) 数据存储方法、装置及存储系统
US10466932B2 (en) Cache data placement for compression in data storage systems
US9965394B2 (en) Selective compression in data storage systems
JP6304406B2 (ja) ストレージ装置、プログラム、情報処理方法
CN103098035B (zh) 存储系统
CN111506251B (zh) 数据处理方法、装置、smr存储系统及存储介质
US7774565B2 (en) Methods and apparatus for point in time data access and recovery
US8250033B1 (en) Replication of a data set using differential snapshots
CN102782683B (zh) 用于数据库服务器的缓冲池扩展
KR101447188B1 (ko) 플래시 메모리에 최적화된 입출력 제어 방법 및 장치
WO2016086819A1 (zh) 将数据写入叠瓦状磁记录smr硬盘的方法及装置
CN109496292B (zh) 一种磁盘管理方法、磁盘管理装置及电子设备
WO2019091085A1 (zh) 一种快照比对的方法和装置
US20110093437A1 (en) Method and system for generating a space-efficient snapshot or snapclone of logical disks
US20170123928A1 (en) Storage space reclamation for zoned storage
CN111651127B (zh) 一种基于叠瓦式磁记录盘的监控数据存储方法及装置
CN107665098B (zh) 信息处理方法、存储设备及计算机存储介质
US11169968B2 (en) Region-integrated data deduplication implementing a multi-lifetime duplicate finder
CN112131140A (zh) 基于ssd的支持高效存储空间管理的键值分离存储方法
CN115756317A (zh) 叠瓦式磁盘的存储方法、存储装置、电子设备及存储介质
JP2019028954A (ja) ストレージ制御装置、プログラム、及び重複排除方法
CN109144403B (zh) 一种用于云盘模式切换的方法与设备
CN111221468A (zh) 存储块数据删除方法、装置、电子设备及云存储系统
US11249666B2 (en) Storage control apparatus
CN114090538A (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
GR01 Patent grant
GR01 Patent grant