CN118093596B - 一种面向异构存储的冷热数据管理方法和*** - Google Patents
一种面向异构存储的冷热数据管理方法和*** Download PDFInfo
- Publication number
- CN118093596B CN118093596B CN202410466941.8A CN202410466941A CN118093596B CN 118093596 B CN118093596 B CN 118093596B CN 202410466941 A CN202410466941 A CN 202410466941A CN 118093596 B CN118093596 B CN 118093596B
- Authority
- CN
- China
- Prior art keywords
- data
- partition
- storage
- storage device
- copy
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 48
- 238000013523 data management Methods 0.000 title claims abstract description 41
- 238000005192 partition Methods 0.000 claims abstract description 154
- 230000005012 migration Effects 0.000 claims abstract description 49
- 238000013508 migration Methods 0.000 claims abstract description 49
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 18
- 238000004364 calculation method Methods 0.000 claims description 29
- 238000012544 monitoring process Methods 0.000 claims description 17
- 230000008859 change Effects 0.000 claims description 8
- 230000008569 process Effects 0.000 claims description 8
- 238000013507 mapping Methods 0.000 claims description 6
- 230000008602 contraction Effects 0.000 claims description 5
- 230000002085 persistent effect Effects 0.000 claims description 5
- 238000000926 separation method Methods 0.000 claims description 4
- 238000007619 statistical method Methods 0.000 claims description 4
- 238000001816 cooling Methods 0.000 abstract description 7
- 238000010438 heat treatment Methods 0.000 abstract description 3
- 238000012423 maintenance Methods 0.000 abstract description 3
- 230000015654 memory Effects 0.000 description 7
- 238000013500 data storage Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 238000004590 computer program Methods 0.000 description 3
- 238000007726 management method Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 206010035148 Plague Diseases 0.000 description 1
- 241000607479 Yersinia pestis Species 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000004888 barrier function Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000002045 lasting effect Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000008439 repair process Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000010792 warming Methods 0.000 description 1
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种面向异构存储的冷热数据管理方法和***,采用以下步骤对冷热数据进行管理:以表为粒度,每个表的数据以对象存储的形式存放在独立的数据桶中;每个数据桶包含多个分区,数据以随机的方式分布在各个分区中,分区数据的副本通过分布式共识算法来保证一致性;统计一个数据桶中各个分区的访问频率,当一个分区访问频率达到设定的阈值时,以分布式共识算法中成员变更的方式在目标存储介质上添加新副本,并在新旧副本完成数据同步后,删除旧副本,以此来实现分区数据在不同存储介质上的迁移,进行数据的降冷和升温。本发明的方法和***能够最大化高性能存储介质的使用效率;同时保证了用户访问效率,且能降低数据迁移和维护成本。
Description
技术领域
本发明涉及数据存储和治理领域,具体涉及一种面向异构存储介质的冷热数据管理方法和***。
背景技术
随着企业产生的数据规模的增长,如何对海量数据进行高效存储,在保证业务不受影响的情况下尽可能的降低数据存储成本,是目前每个企业重点关注的问题。目前主流的存储格式包括块存储、文件存储、对象存储等,而对象存储以其优秀的横向扩容能力和经济高效的存储格式,消除了困扰传统存储***的复杂性、容量限制和成本障碍,已越来越多地成为人工智能、数据湖、云原生应用等场景下的存储解决方案。
考虑到真实业务场景中数据的访问频次往往有很大的差别,对于那些最近产生的数据或热点历史数据往往访问频率较高,这些热数据应该存储在高速存储介质上以提供高速的访问速度;而对于一些过期的历史数据则基本不会访问,这些冷数据应该存储在低速存储介质上以降低存储成本。
目前的数据管理***在数据量和数据访问性能等方面有了很大的进步,但大都缺乏对底层不同性能异构存储介质的高效管理和利用,不能够很好地结合实际业务的数据特征和异构存储介质来降低数据管理成本。
公开号为CN109857737A的中国发明专利公开了一种冷热数据存储方法及装置、电子设备,其方法包括:将热数据库中的热数据备份至冷数据库;其中,热数据库用于存储热数据,冷数据库用于存储冷数据;热数据为目标时长内数据访问频率大于或等于预设访问频率的数据,冷数据为目标时长内数据访问频率小于预设访问频率的数据;判断热数据库中是否存在转变为冷数据的目标热数据;若存在目标热数据,将该目标热数据从热数据库中删除。该方法虽然能在一定程度上实现冷热数据的管理,但依然存在如下问题:
1)其数据存储是基于两个数据库***来实现的,要维护两个数据库***间数据的一致性,需要付出额外的成本且较难以实现。
2)对用户(应用程序)来说,数据的冷热迁移是能够被感知到的,且用户在访问数据时需要先知道到热数据库还是冷数据库中去获取数据,从而降低了访问效率,影响用户体验。
发明内容
针对上述背景,本发明提出了一种面向异构存储介质的冷热数据管理方法和***,能够实现分区数据在不同存储介质上的迁移,进行数据的降冷和升温,从而最大化高性能存储介质的使用效率;同时在保证***存储规模和性能的前提下,保证了用户访问效率,且能有效降低数据转移和维护成本。
为实现上述目的,本发明采用的技术方案如下:
本发明的第一个方面提供一种面向异构存储的冷热数据管理方法,包括:
建立配置了异构存储设备的集群节点,所述异构存储设备包括高速存储设备和低速存储设备,在各节点的启动配置文件中配置存储目录列表并标记各目录的设备类型标签;
根据应用场景在计算层创建数据表,并配置存储参数,所述存储参数至少包括数据桶副本数、分区数和冷热数据的访问频率阈值,同时在存储层的集群节点上创建与所述数据表关联的数据桶;
通过计算层接口向所述数据表写入数据,并将写入完成的数据表文件发送到存储层,以对象存储的形式存放在对应数据桶所在节点的异构存储设备中;
存储层基于所述存储参数触发并执行分区迁移任务,以分布式共识算法中成员变更的方式在目标存储设备上添加新副本,并在新旧副本完成数据同步后,删除旧副本;所述分区迁移任务包括将目标分区的数据从高速存储设备迁移至低速存储设备,或者从低速存储设备迁移至高速存储设备。
在一些实施例中,对于新写入的数据,默认为热数据,对应的数据桶分区存放在高速存储设备对应的挂载目录中。
在一些实施例中,所述的存储层基于所述存储参数触发并执行分区迁移任务包括:
实时统计各个数据桶分区预设时间内被访问的频率;
当一个分区在预设时间内访问频率达到冷数据访问频率阈值,且该分区数据位于高速存储设备目录时,触发分区迁移任务,将该分区从高速存储设备目录迁移到低速存储设备目录;
当一个分区在预设时间内访问频率达到热数据访问频率阈值,且该分区数据位于低速存储设备目录时,触发分区迁移任务,将该分区从低速存储设备目录迁移到高速存储设备目录。
在一些实施例中,分区迁移任务的执行过程中,该分区设为只读,该分区所属数据桶的其他分区仍可读可写,且基于该数据桶的数据表仍然可读可写。
在一些实施例中,执行分区迁移任务时,在满足存储设备类型和可用容量大小的存储设备目录中,优先选择与当前分区的存储设备目录同节点的目标存储设备目录;当源设备目录和目的设备目录在同一个节点上时,在进程内部通过本地磁盘IO完成数据的迁移拷贝,避免网络IO带来的开销和时延。
在一些实施例中,所述的将写入完成的数据表文件发送到存储层,以对象存储的形式存放在对应数据桶所在节点的异构存储设备中包括:
根据对象文件的路径生成一个ID,然后从对应数据桶中可读可写的分区列表中随机挑选一个分区将该对象文件写入到该分区的存储设备目录中;
写入完成后,将对象文件路径到ID的映射、ID到数据分区的映射,以及对象文件在分区内部的字节偏移量作为元数据信息进行持久化存储;
对该对象文件进行读取时,首先查询元数据,根据文件路径得到ID,然后根据ID得到具体的分区以及分区内部的字节偏移,进行文件的访问。
在一些实施例中,各个分区的数据基于所述存储参数配置的副本数创建副本存储,各副本之间通过分布式共识算法保证一致性。
在一些实施例中,所述的以分布式共识算法中成员变更的方式在目标存储设备上添加新副本,并在新旧副本完成数据同步后,删除旧副本包括:
基于分布式共识算法的成员变更特性,添加位于目标存储设备目录的新副本到分区的复制组中;
触发分区副本数据修复任务,将新加入副本的数据状态修复到与旧副本一致;
基于分布式共识算法的成员变更特性,将位于源存储设备目录的旧副本移出分区的复制组,并删除旧副本数据。
本发明的第二个方面提供一种面向异构存储介质的冷热数据管理***,采用分布式的存算分离架构,包括配置有计算引擎模块的计算层和配置有存储引擎模块的存储层;
所述计算引擎模块以数据表为单位对存储层的数据进行统计分析,每个数据表都对应存储引擎模块的一个数据桶;所述计算引擎模块根据数据量和计算负载进行动态的扩缩容操作;
所述存储引擎模块配置有监控组件,所述监控组件用于监测预设时间内各个分区的访问频率,并基于冷热数据的访问频率阈值触发分区迁移任务;所述存储引擎模块基于分布式的对象存储,按照上述本发明第一个方面所述的方法,利用集群节点上不同类型的存储设备对存储层存储的数据进行管理。
本发明的有益技术效果如下:
1)本发明提出的面向异构存储介质的冷热数据管理方法和***,可以根据用户的应用场景和数据访问频率,充分利用集群节点中不同性能的存储设备,对冷热数据进行管理。在满足特定存储容量、访问速度等条件下,尽可能降低硬件成本。
2)本发明提出的面向异构存储介质的冷热数据管理方法和***,是在一个数据库中实现的,避免了维护两个数据库***间数据一致性的问题,且仅在存储层进行数据的迁移,使用数据库的应用由计算层对接,感知不到数据迁移的过程,具有更好的用户体验。
3)本发明提出的面向异构存储介质的冷热数据管理方法和***,采用分布式架构,包括配置有计算引擎模块的计算层和配置有存储引擎模块的存储层,可以根据数据量和计算任务负载的变化,分别针对计算资源和存储资源进行扩缩容操作,动态调整***规模。
4)本发明提出的面向异构存储介质的冷热数据管理方法和***,通过监控组件统计数据的访问频率,并自动完成冷热数据在不同存储介质上的数据迁移,能够大幅度降低***的运维成本。
5)本发明提出的面向异构存储介质的冷热数据管理方法和***,以数据桶中的分区为粒度,同时支持数据的降冷和升温操作,可以解决某些历史数据降冷后突然又被频繁访问所带来的性能问题。
附图说明
图1是本发明提出的面向异构存储介质的冷热数据管理方法实施例的流程示意图。
图2是本发明提出的面向异构存储介质的冷热数据管理***实施例的模块示意图。
图3是本发明提出的面向异构存储介质的冷热数据管理方法实施例中,数据分区在不同存储介质目录间迁移前的示意图。
图4是本发明提出的面向异构存储介质的冷热数据管理方法实施例中,数据分区在不同存储介质目录间的迁移过程示意图。
图5是本发明提出的面向异构存储介质的冷热数据管理方法实施例中,数据分区在不同存储介质目录间迁移完成后的示意图。
具体实施方式
下面将参照附图更详细地描述本发明的实施例。虽然附图中显示了本发明的某些实施例,然而应当理解的是,本发明可以通过各种形式来实现,而且不应该被解释为限于这里阐述的实施例。相反,提供这些实施例是为了更加透彻和完整地理解本发明。应当理解的是,本发明的附图及实施例仅用于示例性作用,并非用于限制本发明的保护范围。
实施例1
本实施例公开一种面向异构存储介质的冷热数据管理方法,包括:
建立配置了异构存储设备的集群节点,所述异构存储设备包括高速存储设备和低速存储设备,在各节点的启动配置文件中配置存储目录列表并标记各目录的设备类型标签;
根据应用场景在计算层创建数据表,并配置存储参数,所述存储参数至少包括数据桶副本数、分区数和冷热数据的访问频率阈值,同时在存储层的集群节点上创建与所述数据表关联的数据桶;
通过计算层接口向所述数据表写入数据,并将写入完成的数据表文件发送到存储层,以对象存储的形式存放在对应数据桶所在节点的异构存储设备中;
存储层基于所述存储参数触发并执行分区迁移任务,以分布式共识算法中成员变更的方式在目标存储设备上添加新副本,并删除旧副本;所述分区迁移任务包括将目标分区的数据从高速存储设备迁移至低速存储设备,或者从低速存储设备迁移至高速存储设备。
下面结合附图1对本实施例的方法进行详细说明。如图1所示,在一个具体示例中,该方法的流程包括:
步骤1.初始化数据管理***。在存储层建立配置了异构存储设备的集群节点,其中异构存储设备包括但不限于读写性能不一致的高速存储设备(如固态硬盘)和低速存储设备(如机械硬盘)。将存储设备格式化并挂载到相应的操作***存储目录。在数据管理***各节点的启动配置文件中配置存储目录列表并标记各目录的设备类型标签。
步骤2.创建数据表。数据管理***启动后,根据具体应用场景在计算层创建数据表,并配置数据桶副本数、分区数、冷热数据的访问频率阈值等存储参数,同时在存储层的集群节点上创建与之关联的数据桶。
优选的,新创建数据桶的各个分区会优先分布到存储资源使用率较低节点的高速存储介质目录上。
步骤3.向表中写入数据。应用通过计算层提供的接口向数据表中写入数据,首先在计算层生成数据文件,在数据文件达到一定大小或者一次写操作结束时将数据文件发送到存储层,作为一个热数据对象写入到对应数据桶所在节点的异构存储设备中。
优选的,在向数据桶写入对象数据时,首先会根据对象文件的路径生成一个ID,然后从可读可写的分区列表中随机挑选出一个分区负责该对象文件的存储。对象文件成功写入到分区的高速存储设备目录后,会将对象文件路径到ID的映射、ID到数据分区的映射、对象文件在分区内部的字节偏移量等作为元数据信息进行持久化存储。后续对该文件进行读取时,首先查询元数据,根据文件路径得到ID,然后根据ID得到具体的分区以及分区内部的字节偏移等,从而进行文件的访问。
步骤4.存储层上配置的监控组件统计各个数据桶分区的访问频率。上层应用对表数据进行读写访问时,监控组件会实时记录各个数据桶分区的访问操作,并根据用户设置的分区迁移检测间隔设置定时任务,周期性地统计各个数据桶分区的访问频率并尝试触发分区迁移任务。
步骤5.当定时任务超时时,首先判断***是否正常运行,如果***已经关闭,则监控组件退出执行,否则统计各个分区在一定时间段内的访问频率。
例如用户可以配置1个月内分区数据被访问0次为冷数据阈值,1天内分区数据被访问超过10次或10分钟内分区数据被访问超过100次为热数据阈值。此时监控组件会分别统计每个分区1个月内、1天内、10分钟内的访问次数。如果各个分区访问频率均没有达到阈值,则监控组件进入下一次循环。否则尝试触发异步的分区迁移任务。
步骤6.尝试触发分区数据降冷任务。当一个分区在配置时间内访问频率达到冷数据阈值时,监控组件会尝试触发分区数据降冷任务。
首先查看该分区数据是否位于高速存储设备目录,如果不是则停止分区数据的迁移。然后选择符合剩余空间大小的低速存储设备目录作为目标目录,此时会优先选择与当前分区目录同节点的低速存储介质目录,在进程内部通过本地磁盘IO完成数据的迁移拷贝,避免网络IO带来的开销和时延。然后将当前分区设置为只读模式,此时该分区所属数据桶的其他分区仍然是可读可写的,因此分区在不同存储介质目录间的迁移不会阻塞整个存储桶的正常读写请求。
最后触发异步分区迁移任务,进入下一次循环。当异步分区迁移任务结束时会将迁移到低速存储设备上的分区重新设置为可读可写。
步骤7.尝试触发分区数据升温任务。与步骤6类似,当一个分区在配置时间内访问频率达到热数据阈值时,监控组件会尝试触发分区数据升温任务。
首先查看该分区数据是否位于低速存储设备目录,如果不是则停止分区数据的迁移。
然后选择符合剩余空间大小的高速存储设备目录作为目标目录,此时会优先选择与当前分区目录同节点的高速存储设备目录。然后将当前分区设置只读模式。
最后触发异步分区迁移任务,进入下一次循环。当异步分区迁移任务结束时会将迁移到高速存储设备上的分区重新设置为可读可写。
实施例2
本实施例公开一种面向异构存储介质的冷热数据管理***,采用分布式的存算分离架构,包括配置有计算引擎模块的计算层和配置有存储引擎模块的存储层;
计算引擎模块以数据表为单位对存储层的数据进行统计分析,每个数据表都对应存储引擎模块的一个数据桶;计算引擎模块根据数据量和计算负载进行动态的扩缩容操作;
存储引擎模块配置有监控组件,监控组件用于监测预设时间内各个分区的访问频率,并基于冷热数据的访问频率阈值触发分区迁移任务;存储引擎模块基于分布式的对象存储,按照上述实施例1中所述的方法,利用集群节点上不同类型的存储设备对存储层存储的数据进行管理。
参见附图2,在一个具体示例中,该***部署于由至少6个节点组成的集群节点上,其中,节点1、节点2和节点3分别配置有计算引擎模块构成计算层,节点4、节点5和节点6分别配置有不同类型的存储设备(包括高速存储设备SSD和低速存储设备HDD)构成存储层,形成分布式的存算分离架构。需要说明的是,本发明的冷热数据管理***中,计算引擎模块和存储引擎模块可以位于同一个节点,也可以位于不同节点,本示出示例不构成限定。
其中,计算引擎模块基于大规模并行处理技术,充分利用分布式集群节点的处理器、内存等资源,对存储层的数据进行统计分析。存储引擎模块基于分布式对象存储技术,合理利用集群节点的异构存储介质,对数据进行安全高效的持久化存储。
本实施例中,计算引擎模块是无状态的,不需要对数据状态进行持久化,可以根据应用的数据量和计算负载变化进行内存、CPU等资源的扩缩容操作。存储引擎模块以对象存储的形式对数据进行存储,数据以分区为单位,采用基于存储资源利用率的放置策略,数据分区优先放置在存储资源空闲的节点上。当***存储容量达到上限后,可以在避免数据移动的情况下实现存储容量的扩容操作。
本实施例中的冷热数据管理***,以表为单位对数据进行管理。计算引擎模块的每个数据表都对应存储引擎模块的一个数据桶。***通过计算层的逻辑表结构向用户应用暴露读写接口,用户应用无法直接操作存储层的数据桶。在向数据表中写入数据时,首先在计算引擎模块生成数据文件,在数据文件达到一定大小或者一次写操作结束时会将数据文件发送到存储引擎模块,数据文件作为一个热数据对象在存储模块对应数据桶的某个分区中进行多副本存储。
数据桶的分区基于分布式共识算法来保证各个数据副本的一致性,每个分区都会有一个主副本,其他副本为从副本。当向一个分区写入数据时,首先会将数据持久化到主副本的日志中,然后主副本将日志发送到其他从副本进行持久化存储。当分区中有半数以上的副本将数据日志持久化存储后,***才会确认数据写入成功。该机制可以保证只要一半以上的副本可用,该分区就可以正常提供服务。
当分区数据在不同存储设备目录间迁移时,首先基于分布式共识算法的成员变更特性,添加位于目标存储设备目录的新副本到分区的复制组中。然后触发分区副本数据修复任务,将新加入副本的数据状态修复到与旧副本一致。然后再基于分布式共识算法的成员变更特性,将位于源存储设备目录的旧副本移出分区的复制组,并删除旧副本数据。以此来实现分区数据在不同存储设备目录间的迁移。
实施例3
本实施例公开了本发明的面向异构存储介质的冷热数据管理方法和***中,数据分区在不同存储设备目录间迁移的详细流程示例。
参见图3至图5,以一个数据表为例,其存储内容为:
ID | Name | Conutry |
1 | Jax | USA |
2 | Morphes | UK |
3 | Smith | USA |
… | … | … |
该数据表在存储层对应的数据桶包含了3个分区。其中分区1(包括p1-1、p1-2、p1-3三个副本)和分区3(包括p3-1、p3-2、p3-3三个副本)为热数据(示为红色),存储在例如SSD这样的高速存储设备上;分区2(包括p2-1、p2-2、p2-3三个副本)为冷数据(示为灰色),存储在例如HDD这样的低速存储设备上。现在监控组件触发了分区1的降冷任务,执行如下步骤:
步骤1.选择新副本所在的低速存储设备目录。如图3所示,分区1的第一个副本(p1-1)在节点1的SSD目录中,其选择同节点的HDD目录作为迁移目标目录。第二个副本(p1-2)在节点2的SSD目录中,由于节点2的HDD目录空间不足,选择节点1的HDD目录作为迁移目标目录。第三个副本(p1-3)在节点2的SSD目录中,选择同节点的HDD目录作为迁移目标目录。
步骤2.将分区1标记为只读。
步骤3.如图4所示,基于步骤1选出的三个低速存储设备目录,创建三个新的副本(灰色标识的p1-1、p1-2、p1-3),并基于分布式共识算法的成员变更特性添加到分区1的复制组中。此时分区1有6个副本。新副本添加后会触发副本修复任务。
步骤4.等待分区1复制组中的6个副本状态达到一致。此时新加入的三个副本会分别接收来自其他三个旧副本的数据并恢复到与之一致的状态。在修复过程中,p1-1,p1-3两个副本的数据不需要跨网络传输,p1-2副本的数据需要跨网络传输。
步骤5.如图5所示,基于分布式共识算法的成员变更特性,将位于高速存储设备目录的三个旧副本移出分区1的复制组,并删除三个旧副本中的数据。最后将分区1标记为可读可写的状态。
采用上述方案,可有效降低迁移过程中冷热数据在不同节点之间的传输量,降低迁移时间,提高数据管理效率并降低管理成本。
实施例4
本实施例公开一种电子装置,包括存储器和处理器,存储器存储计算机程序,计算机程序被配置为由所述处理器执行,计算机程序包括用于执行本发明公开的冷热数据管理方法的指令。
需要说明的是,本申请实施例的方法可以由单个设备执行,例如一台计算机或服务器等。本实施例的方法也可以应用于分布式场景下,由多台设备相互配合来完成。在这种分布式场景的情况下,这多台设备中的一台设备可以只执行本申请实施例的方法中的某一个或多个步骤,这多台设备相互之间会进行交互以完成所述的方法。
实施例5
本实施例公开一种计算机可读存储介质,所述计算机可读存储介质存储计算机程序,所述计算机程序被计算机执行时,实现公开的冷热数据管理方法。
需要说明的是,上述对本申请的一些实施例进行了描述,其它未公开的实施例也含在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于上述实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
所属领域的普通技术人员应当理解:以上任何实施例的讨论仅为示例性的,并非旨在暗示本申请的范围(包括权利要求)被限于这些例子;在本申请的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,步骤可以以任意顺序实现,并存在如上所述的本申请实施例的不同方面的许多其它变化,为了简明它们没有在细节中提供。
本申请实施例旨在涵盖落入所附权利要求的宽泛范围之内的所有这样的替换、修改和变型。因此,凡在本申请实施例的精神和原则之内,所做的任何省略、修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (9)
1.一种面向异构存储的冷热数据管理方法,其特征在于,包括:
建立配置了异构存储设备的集群节点,所述异构存储设备包括高速存储设备和低速存储设备,在各节点的启动配置文件中配置存储目录列表并标记各目录的设备类型标签;
根据应用场景在计算层创建数据表,并配置存储参数,所述存储参数至少包括数据桶副本数、分区数和冷热数据的访问频率阈值,同时在存储层的集群节点上创建与所述数据表关联的数据桶;
通过计算层接口向所述数据表写入数据,并将写入完成的数据表文件发送到存储层,以对象存储的形式存放在对应数据桶所在节点的异构存储设备中;
存储层基于所述存储参数触发并执行分区迁移任务,以分布式共识算法中成员变更的方式在目标存储设备上添加新副本,并在新旧副本完成数据同步后,删除旧副本;所述分区迁移任务包括将目标分区的数据从高速存储设备迁移至低速存储设备,或者从低速存储设备迁移至高速存储设备。
2.如权利要求1所述的面向异构存储的冷热数据管理方法,其特征在于,对于新写入的数据,默认为热数据,对应的数据桶分区存放在高速存储设备对应的挂载目录中。
3.如权利要求1所述的面向异构存储的冷热数据管理方法,其特征在于,所述的存储层基于所述存储参数触发并执行分区迁移任务包括:
实时统计各个数据桶分区预设时间内被访问的频率;
当一个分区在预设时间内访问频率达到冷数据访问频率阈值,且该分区数据位于高速存储设备目录时,触发分区迁移任务,将该分区从高速存储设备目录迁移到低速存储设备目录;
当一个分区在预设时间内访问频率达到热数据访问频率阈值,且该分区数据位于低速存储设备目录时时,触发分区迁移任务,将该分区从低速存储设备目录迁移到高速存储设备目录。
4.如权利要求3所述的面向异构存储的冷热数据管理方法,其特征在于,分区迁移任务的执行过程中,该分区设为只读,该分区所属数据桶的其他分区仍可读可写,且基于该数据桶的数据表仍然可读可写。
5.如权利要求3所述的面向异构存储的冷热数据管理方法,其特征在于,执行分区迁移任务时,在满足存储设备类型和可用容量大小的存储设备目录中,优先选择与当前分区的存储设备目录同节点的目标存储设备目录;当源设备目录和目的设备目录在同一个节点上时,在进程内部通过本地磁盘IO完成数据的迁移拷贝。
6.如权利要求1所述的面向异构存储的冷热数据管理方法,其特征在于,所述的将写入完成的数据表文件发送到存储层,以对象存储的形式存放在对应数据桶所在节点的异构存储设备中包括:
根据对象文件的路径生成一个ID,然后从对应数据桶中可读可写的分区列表中随机挑选一个分区将该对象文件写入到该分区的存储设备目录中;
写入完成后,将对象文件路径到ID的映射、ID到数据分区的映射,以及对象文件在分区内部的字节偏移量作为元数据信息进行持久化存储;
对该对象文件进行读取时,首先查询元数据,根据文件路径得到ID,然后根据ID得到具体的分区以及分区内部的字节偏移,进行文件的访问。
7.如权利要求1所述的面向异构存储的冷热数据管理方法,其特征在于,各个分区的数据基于所述存储参数配置的副本数创建副本存储,各副本之间通过分布式共识算法保证一致性。
8.如权利要求1所述的面向异构存储的冷热数据管理方法,其特征在于,所述的以分布式共识算法中成员变更的方式在目标存储设备上添加新副本,并在新旧副本完成数据同步后,删除旧副本包括:
基于分布式共识算法的成员变更特性,添加位于目标存储设备目录的新副本到分区的复制组中;
触发分区副本数据修复任务,将新加入副本的数据状态修复到与旧副本一致;
基于分布式共识算法的成员变更特性,将位于源存储设备目录的旧副本移出分区的复制组,并删除旧副本数据。
9.一种面向异构存储介质的冷热数据管理***,其特征在于,采用分布式的存算分离架构,包括配置有计算引擎模块的计算层和配置有存储引擎模块的存储层;
所述计算引擎模块以数据表为单位对存储层的数据进行统计分析,每个数据表中的数据最终会持久化到存储引擎模块对应的数据桶中;所述计算引擎模块根据数据量和计算负载进行动态的扩缩容操作;
所述存储引擎模块配置有监控组件,所述监控组件用于监测预设时间内各个分区的访问频率,并基于冷热数据的访问频率阈值触发分区迁移任务;所述存储引擎模块基于分布式的对象存储,按照权利要求1-8任一项所述的方法,利用集群节点上不同类型的存储设备对存储层存储的数据进行管理。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410466941.8A CN118093596B (zh) | 2024-04-18 | 2024-04-18 | 一种面向异构存储的冷热数据管理方法和*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410466941.8A CN118093596B (zh) | 2024-04-18 | 2024-04-18 | 一种面向异构存储的冷热数据管理方法和*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN118093596A CN118093596A (zh) | 2024-05-28 |
CN118093596B true CN118093596B (zh) | 2024-07-05 |
Family
ID=91142260
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410466941.8A Active CN118093596B (zh) | 2024-04-18 | 2024-04-18 | 一种面向异构存储的冷热数据管理方法和*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN118093596B (zh) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110765192A (zh) * | 2019-10-18 | 2020-02-07 | 广东省城乡规划设计研究院 | 一种基于云平台的gis数据管理及处理方法 |
CN113377868A (zh) * | 2021-06-16 | 2021-09-10 | 浪潮卓数大数据产业发展有限公司 | 一种基于分布式kv数据库的离线存储*** |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2445279A (en) * | 2006-12-27 | 2008-07-02 | Yaron Mayer | System and method for improving the efficiency, comfort and/or reliability in operating systems. |
CN113901024A (zh) * | 2021-09-26 | 2022-01-07 | Oppo广东移动通信有限公司 | 数据存储***、数据存储方法、可读介质和电子设备 |
CN116226128A (zh) * | 2023-03-01 | 2023-06-06 | 湖南兴盛优选网络科技有限公司 | 以对象存储为冷存储的olap引擎冷热分离优化方法 |
CN117435132A (zh) * | 2023-10-20 | 2024-01-23 | 浪潮软件科技有限公司 | 大数据平台冷热数据自动分层存储方法及智能存储*** |
-
2024
- 2024-04-18 CN CN202410466941.8A patent/CN118093596B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110765192A (zh) * | 2019-10-18 | 2020-02-07 | 广东省城乡规划设计研究院 | 一种基于云平台的gis数据管理及处理方法 |
CN113377868A (zh) * | 2021-06-16 | 2021-09-10 | 浪潮卓数大数据产业发展有限公司 | 一种基于分布式kv数据库的离线存储*** |
Also Published As
Publication number | Publication date |
---|---|
CN118093596A (zh) | 2024-05-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6371859B2 (ja) | 分散格納システムにおけるセッション管理 | |
JP6371858B2 (ja) | 複数エクステント動作のための原子書き込み | |
JP6259532B2 (ja) | 分散格納システムにおける名前空間管理 | |
JP6322722B2 (ja) | 可変ストライプサイズを使用するファイル格納 | |
JP6416279B2 (ja) | 拡張縮小可能なファイル格納サービス | |
CN102523279B (zh) | 一种分布式文件***及其热点文件存取方法 | |
CN105549905A (zh) | 一种多虚拟机访问分布式对象存储***的方法 | |
CN109947363B (zh) | 一种分布式存储***的数据缓存方法 | |
CN111124301A (zh) | 一种对象存储设备的数据一致性存储方法及*** | |
CN114860163B (zh) | 一种存储***、内存管理方法和管理节点 | |
WO2019085769A1 (zh) | 一种数据分层存储、分层查询方法及装置 | |
CN113672175A (zh) | 分布式对象存储方法、装置和设备及计算机存储介质 | |
CN110134338B (zh) | 一种分布式存储***及其数据冗余保护方法和相关设备 | |
CN103516549B (zh) | 一种基于共享对象存储的文件***元数据日志机制 | |
CN113901024A (zh) | 数据存储***、数据存储方法、可读介质和电子设备 | |
JP2016529629A (ja) | 分散データグリッドにおいてデータを同期させるためにパーティションレベルジャーナリングをサポートするためのシステムおよび方法 | |
CN111984191A (zh) | 一种支持分布式存储的多客户端缓存方法及*** | |
CN102104494B (zh) | 元数据服务器、带外网络文件***及其处理方法 | |
JP2021144748A (ja) | 分散型ブロックストレージシステム、方法、装置、デバイス、及び媒体 | |
CN105760391B (zh) | 数据动态重分布的方法、数据节点、名字节点及*** | |
CN113449065A (zh) | 一种面向数据删重的去中心化存储方法及存储装置 | |
CN112379825B (zh) | 基于数据特征分池的分布式数据存储方法及装置 | |
US10802748B2 (en) | Cost-effective deployments of a PMEM-based DMO system | |
CN118093596B (zh) | 一种面向异构存储的冷热数据管理方法和*** | |
CN110018879A (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 |