CN112306411B - 数据存储方法及装置、非易失性存储介质、处理器 - Google Patents

数据存储方法及装置、非易失性存储介质、处理器 Download PDF

Info

Publication number
CN112306411B
CN112306411B CN202011186482.6A CN202011186482A CN112306411B CN 112306411 B CN112306411 B CN 112306411B CN 202011186482 A CN202011186482 A CN 202011186482A CN 112306411 B CN112306411 B CN 112306411B
Authority
CN
China
Prior art keywords
storage
data
hard disk
user data
program
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
CN202011186482.6A
Other languages
English (en)
Other versions
CN112306411A (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.)
Xian Wanxiang Electronics Technology Co Ltd
Original Assignee
Xian Wanxiang Electronics 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 Xian Wanxiang Electronics Technology Co Ltd filed Critical Xian Wanxiang Electronics Technology Co Ltd
Priority to CN202011186482.6A priority Critical patent/CN112306411B/zh
Publication of CN112306411A publication Critical patent/CN112306411A/zh
Application granted granted Critical
Publication of CN112306411B publication Critical patent/CN112306411B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • G06F3/0631Configuration or reconfiguration of storage systems by allocating resources to storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • G06F3/0635Configuration or reconfiguration of storage systems by changing the path, e.g. traffic rerouting, path reconfiguration
    • 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/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE 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/00Energy efficient computing, e.g. low power processors, power management or thermal management

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)
  • Computer Networks & Wireless Communication (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种数据存储方法及装置、非易失性存储介质、处理器。其中,该方法包括:获取应用程序的程序文件数据和用户数据;采用第一存储规则存储上述程序文件数据,以及采用第二存储规则存储上述用户数据,其中,上述第一存储规则和第二存储规则依据不同的数据类型对应的存储策略确定。本发明解决了现有技术中将应用程序的所有存储数据不加区分的进行统一存储,导致存储资源浪费或者用户体验较差的技术问题。

Description

数据存储方法及装置、非易失性存储介质、处理器
技术领域
本发明涉及数据处理领域,具体而言,涉及一种数据存储方法及装置、非易失性存储介质、处理器。
背景技术
目前,在虚拟化场景中对应用程序进行数据存储时,都是将应用程序的所有存储数据不加区分的进行统一存储,这样会造成存储资源浪费或者用户体验较差。比如,如果将应用程序的所有存储数据保存到高速硬盘服务器上,因为读取速度快所以用户体验好,但是由于也在高速硬盘服务器上保存一些不常用的应用而导致高速硬盘服务器的硬件资源浪费增加硬件成本;如果将应用程序的所有存储数据保存到低速硬盘服务器上,虽然降低了硬件成本但是由于低速硬盘服务器的硬盘读取速度慢而导致应用程序的启动速度慢、等待启动时间长,进而用户体验较差。
针对上述的问题,目前尚未提出有效的解决方案。
发明内容
本发明实施例提供了一种数据存储方法及装置、非易失性存储介质、处理器,以至少解决现有技术中将应用程序的所有存储数据不加区分的进行统一存储,导致存储资源浪费或者用户体验较差的技术问题。
根据本发明实施例的一个方面,提供了一种数据存储方法,包括:获取应用程序的程序文件数据和用户数据;采用第一存储规则存储上述程序文件数据,以及采用第二存储规则存储上述用户数据,其中,上述第一存储规则和第二存储规则依据不同的数据类型对应的存储策略确定。
可选的,上述方法还包括:在首次安装上述应用程序时,生成上述应用程序的应用程序列表,其中,每个应用程序对应一个应用程序列表,上述应用程序列表用于记录上述应用程序的标识信息和运行属性、上述程序文件数据的第一存储位置、上述用户数据的第二存储位置;在上述应用程序列表中添加一条安装路径数据,其中,上述安装路径数据用于记录上述程序文件数据的初始安装路径。
可选的,采用第一存储规则存储上述程序文件数据,包括:获取上述程序文件数据的硬盘数据读取量,其中,默认上述应用程序的程序文件数据的初始安装位置为高速硬盘服务器;对比上述硬盘数据读取量与第一预设阈值的大小;如果上述硬盘数据读取量大于或等于上述第一预设阈值,则确定上述程序文件数据的第一存储位置为上述高速硬盘服务器;如果上述硬盘数据读取量小于上述第一预设阈值,则确定上述程序文件数据的第一存储位置为低速硬盘服务器,并将上述程序文件数据从上述高速硬盘服务器移动至低速硬盘服务器。
可选的,获取上述程序文件数据的硬盘数据读取量,包括:依据上述程序文件数据的应用程序列表在运行服务器上进行网络目录映射,生成当前应用记录;依据上述当前应用记录确定上述应用程序的运行属性;在确定上述运行属性为未运行时,在上述运行服务器上启动硬盘读取监控逻辑,以监控预定时段内上述程序文件数据对应的进程的硬盘数据读取量,并将上述运行属性更新为已运行。
可选的,将上述程序文件数据从上述高速硬盘服务器移动至低速硬盘服务器,包括:将上述高速硬盘服务器上的上述程序文件数据复制到上述低速硬盘服务器上;在复制完成之后暂时停止返回查询上述第一存储位置的响应结果,并依据上述低速硬盘服务器的IP地址和上述程序文件数据的存储路径,更新上述第一存储位置;释放返回查询上述第一存储位置的响应结果,以及删除上述高速硬盘服务器上的上述程序文件数据。
可选的,采用第二存储规则存储上述用户数据,包括:在每次存储上述用户数据时,判断上述用户数据的文件量;通过对比上述文件量与第二预设阈值的大小,确定上述用户数据的第二存储位置;依据上述第二存储位置存储上述用户数据。
可选的,确定上述用户数据的第二存储位置,包括:如果上述文件量大于或等于上述第二预设阈值,则确定上述用户数据的第二存储位置为高速硬盘服务器;如果上述文件量小于上述第二预设阈值,则确定上述第二存储位置为低速硬盘服务器。
可选的,依据上述第二存储位置存储上述用户数据,包括:查询上述应用程序的应用程序列表是否包含上述用户数据的存储记录,其中,上述存储记录用于记录上述用户数据的历史存储位置,上述历史存储位置包括:用于存储上述用户数据的硬盘服务器的IP地址和上述用户数据的存储路径;如果查询结果为包含上述存储记录,则检测上述第二存储位置与上述历史存储位置是否一致;如果检测到上述第二存储位置与上述历史存储位置一致,则仍将上述用户数据存储在上述历史存储位置;如果检测到上述第二存储位置与上述历史存储位置不一致,则将上述用户数据从上述历史存储位置迁移至上述第二存储位置,并更新上述存储记录。
可选的,如果上述查询结果为未包含上述存储记录,则在上述应用程序列表中添加上述存储记录。
可选的,将上述用户数据从上述历史存储位置迁移至上述第二存储位置,包括:将上述历史存储位置上的上述用户数据复制到上述第二存储位置上;在复制完成之后暂时停止返回查询上述历史存储位置的响应结果,并将上述历史存储位置更新为上述第二存储位置;释放返回查询上述第二存储位置的响应结果,以及删除上述历史存储位置上的上述用户数据。
根据本发明实施例的另一方面,还提供了一种数据存储装置,包括:获取模块,用于获取应用程序的程序文件数据和用户数据;存储模块,用于采用第一存储规则存储上述程序文件数据,以及采用第二存储规则存储上述用户数据,其中,上述第一存储规则和第二存储规则依据不同的数据类型对应的存储策略确定。
根据本发明实施例的另一方面,还提供了一种非易失性存储介质,上述非易失性存储介质存储有多条指令,上述指令适于由处理器加载并执行任意一项上述的数据存储方法。
根据本发明实施例的另一方面,还提供了一种处理器,上述处理器用于运行程序,其中,上述程序被设置为运行时执行任意一项上述的数据存储方法。
根据本发明实施例的另一方面,还提供了一种电子装置,包括存储器和处理器,上述存储器中存储有计算机程序,上述处理器被设置为运行上述计算机程序以执行任意一项上述的数据存储方法。
在本发明实施例中,通过获取应用程序的程序文件数据和用户数据;采用第一存储规则存储上述程序文件数据,以及采用第二存储规则存储上述用户数据,其中,上述第一存储规则和第二存储规则依据不同的数据类型对应的存储策略确定,达到了对应用程序的程序文件数据和用户数据进行分类存储的目的,从而实现了避免浪费存储资源浪费,提升用户体验的技术效果,进而解决了现有技术中将应用程序的所有存储数据不加区分的进行统一存储,导致存储资源浪费或者用户体验较差的技术问题。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本发明实施例的一种数据存储方法的流程图;
图2是根据本发明实施例的一种可选的实现数据存储的云端服务器的基本架构示意图;
图3是根据本发明实施例的一种可选的数据存储方法的流程图;
图4是根据本发明实施例的一种可选的数据存储方法的流程图;
图5是根据本发明实施例的一种数据存储装置的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
实施例1
根据本发明实施例,提供了一种数据存储方法实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
图1是根据本发明实施例的一种数据存储方法的流程图,如图1所示,该方法包括如下步骤:
步骤S102,获取应用程序的程序文件数据和用户数据;
步骤S104,采用第一存储规则存储上述程序文件数据,以及采用第二存储规则存储上述用户数据,其中,上述第一存储规则和第二存储规则依据不同的数据类型对应的存储策略确定。
在本发明实施例中,通过获取应用程序的程序文件数据和用户数据;采用第一存储规则存储上述程序文件数据,以及采用第二存储规则存储上述用户数据,其中,上述第一存储规则和第二存储规则依据不同的数据类型对应的存储策略确定,达到了对应用程序的程序文件数据和用户数据进行分类存储的目的,从而实现了避免浪费存储资源浪费,提升用户体验的技术效果,进而解决了现有技术中将应用程序的所有存储数据不加区分的进行统一存储,导致存储资源浪费或者用户体验较差的技术问题。
本申请实施例提供了一种虚拟化场景下的应用程序的数据存储方法,提供了一套完整的存储策略,能够将应用程序存储数据中的程序文件数据和用户数据根据其不同的数据特性进行分类存储制定不同的存储策略,分别得到第一存储规则和第二存储规则,并采用第一存储规则存储上述程序文件数据,以及采用第二存储规则存储上述用户数据,通过本申请实施例能够对程序文件数据和用户数据进行区分管理,从而合理利用高速硬盘服务器和低速硬盘服务器,实现在保证使用应用程序的用户体验的同时,对存储资源进行合理利用。
作为一种可选的实施例,对于应用程序存储数据中的程序文件数据和用户数据,根据两种数据各自的数据特性制定相应的存储规则,进而实现对程序文件数据和用户数据进行分类存储。
本申请实施例提供了一种虚拟化场景下的数据存储方案,本申请方案中云端服务器的基本架构如图2所示:
云端服务器中包括一个存储资源池;存储资源池中包括一个存储控制模块200,还包括两种类型的存储资源:高速硬盘服务器204和低速硬盘服务器202(或称为高速硬盘和低速硬盘),上述存储控制模块200用于对应用程序存储数据的存储过程进行统一调度,分别确定应用程序的程序文件数据和用户数据的存储位置。
基于上述数据存储方案,为了达到资源合理利用和分配的目的,在应用程序在启动时,首先需要将所需的程序文件数据从硬盘读取到内存中,这一过程的处理速度取决于硬盘服务器的类型,而高速硬盘服务器的读取速度高于低速硬盘服务器,但是,相应的高速硬盘服务器成本大于低速硬盘服务器;在应用程序运行过程中,当需要读取用户数据时,用户数据的大小则决定了读取的速度。因此,如果将大数据量文件保存在高速硬盘服务器上可以提高数据读取效率,而将小数据量文件在读取时本身耗时较短,保存在低速硬盘存储器上则可以节省硬盘资源。
在一种可选的实施例中,上述方法还包括:
步骤S202,在首次安装上述应用程序时,生成上述应用程序的应用程序列表,其中,每个应用程序对应一个应用程序列表,上述应用程序列表用于记录上述应用程序的标识信息和运行属性、上述程序文件数据的第一存储位置、上述用户数据的第二存储位置;
步骤S204,在上述应用程序列表中添加一条安装路径数据,其中,上述安装路径数据用于记录上述程序文件数据的初始安装路径。
可选的,所有程序文件数据初次存储的时候都默认存储在高速硬盘服务器上,初次存储完毕之后会在应用程序列表中记录当前应用程序的名称、存储程序文件的硬盘服务器的IP、程序文件的存储路径、是否运行过;以及在实际实现时,可以针对每一个应用程序,生成其应用程序列表,该列表中记录当前应用程序的标识信息(如名称、代码等等)、存储程序文件的硬盘服务器的IP和程序文件存储路径、是否运行过;还包括用户数据的存储位置信息,比如,针对每一条用户数据可以记录存储该数据的硬盘服务器的IP及该用户数据的存储路径。
可选的,在首次安装应用程序时,默认将应用程序的程序文件数据安装到高速硬盘服务器上,并在应用程序列表中插入一条数据用于记录程序文件数据的初始安装路径。
在一种可选的实施例中,图3是根据本发明实施例的一种可选的数据存储方法的流程图,如图3所示,采用第一存储规则存储上述程序文件数据,包括:
步骤S302,获取上述程序文件数据的硬盘数据读取量,其中,默认上述应用程序的程序文件数据的初始安装位置为高速硬盘服务器;
步骤S304,对比上述硬盘数据读取量与第一预设阈值的大小;
步骤S306,如果上述硬盘数据读取量大于或等于上述第一预设阈值,则确定上述程序文件数据的第一存储位置为上述高速硬盘服务器;如果上述硬盘数据读取量小于上述第一预设阈值,则确定上述程序文件数据的第一存储位置为低速硬盘服务器,并将上述程序文件数据从上述高速硬盘服务器移动至低速硬盘服务器。
在上述可选的实施例中,将监控到的硬盘数据读取量与预先设定的第一预设阈值(数据量阈值)进行比较大小,如果上述硬盘数据读取量大于或等于上述第一预设阈值,则确定上述程序文件数据的第一存储位置为上述高速硬盘服务器,由于程序文件数据默认存储在高速硬盘服务器中,则不需要移动当前程序文件数据的存储位置;如果上述硬盘数据读取量小于上述第一预设阈值,则确定上述程序文件数据的第一存储位置为低速硬盘服务器,并将上述程序文件数据从上述高速硬盘服务器移动至低速硬盘服务器。
在一种可选的实施例中,获取上述程序文件数据的硬盘数据读取量,包括:
步骤S402,依据上述程序文件数据的应用程序列表在运行服务器上进行网络目录映射,生成当前应用记录;
步骤S404,依据上述当前应用记录确定上述应用程序的运行属性;
步骤S406,在确定上述运行属性为未运行时,在上述运行服务器上启动硬盘读取监控逻辑,以监控预定时段内上述程序文件数据对应的进程的硬盘数据读取量,并将上述运行属性更新为已运行。
在上述可选的实施例中,当应用程序运行时,以应用程序列表中的“存储程序文件的硬盘服务器的IP地址”和“程序文件存储路径”为依据,在运行服务器上生成一个网络目录映射,生成当前应用记录。如果判断当前应用记录中“是否运行过”的运行属性为“没有”,则在运行服务器上启动硬盘读取监控逻辑,监控一分钟内该应用程序所对应的进程的硬盘数据读取量(默认所有应用程序采用高速硬盘服务器都会在一分钟内启动完毕),并将该当前应用记录中的“是否运行过”的运行属性更新为“运行过”。
在一种可选的实施例中,将上述程序文件数据从上述高速硬盘服务器移动至低速硬盘服务器,包括:
步骤S502,将上述高速硬盘服务器上的上述程序文件数据复制到上述低速硬盘服务器上;
步骤S504,在复制完成之后暂时停止返回查询上述第一存储位置的响应结果,并依据上述低速硬盘服务器的IP地址和上述程序文件数据的存储路径,更新上述第一存储位置;
步骤S506,释放返回查询上述第一存储位置的响应结果,以及删除上述高速硬盘服务器上的上述程序文件数据。
可选的,如果监控到的硬盘数据读取量大于等于第一预设阈值,则不用再移动当前程序文件(即针对运行时读取数据量大的应用程序,将其程序文件数据存储在高速硬盘服务器上),如果监控到的硬盘数据读取量小于第一预设阈值,则需要对程序文件数据进行“热移动”处理,即,通过“热移动”的方式将当前程序文件数据从高速硬盘服务器移动到低速硬盘服务器。
在本申请实施例中,“热移动”处理方式的具体实现是:比如,应用程序A,需要从高速硬盘上移动到低速硬盘上,那么,可以首先将应用程序A的程序文件数据从高速硬盘上复制到低速硬盘上,复制完之后暂时锁住应用程序列表中的程序文件存储位置记录(锁住之后查询动作阻塞不返回结果),更新应用程序列表中应用程序A的“程序文件存储硬盘服务器IP”和“程序文件存储路径”,将其修改为低速硬盘服务器的实际参数,然后释放对应用程序列表中程序文件存储位置记录的锁(释放锁之后就可以实时查询),最后删除高速硬盘上应用程序A的程序文件。
在一种可选的实施例中,图4是根据本发明实施例的一种可选的数据存储方法的流程图,如图4所示,采用第二存储规则存储上述用户数据,包括:
步骤S602,在每次存储上述用户数据时,判断上述用户数据的文件量;
步骤S604,通过对比上述文件量与第二预设阈值的大小,确定上述用户数据的第二存储位置;
步骤S606,依据上述第二存储位置存储上述用户数据。
作为一种可选的实施例,在每次保存用户数据的时候首先判断待保存的用户数据的文件量大小,通过对比上述文件量与第二预设阈值的大小,确定上述用户数据的第二存储位置;依据上述第二存储位置存储上述用户数据。
在一种可选的实施例中,确定上述用户数据的第二存储位置,包括:
步骤S702,如果上述文件量大于或等于上述第二预设阈值,则确定上述用户数据的第二存储位置为高速硬盘服务器;
步骤S704,如果上述文件量小于上述第二预设阈值,则确定上述第二存储位置为低速硬盘服务器。
在上述可选的实施例中,在将用户数据保存到高速硬盘服务器或低速硬盘服务器(即普通硬盘服务器)上,并在用户数据列表中插入一条数据用于记录该条用户数据的存储路径。
在一种可选的实施例中,依据上述第二存储位置存储上述用户数据,包括:
步骤S802,查询上述应用程序的应用程序列表是否包含上述用户数据的存储记录;
步骤S804,如果查询结果为包含上述存储记录,则检测上述第二存储位置与上述历史存储位置是否一致;
步骤S806,如果检测到上述第二存储位置与上述历史存储位置一致,则仍将上述用户数据存储在上述历史存储位置;如果检测到上述第二存储位置与上述历史存储位置不一致,则将上述用户数据从上述历史存储位置迁移至上述第二存储位置,并更新上述存储记录。
在上述可选的实施例中,上述存储记录用于记录上述用户数据的历史存储位置,上述历史存储位置包括:用于存储上述用户数据的硬盘服务器的IP地址和上述用户数据的存储路径。
在本申请实施例中,在确定当前用户数据的第二存储位置之后,查询上述应用程序的应用程序列表是否包含上述用户数据的存储记录;如果查询结果为包含上述存储记录,则检测上述第二存储位置与上述历史存储位置是否一致,如果检测到上述第二存储位置与上述历史存储位置一致,则仍将上述用户数据存储在上述历史存储位置;如果检测到上述第二存储位置与上述历史存储位置不一致,则将上述用户数据从上述历史存储位置迁移至上述第二存储位置,并更新上述存储记录。
例如,比较当前所确定的新的存储硬盘服务器与先前记录的硬盘服务器是否发生变更,如果没有发生变更,则不需要改变当前用户数据的存储位置;如果发生变更,则需要调整当前用户数据的存储位置,具体的,对当前用户数据进行热迁移(例如,从高速硬盘服务器迁移到低速硬盘服务器;或者,从低速硬盘服务器迁移到高速硬盘服务器)。
在一种可选的实施例中,如果上述查询结果为未包含上述存储记录,则在上述应用程序列表中添加上述存储记录。
在存储完成之后,如果是首次存储,则在当前应用程序列表中添加一条记录用于记录存储当前用户数据的硬盘服务器的IP地址,以及当前用户数据的存储路径;如果是进行了存储位置迁移,则在应用程序列表中对相应用户数据的存储位置信息进行更新。
在一种可选的实施例中,将上述用户数据从上述历史存储位置迁移至上述第二存储位置,包括:
步骤S902,将上述历史存储位置上的上述用户数据复制到上述第二存储位置上;
步骤S904,在复制完成之后暂时停止返回查询上述历史存储位置的响应结果,并将上述历史存储位置更新为上述第二存储位置;
步骤S906,释放返回查询上述第二存储位置的响应结果,以及删除上述历史存储位置上的上述用户数据。
作为一种可选的实施例,对用户数据进行热移动的具体实现方式可以但不限于为以下所示:比如,需要将用户数据1从低速硬盘上移动到高速硬盘上,那么,可以首先将用户数据1从低速硬盘上复制到高速硬盘上,复制完之后暂时锁住应用程序列表中的用户数据1存储位置记录(锁住之后查询动作阻塞不返回结果),更新应用程序列表中的“存储用户数据1的硬盘服务器IP”和“用户数据1的存储路径”,将其修改为高速硬盘服务器的实际参数,然后释放对应用列表中用户数据存储位置记录的锁(释放锁之后就可以实时查询),最后删除低速硬盘服务器上存储的用户数据1。
实施例2
根据本发明实施例,还提供了一种用于实施上述数据存储方法的装置实施例,图5是根据本发明实施例的一种数据存储装置的结构示意图,如图5所示,上述数据存储装置,包括:获取模块500和存储模块502,其中:
获取模块500,用于获取应用程序的程序文件数据和用户数据;存储模块502,用于采用第一存储规则存储上述程序文件数据,以及采用第二存储规则存储上述用户数据,其中,上述第一存储规则和第二存储规则依据不同的数据类型对应的存储策略确定。
需要说明的是,上述各个模块是可以通过软件或硬件来实现的,例如,对于后者,可以通过以下方式实现:上述各个模块可以位于同一处理器中;或者,上述各个模块以任意组合的方式位于不同的处理器中。
此处需要说明的是,上述获取模块500和存储模块502对应于实施例1中的步骤S102至步骤S104,上述模块与对应的步骤所实现的实例和应用场景相同,但不限于上述实施例1所公开的内容。需要说明的是,上述模块作为装置的一部分可以运行在计算机终端中。
需要说明的是,本实施例的可选或优选实施方式可以参见实施例1中的相关描述,此处不再赘述。
上述的数据存储装置还可以包括处理器和存储器,上述获取模块500和存储模块502等均作为程序单元存储在存储器中,由处理器执行存储在存储器中的上述程序单元来实现相应的功能。
处理器中包含内核,由内核去存储器中调取相应的程序单元,上述内核可以设置一个或以上。存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM),存储器包括至少一个存储芯片。
根据本申请实施例,还提供了一种非易失性存储介质的实施例。可选地,在本实施例中,上述非易失性存储介质包括存储的程序,其中,在上述程序运行时控制上述非易失性存储介质所在设备执行上述任意一种数据存储方法。
可选地,在本实施例中,上述非易失性存储介质可以位于计算机网络中计算机终端群中的任意一个计算机终端中,或者位于移动终端群中的任意一个移动终端中,上述非易失性存储介质包括存储的程序。
可选地,在程序运行时控制非易失性存储介质所在设备执行以下功能:获取应用程序的程序文件数据和用户数据;采用第一存储规则存储上述程序文件数据,以及采用第二存储规则存储上述用户数据,其中,上述第一存储规则和第二存储规则依据不同的数据类型对应的存储策略确定。
可选地,在程序运行时控制非易失性存储介质所在设备执行以下功能:在首次安装上述应用程序时,生成上述应用程序的应用程序列表,其中,每个应用程序对应一个应用程序列表,上述应用程序列表用于记录上述应用程序的标识信息和运行属性、上述程序文件数据的第一存储位置、上述用户数据的第二存储位置;在上述应用程序列表中添加一条安装路径数据,其中,上述安装路径数据用于记录上述程序文件数据的初始安装路径。
可选地,在程序运行时控制非易失性存储介质所在设备执行以下功能:获取上述程序文件数据的硬盘数据读取量,其中,默认上述应用程序的程序文件数据的初始安装位置为高速硬盘服务器;对比上述硬盘数据读取量与第一预设阈值的大小;如果上述硬盘数据读取量大于或等于上述第一预设阈值,则确定上述程序文件数据的第一存储位置为上述高速硬盘服务器;如果上述硬盘数据读取量小于上述第一预设阈值,则确定上述程序文件数据的第一存储位置为低速硬盘服务器,并将上述程序文件数据从上述高速硬盘服务器移动至低速硬盘服务器。
可选地,在程序运行时控制非易失性存储介质所在设备执行以下功能:依据上述程序文件数据的应用程序列表在运行服务器上进行网络目录映射,生成当前应用记录;依据上述当前应用记录确定上述应用程序的运行属性;在确定上述运行属性为未运行时,在上述运行服务器上启动硬盘读取监控逻辑,以监控预定时段内上述程序文件数据对应的进程的硬盘数据读取量,并将上述运行属性更新为已运行。
可选地,在程序运行时控制非易失性存储介质所在设备执行以下功能:将上述高速硬盘服务器上的上述程序文件数据复制到上述低速硬盘服务器上;在复制完成之后暂时停止返回查询上述第一存储位置的响应结果,并依据上述低速硬盘服务器的IP地址和上述程序文件数据的存储路径,更新上述第一存储位置;释放返回查询上述第一存储位置的响应结果,以及删除上述高速硬盘服务器上的上述程序文件数据。
可选地,在程序运行时控制非易失性存储介质所在设备执行以下功能:在每次存储上述用户数据时,判断上述用户数据的文件量;通过对比上述文件量与第二预设阈值的大小,确定上述用户数据的第二存储位置;依据上述第二存储位置存储上述用户数据。
可选地,在程序运行时控制非易失性存储介质所在设备执行以下功能:如果上述文件量大于或等于上述第二预设阈值,则确定上述用户数据的第二存储位置为高速硬盘服务器;如果上述文件量小于上述第二预设阈值,则确定上述第二存储位置为低速硬盘服务器。
可选地,在程序运行时控制非易失性存储介质所在设备执行以下功能:查询上述应用程序的应用程序列表是否包含上述用户数据的存储记录,其中,上述存储记录用于记录上述用户数据的历史存储位置,上述历史存储位置包括:用于存储上述用户数据的硬盘服务器的IP地址和上述用户数据的存储路径;如果查询结果为包含上述存储记录,则检测上述第二存储位置与上述历史存储位置是否一致;如果检测到上述第二存储位置与上述历史存储位置一致,则仍将上述用户数据存储在上述历史存储位置;如果检测到上述第二存储位置与上述历史存储位置不一致,则将上述用户数据从上述历史存储位置迁移至上述第二存储位置,并更新上述存储记录。
可选地,在程序运行时控制非易失性存储介质所在设备执行以下功能:如果上述查询结果为未包含上述存储记录,则在上述应用程序列表中添加上述存储记录。
可选地,在程序运行时控制非易失性存储介质所在设备执行以下功能:将上述历史存储位置上的上述用户数据复制到上述第二存储位置上;在复制完成之后暂时停止返回查询上述历史存储位置的响应结果,并将上述历史存储位置更新为上述第二存储位置;释放返回查询上述第二存储位置的响应结果,以及删除上述历史存储位置上的上述用户数据。
根据本申请实施例,还提供了一种处理器的实施例。可选地,在本实施例中,上述处理器用于运行程序,其中,上述程序运行时执行上述任意一种数据存储方法。
根据本申请实施例,还提供了一种电子装置的实施例,包括存储器和处理器,存储器中存储有计算机程序,处理器被设置为运行计算机程序以执行上述任意一种的数据存储方法。
根据本申请实施例,还提供了一种计算机程序产品的实施例,当在数据处理设备上执行时,适于执行初始化有上述任意一种的数据存储方法步骤的程序。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如单元的划分,可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取非易失性存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个非易失性存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例方法的全部或部分步骤。而前述的非易失性存储介质包括:U盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

Claims (11)

1.一种数据存储方法,其特征在于,包括:
获取应用程序的程序文件数据和用户数据;
采用第一存储规则存储所述程序文件数据,以及采用第二存储规则存储所述用户数据,其中,所述第一存储规则和第二存储规则依据不同的数据类型对应的存储策略确定,采用第一存储规则存储所述程序文件数据,包括:获取所述程序文件数据的硬盘数据读取量,其中,默认所述应用程序的程序文件数据的初始安装位置为高速硬盘服务器;对比所述硬盘数据读取量与第一预设阈值的大小;如果所述硬盘数据读取量大于或等于所述第一预设阈值,则确定所述程序文件数据的第一存储位置为所述高速硬盘服务器;如果所述硬盘数据读取量小于所述第一预设阈值,则确定所述程序文件数据的第一存储位置为低速硬盘服务器,并将所述程序文件数据从所述高速硬盘服务器移动至低速硬盘服务器,采用第二存储规则存储所述用户数据,包括:在每次存储所述用户数据时,判断所述用户数据的文件量;通过对比所述文件量与第二预设阈值的大小,确定所述用户数据的第二存储位置;依据所述第二存储位置存储所述用户数据,确定所述用户数据的第二存储位置,包括:如果所述文件量大于或等于所述第二预设阈值,则确定所述用户数据的第二存储位置为高速硬盘服务器;如果所述文件量小于所述第二预设阈值,则确定所述第二存储位置为低速硬盘服务器。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在首次安装所述应用程序时,生成所述应用程序的应用程序列表,其中,每个应用程序对应一个应用程序列表,所述应用程序列表用于记录所述应用程序的标识信息和运行属性、所述程序文件数据的第一存储位置、所述用户数据的第二存储位置;
在所述应用程序列表中添加一条安装路径数据,其中,所述安装路径数据用于记录所述程序文件数据的初始安装路径。
3.根据权利要求1所述的方法,其特征在于,获取所述程序文件数据的硬盘数据读取量,包括:
依据所述程序文件数据的应用程序列表在运行服务器上进行网络目录映射,生成当前应用记录;
依据所述当前应用记录确定所述应用程序的运行属性;
在确定所述运行属性为未运行时,在所述运行服务器上启动硬盘读取监控逻辑,以监控预定时段内所述程序文件数据对应的进程的硬盘数据读取量,并将所述运行属性更新为已运行。
4.根据权利要求1所述的方法,其特征在于,将所述程序文件数据从所述高速硬盘服务器移动至低速硬盘服务器,包括:
将所述高速硬盘服务器上的所述程序文件数据复制到所述低速硬盘服务器上;
在复制完成之后暂时停止返回查询所述第一存储位置的响应结果,并依据所述低速硬盘服务器的IP地址和所述程序文件数据的存储路径,更新所述第一存储位置;
释放返回查询所述第一存储位置的响应结果,以及删除所述高速硬盘服务器上的所述程序文件数据。
5.根据权利要求1所述的方法,其特征在于,依据所述第二存储位置存储所述用户数据,包括:
查询所述应用程序的应用程序列表是否包含所述用户数据的存储记录,其中,所述存储记录用于记录所述用户数据的历史存储位置,所述历史存储位置包括:用于存储所述用户数据的硬盘服务器的IP地址和所述用户数据的存储路径;
如果查询结果为包含所述存储记录,则检测所述第二存储位置与所述历史存储位置是否一致;
如果检测到所述第二存储位置与所述历史存储位置一致,则仍将所述用户数据存储在所述历史存储位置;如果检测到所述第二存储位置与所述历史存储位置不一致,则将所述用户数据从所述历史存储位置迁移至所述第二存储位置,并更新所述存储记录。
6.根据权利要求5所述的方法,其特征在于,
如果所述查询结果为未包含所述存储记录,则在所述应用程序列表中添加所述存储记录。
7.根据权利要求6所述的方法,其特征在于,将所述用户数据从所述历史存储位置迁移至所述第二存储位置,包括:
将所述历史存储位置上的所述用户数据复制到所述第二存储位置上;
在复制完成之后暂时停止返回查询所述历史存储位置的响应结果,并将所述历史存储位置更新为所述第二存储位置;
释放返回查询所述第二存储位置的响应结果,以及删除所述历史存储位置上的所述用户数据。
8.一种数据存储装置,其特征在于,包括:
获取模块,用于获取应用程序的程序文件数据和用户数据;
存储模块,用于采用第一存储规则存储所述程序文件数据,以及采用第二存储规则存储所述用户数据,其中,所述第一存储规则和第二存储规则依据不同的数据类型对应的存储策略确定,采用第一存储规则存储所述程序文件数据,包括:获取所述程序文件数据的硬盘数据读取量,其中,默认所述应用程序的程序文件数据的初始安装位置为高速硬盘服务器;对比所述硬盘数据读取量与第一预设阈值的大小;如果所述硬盘数据读取量大于或等于所述第一预设阈值,则确定所述程序文件数据的第一存储位置为所述高速硬盘服务器;如果所述硬盘数据读取量小于所述第一预设阈值,则确定所述程序文件数据的第一存储位置为低速硬盘服务器,并将所述程序文件数据从所述高速硬盘服务器移动至低速硬盘服务器,采用第二存储规则存储所述用户数据,包括:在每次存储所述用户数据时,判断所述用户数据的文件量;通过对比所述文件量与第二预设阈值的大小,确定所述用户数据的第二存储位置;依据所述第二存储位置存储所述用户数据,确定所述用户数据的第二存储位置,包括:如果所述文件量大于或等于所述第二预设阈值,则确定所述用户数据的第二存储位置为高速硬盘服务器;如果所述文件量小于所述第二预设阈值,则确定所述第二存储位置为低速硬盘服务器。
9.一种非易失性存储介质,其特征在于,所述非易失性存储介质存储有多条指令,所述指令适于由处理器加载并执行权利要求1至7中任意一项所述的数据存储方法。
10.一种处理器,其特征在于,所述处理器用于运行程序,其中,所述程序被设置为运行时执行权利要求1至7中任意一项所述的数据存储方法。
11.一种电子装置,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行权利要求1至7中任意一项所述的数据存储方法。
CN202011186482.6A 2020-10-29 2020-10-29 数据存储方法及装置、非易失性存储介质、处理器 Active CN112306411B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011186482.6A CN112306411B (zh) 2020-10-29 2020-10-29 数据存储方法及装置、非易失性存储介质、处理器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011186482.6A CN112306411B (zh) 2020-10-29 2020-10-29 数据存储方法及装置、非易失性存储介质、处理器

Publications (2)

Publication Number Publication Date
CN112306411A CN112306411A (zh) 2021-02-02
CN112306411B true CN112306411B (zh) 2023-08-25

Family

ID=74332301

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011186482.6A Active CN112306411B (zh) 2020-10-29 2020-10-29 数据存储方法及装置、非易失性存储介质、处理器

Country Status (1)

Country Link
CN (1) CN112306411B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112948440A (zh) * 2021-03-09 2021-06-11 北京小米移动软件有限公司 页面数据的处理方法及装置、终端、存储介质
CN115543921A (zh) * 2021-06-10 2022-12-30 华为技术有限公司 一种文件管理的方法、装置、设备和系统
CN114661249B (zh) * 2022-05-26 2022-09-27 深圳高灯计算机科技有限公司 数据存储方法、装置、计算机设备和存储介质

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007213473A (ja) * 2006-02-13 2007-08-23 Nippon Telegr & Teleph Corp <Ntt> 不揮発性記憶装置を用いるデータ処理装置およびデータ処理方法
CN101073070A (zh) * 2004-08-24 2007-11-14 塞门铁克操作公司 提供数据存储器内位置的修改历史的系统和方法
CN101431558A (zh) * 2007-11-09 2009-05-13 中国移动通信集团公司 移动终端数据控制的方法和一种移动终端
KR20120025639A (ko) * 2010-09-06 2012-03-16 현택영 사용자 데이터 관리서버 및 운용방법, 사용자 단말기 및 이를 위한 프로그램을 기록한 컴퓨터로 판독 가능한 기록매체
CN104461590A (zh) * 2013-09-17 2015-03-25 联想(北京)有限公司 一种信息处理方法及电子设备
CN104808953A (zh) * 2015-05-07 2015-07-29 广东欧珀移动通信有限公司 控制数据存储的方法、装置及移动终端
CN106126275A (zh) * 2016-06-16 2016-11-16 北京金山安全软件有限公司 移动终端中应用程序数据的控制方法、装置以及移动终端
CN109284435A (zh) * 2018-03-28 2019-01-29 北京航空航天大学 面向互联网的用户交互痕迹捕获、存储和检索的系统及方法
CN110941436A (zh) * 2019-11-11 2020-03-31 Oppo(重庆)智能科技有限公司 应用程序的数据存储方法、装置、存储介质与终端设备

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101073070A (zh) * 2004-08-24 2007-11-14 塞门铁克操作公司 提供数据存储器内位置的修改历史的系统和方法
JP2007213473A (ja) * 2006-02-13 2007-08-23 Nippon Telegr & Teleph Corp <Ntt> 不揮発性記憶装置を用いるデータ処理装置およびデータ処理方法
CN101431558A (zh) * 2007-11-09 2009-05-13 中国移动通信集团公司 移动终端数据控制的方法和一种移动终端
KR20120025639A (ko) * 2010-09-06 2012-03-16 현택영 사용자 데이터 관리서버 및 운용방법, 사용자 단말기 및 이를 위한 프로그램을 기록한 컴퓨터로 판독 가능한 기록매체
CN104461590A (zh) * 2013-09-17 2015-03-25 联想(北京)有限公司 一种信息处理方法及电子设备
CN104808953A (zh) * 2015-05-07 2015-07-29 广东欧珀移动通信有限公司 控制数据存储的方法、装置及移动终端
CN106126275A (zh) * 2016-06-16 2016-11-16 北京金山安全软件有限公司 移动终端中应用程序数据的控制方法、装置以及移动终端
CN109284435A (zh) * 2018-03-28 2019-01-29 北京航空航天大学 面向互联网的用户交互痕迹捕获、存储和检索的系统及方法
CN110941436A (zh) * 2019-11-11 2020-03-31 Oppo(重庆)智能科技有限公司 应用程序的数据存储方法、装置、存储介质与终端设备

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
桌面虚拟化中用户数据与操作系统分离的研究;赵红飞;《万方数据库》;20141230;全文 *

Also Published As

Publication number Publication date
CN112306411A (zh) 2021-02-02

Similar Documents

Publication Publication Date Title
CN112306411B (zh) 数据存储方法及装置、非易失性存储介质、处理器
US20160117211A1 (en) Error troubleshooting using a correlated knowledge base
CN108021590B (zh) 一种目标对象属性确定方法、属性更新方法及装置
CN107807797B (zh) 数据写入的方法、装置及服务器
CN107040576B (zh) 信息推送方法及装置、通讯系统
US9921827B1 (en) Developing versions of applications based on application fingerprinting
CN110515795A (zh) 一种大数据组件的监控方法、装置、电子设备
CN108475201A (zh) 一种虚拟机启动过程中的数据获取方法和云计算系统
CN110716924B (zh) 删除过期数据的方法和装置
CN111666184B (zh) 固态驱动器ssd硬盘测试方法、装置及电子设备
CN111784468B (zh) 一种账户关联方法、装置及电子设备
CN110019178A (zh) 数据的关联方法及装置
CN112363980B (zh) 一种分布式系统的数据处理方法及装置
CN112685329B (zh) 用于处理数据的方法及相关装置
CN111381745B (zh) 页面切换方法、装置、设备
CN107357717A (zh) 检测配置错误的方法、装置及设备
CN109992468B (zh) 一种进程性能分析方法、装置、系统及计算机存储介质
CN106528658B (zh) 应用文件的查找方法及装置
CN115129789A (zh) 一种分布式对象存储系统的桶索引存储方法、装置及介质
CN113987378A (zh) 一种页面渲染时长监控方法、装置、电子设备及存储介质
CN114185659A (zh) 一种任务恢复方法、装置、电子设备及存储介质
CN114416689A (zh) 数据迁移方法、装置、计算机设备、存储介质
CN110968467A (zh) 一种gpu和算法的远程自动测试方法
CN112783751A (zh) 一种增量代码扫描方法、装置、电子设备和存储介质
CN117632953B (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