CN110134332B - 一种数据存储方法及相关装置 - Google Patents

一种数据存储方法及相关装置 Download PDF

Info

Publication number
CN110134332B
CN110134332B CN201910348682.8A CN201910348682A CN110134332B CN 110134332 B CN110134332 B CN 110134332B CN 201910348682 A CN201910348682 A CN 201910348682A CN 110134332 B CN110134332 B CN 110134332B
Authority
CN
China
Prior art keywords
data
storage
server
storage cluster
size
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
CN201910348682.8A
Other languages
English (en)
Other versions
CN110134332A (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.)
Ping An Technology Shenzhen Co Ltd
Original Assignee
Ping An Technology Shenzhen 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 Ping An Technology Shenzhen Co Ltd filed Critical Ping An Technology Shenzhen Co Ltd
Priority to CN201910348682.8A priority Critical patent/CN110134332B/zh
Publication of CN110134332A publication Critical patent/CN110134332A/zh
Priority to PCT/CN2019/102734 priority patent/WO2020220535A1/zh
Application granted granted Critical
Publication of CN110134332B publication Critical patent/CN110134332B/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/0604Improving or facilitating administration, e.g. storage 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/0638Organizing or formatting or addressing of data
    • G06F3/064Management of blocks
    • 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
    • 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]

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)
  • Information Transfer Between Computers (AREA)

Abstract

本发明实施例公开了一种数据存储方法及相关装置,包括:服务器接收第一客户端发送的数据存储请求,所述数据存储请求携带第一数据和所述第一数据的大小A,所述服务器获取第一存储集群的剩余存储空间大小B,所述服务器确认所述第一数据的大小A超出所述第一存储集群的剩余存储空间大小B;所述服务器按照第一预设算法进行扩容处理,以得到第二存储集群;所述服务器对所述第一数据进行处理,并将处理后得到的数据按照第二预设算法分别存储至所述第一存储集群和所述第二存储集群;所述服务器发送存储成功的消息至所述第一客户端。采用该手段,提升了存储效率,且保障了数据存储的秩序性。

Description

一种数据存储方法及相关装置
技术领域
本发明涉及计算机技术领域,尤其涉及一种数据存储方法及相关装置。
背景技术
现在的分布式存储系统的数据存储层往往采用各类哈希方法进行数据分布,在数据规模不断扩大需要扩容的时候,无论是常见的哈希方式,还是一致性哈希方式,都需要进行大规模的数据迁移,这样造成了所需的时间、带宽和人力等各类的巨大成本。
发明内容
本申请实施例提供一种数据存储方法及相关装置,能够避免数据迁移,提升存储效率。
本申请实施例的第一方面提供了一种数据存储方法,包括:
服务器接收第一客户端发送的数据存储请求,所述数据存储请求携带第一数据和所述第一数据的大小A,其中,A为正数;
所述服务器获取第一存储集群的剩余存储空间大小B,其中,B为正数;
所述服务器确认所述第一数据的大小A超出所述第一存储集群的剩余存储空间大小B;
所述服务器按照第一预设算法进行扩容处理,以得到第二存储集群;
所述服务器对所述第一数据进行处理,并将处理后得到的数据按照第二预设算法分别存储至所述第一存储集群和所述第二存储集群;
所述服务器发送存储成功的消息至所述第一客户端。
优选的,所述服务器获取所述B与A之间的比值C;
所述服务器确认所述C是否小于第一阈值;
若所述C小于所述第一阈值,则所述服务器生成所述第二存储集群,其中,所述第二存储集群的存储空间大小为D,D为正数,且A≤D≤A+B;
若所述C不小于所述第一阈值,则所述服务器生成所述第二存储集群,其中,所述第二存储集群的存储空间大小为E,E为正数,且A-B≤E≤A。
优选的,所述服务器确认所述第一存储集群的剩余存储空间大小B和所述第二存储集群的存储空间大小是否均不小于A/2;
若是,则所述服务器将所述第一数据平均分割为M份数据段;
所述服务器将所述M份数据段按照先后顺序进行排序标号,以得到M份待存储数据段;
所述服务器将所述M份待存储数据段中标号为奇数的待存储数据段依次存储至所述第一存储集群,并将所述M份待存储数据段中标号为偶数的待存储数据段依次存储至所述第二存储集群。
优选的,若所述第一存储集群的剩余存储空间大小B和所述第二存储集群的存储空间大小并不同时满足均不小于A/2,则所述服务器将所述第一数据分割为第二数据和第三数据,其中,所述第二数据的大小为B,所述第三数据的大小为A-B;
所述服务器将所述第二数据存储至所述第一存储集群,并将所述第三数据存储至所述第二存储集群。
优选的,所述服务器获取所述第一数据中的N个重复字段,其中,N为正整数;
所述服务器确认所述N个重复字段中的N’个字段中每个字段在所述第一数据中出现的次数均超出预设阈值,其中,N’为正整数;
所述服务器获取所述N’个字段;
所述服务器根据预设数据重要等级与字段的对应的关系,确认所述N’个字段所对应的数据重要等级;
所述服务器确认所述数据重要等级超出预设数据重要等级;
所述服务器将所述第一数据进行备份。
优选的,所述数据存储请求还携带所述第一数据的数据类型,若所述第一数据的数据类型为视频,则所述服务器获取所述视频的第一重要情节处于所述第一数据中的时间段;
所述服务器按照所述第一重要情节所处的时间段将所述第一数据分割为第一初始数据段、第二初始数据段和第三初始数据段,其中,所述初始第一数据段对应所述第一重要情节;
所述服务器获取所述第二初始数据段和所述第三初始数据段分别处于所述数据中的时间段;
所述服务器对所述第一初始数据段、第二初始数据段和所述第三初始数据段分别添加标识,以得到第一数据段、第二数据段和第三数据段,其中,所述标识分别携带所述第一初始数据段、第二初始数据段和所述第三初始数据段所处于的时间段,所述标识用于识别所述第一数据段、第二数据段和第三数据段;
所述服务器确认所述第一数据段的大小不大于B;
所述服务器将所述第一数据段存储至所述第一存储集群,同时所述服务器将所述第二数据段和所述第三数据段存储至所述第二存储集群。
优选的,所述服务器接收第二客户端发送的读取请求,所述读取请求携带身份信息,所述读取请求用于指示获取所述第一数据;
所述服务器验证所述身份信息是否具备读取所述第一数据的资格;
若是,则所述服务器向所述第一存储集群和所述第二存储集群发送请求,以获取所述第一数据;
所述服务器将所述第一数据发送至所述第二客户端,以响应所述第二客户端发送的读取请求。
本申请实施例的第二方面提供了一种数据存储系统,包括:
接收模块,用于接收第一客户端发送的数据存储请求,所述数据存储请求携带第一数据和所述第一数据的大小A,其中,A为正数;
获取模块,用于获取第一存储集群的剩余存储空间大小B,其中,B为正数;
确认模块,用于确认所述第一数据的大小A超出所述第一存储集群的剩余存储空间大小B;
处理模块,用于按照第一预设算法进行扩容处理,以得到第二存储集群;
存储模块,用于对所述第一数据进行处理,并将处理后得到的数据按照第二预设算法分别存储至所述第一存储集群和所述第二存储集群;
发送模块,用于发送存储成功的消息至所述第一客户端。
本申请实施例的第三方面提供了一种数据存储服务器,包括处理器、输入设备、输出设备和存储器,所述处理器、输入设备、输出设备和存储器相互连接,其中,所述存储器用于存储计算机程序,所述计算机程序包括程序指令,所述处理器被配置用于调用所述程序指令,执行所述的方法。
本申请实施例的第四方面提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行,以实现所述的方法。
实施本申请实施例,至少具有如下有益效果:
通过本申请实施例,通过确认现有存储集群(第一存储集群)的空间大小不足以存入待存储数据时,则新建第二存储集群,同时对所述待存储数据按照特定算法进行处理,通过设定不同的映射关系进而实现不同的存储,并将其存储至第一存储集群和第二存储集群中。采用该手段,提升了存储效率,且保障了数据存储的秩序性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
其中:
图1为本发明实施例提供的一种数据存储方法的交互示意图;
图2是本发明实施例提供的一种数据存储方法的流程示意图;
图3是本发明实施例提供的一种数据存储方法的流程示意图;
图4是本发明实施例提供的一种数据存储方法的流程示意图;
图5是本发明实施例提供的一种数据存储方法的流程示意图;
图6是本发明实施例提供的一种数据存储服务器的示意图;
图7是本发明实施例提供的一种数据存储系统的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其他步骤或单元。
在本申请中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本申请所描述的实施例可以与其它实施例相结合。
请参阅图1,图1为本申请实施例提供了一种数据存储方法的交互示意图。如图1所示,其可包括:服务器101、第一客户端102、第一存储集群103、第二存储集群104,其中:服务器101接收第一客户端102发送的数据存储请求,所述数据存储请求携带第一数据和所述第一数据的大小A,其中,A为正数;所述服务器101获取第一存储集群103的剩余存储空间大小B,其中,B为正数;所述服务器101确认所述第一数据的大小A超出所述第一存储集群103的剩余存储空间大小B;所述服务器101按照第一预设算法进行扩容处理,以得到第二存储集群104;所述服务器101对所述第一数据进行处理,并将处理后得到的数据按照第二预设算法分别存储至所述第一存储集群103和所述第二存储集群104;所述服务器101发送存储成功的消息至所述第一客户端102。
通过本申请实施例,通过确认现有存储集群(第一存储集群)的空间大小不足以存入待存储数据时,则新建第二存储集群,同时对所述待存储数据按照特定算法进行处理,通过设定不同的映射关系进而实现不同的存储,并将其存储至第一存储集群和第二存储集群中。采用该手段,提升了存储效率,且保障了数据存储的秩序性。
请参阅图2,图2为本申请实施例提供了一种数据存储方法的交互示意图。如图2所示,其可包括步骤201-206,具体如下:
201、服务器接收第一客户端发送的数据存储请求,所述数据存储请求携带第一数据和所述第一数据的大小A,其中,A为正数;
202、所述服务器获取第一存储集群的剩余存储空间大小B,其中,B为正数;
其中,所述第一存储集群可以是所述服务器目前现有的存储集群的统称;
203、所述服务器确认所述第一数据的大小A超出所述第一存储集群的剩余存储空间大小B时;
204、所述服务器按照第一预设算法进行扩容处理,以得到第二存储集群;
205、所述服务器对所述第一数据进行处理,并将处理后得到的数据按照第二预设算法分别存储至所述第一存储集群和所述第二存储集群;
对所述第一数据进行处理,如将其分割为至少两份等,并将其分别存储至第一存储集群和第二存储集群。
206、所述服务器发送存储成功的消息至所述第一客户端。
通过本申请实施例,通过确认第一存储集群的空间大小不足以存入待存储数据时,则新建第二存储集群,同时对所述待存储数据按照特定算法进行处理,通过设定不同的映射关系进而实现不同的存储,并将其存储至第一存储集群和第二存储集群中。采用该手段,提升了存储效率,且保障了数据存储的秩序性。
请参阅图3,图3为本申请实施例提供了一种数据存储方法的交互示意图。如图3所示,其可包括步骤301-308,具体如下:
301、服务器接收第一客户端发送的数据存储请求,所述数据存储请求携带第一数据和所述第一数据的大小A,其中,A为正数;
302、所述服务器获取第一存储集群的剩余存储空间大小B,其中,B为正数;
303、所述服务器确认所述第一数据的大小A超出所述第一存储集群的剩余存储空间大小B;
304、所述服务器获取所述B与A之间的比值C;
305、所述服务器确认所述C是否小于第一阈值;
如所述第一阈值可以是1/2等;
306、若所述C小于所述第一阈值,则所述服务器生成所述第二存储集群,其中,所述第二存储集群的存储空间大小为D,D为正数,且A≤D≤A+B;
若所述C不小于所述第一阈值,则所述服务器生成所述第二存储集群,其中,所述第二存储集群的存储空间大小为E,E为正数,且A-B≤E≤A;
307、所述服务器对所述第一数据进行处理,并将处理后得到的数据按照第二预设算法分别存储至所述第一存储集群和所述第二存储集群;
308、所述服务器发送存储成功的消息至所述第一客户端。
通过本申请实施例,通过确认第一存储集群的空间大小不足以存入待存储数据时,则新建第二存储集群,其中,第二存储集群的存储空间大小根据第一存储集群的剩余存储空间大小与第一数据的大小的比值与第一阈值的关系来进行确定;同时对所述待存储数据按照特定算法进行处理,通过设定不同的映射关系进而实现不同的存储,并将其存储至第一存储集群和第二存储集群中。采用该手段,提升了存储效率,且保障了数据存储的秩序性。
请参阅图4,图4为本申请实施例提供了一种数据存储方法的交互示意图。如图4所示,其可包括步骤401-409,具体如下:
401、服务器接收第一客户端发送的数据存储请求,所述数据存储请求携带第一数据和所述第一数据的大小A,其中,A为正数;
402、所述服务器获取第一存储集群的剩余存储空间大小B,其中,B为正数;
403、所述服务器确认所述第一数据的大小A超出所述第一存储集群的剩余存储空间大小B;
404、所述服务器按照第一预设算法进行扩容处理,以得到第二存储集群;
405、所述服务器确认所述第一存储集群的剩余存储空间大小B和所述第二存储集群的存储空间大小是否均不小于A/2;
406、若是,则所述服务器将所述第一数据平均分割为M份数据段;
407、所述服务器将所述M份数据段按照先后顺序进行排序标号,以得到M份待存储数据段;
408、所述服务器将所述M份待存储数据段中标号为奇数的待存储数据段依次存储至所述第一存储集群,并将所述M份待存储数据段中标号为偶数的待存储数据段依次存储至所述第二存储集群;
可替代的,可将前M份待存储数据段中的前面的多份存储在第一存储集群,剩下的存储在第二存储集群等;
若所述第一存储集群的剩余存储空间大小B和所述第二存储集群的存储空间大小并不同时满足均不小于A/2,则所述服务器将所述第一数据分割为第二数据和第三数据,其中,所述第二数据的大小为B,所述第三数据的大小为A-B;
所述服务器将所述第二数据存储至所述第一存储集群,并将所述第三数据存储至所述第二存储集群。
409、所述服务器发送存储成功的消息至所述第一客户端。
通过本申请实施例,通过确认第一存储集群的空间大小不足以存入待存储数据时,则新建第二存储集群,同时对所述待存储数据按照特定算法进行处理,通过设定不同的映射关系进而实现不同的存储,并将其存储至第一存储集群和第二存储集群中。采用该手段,提升了存储效率,且保障了数据存储的秩序性。
请参阅图5,图5为本申请实施例提供了一种数据存储方法的交互示意图。如图5所示,其可包括步骤501-512,具体如下:
501、服务器接收第一客户端发送的数据存储请求,所述数据存储请求携带第一数据和所述第一数据的大小A,其中,A为正数;
502、所述服务器获取第一存储集群的剩余存储空间大小B,其中,B为正数;
503、所述服务器确认所述第一数据的大小A超出所述第一存储集群的剩余存储空间大小B;
504、所述服务器按照第一预设算法进行扩容处理,以得到第二存储集群;
505、所述服务器对所述第一数据进行处理,并将处理后得到的数据按照第二预设算法分别存储至所述第一存储集群和所述第二存储集群;
506、所述服务器获取所述第一数据中的N个重复字段,其中,N为正整数;
507、所述服务器确认所述N个重复字段中的N’个字段中每个字段在所述第一数据中出现的次数均超出预设阈值,其中,N’为正整数;
如获取到N’个字段,其中每个字段重复出现的次数为超出预设阈值;
508、所述服务器获取所述N’个字段;
509、所述服务器根据预设数据重要等级与字段的对应的关系,确认所述N’个字段所对应的数据重要等级;
510、所述服务器确认所述数据重要等级超出预设数据重要等级;
511、所述服务器将所述第一数据进行备份;
512、所述服务器发送存储成功的消息至所述第一客户端。
本申请实施例中,通过对第一数据的重要性进行确认,并对重要数据进行备份,保障了数据的安全性。
进一步,所述数据存储请求还携带所述第一数据的数据类型,若所述第一数据的数据类型为视频,则所述服务器获取所述视频的第一重要情节处于所述第一数据中的时间段;
所述服务器按照所述第一重要情节所处的时间段将所述第一数据分割为第一初始数据段、第二初始数据段和第三初始数据段,其中,所述初始第一数据段对应所述第一重要情节;
所述服务器获取所述第二初始数据段和所述第三初始数据段分别处于所述数据中的时间段;
所述服务器对所述第一初始数据段、第二初始数据段和所述第三初始数据段分别添加标识,以得到第一数据段、第二数据段和第三数据段,其中,所述标识分别携带所述第一初始数据段、第二初始数据段和所述第三初始数据段所处于的时间段,所述标识用于识别所述第一数据段、第二数据段和第三数据段;
所述服务器确认所述第一数据段的大小不大于B;
所述服务器将所述第一数据段存储至所述第一存储集群,同时所述服务器将所述第二数据段和所述第三数据段存储至所述第二存储集群。
进一步,所述服务器接收第二客户端发送的读取请求,所述读取请求携带身份信息,所述读取请求用于指示获取所述第一数据;
所述服务器验证所述身份信息是否具备读取所述第一数据的资格;
若是,则所述服务器向所述第一存储集群和所述第二存储集群发送请求,以获取所述第一数据;
所述服务器将所述第一数据发送至所述第二客户端,以响应所述第二客户端发送的读取请求。
进一步,还包括:
所述服务器向所述第一存储集群及第二存储集群的多个存储节点分别发送请求,所述请求用于指示所述不同存储节点分别与所述服务器建立网络连接;
所述服务器接收所述不同存储节点分别返回的网络连接成功的响应。
采用该手段,通过服务器与不同存储集群和/或各存储节点进行通信连接,避免了多客户端直接与存储集群和/或各存储节点进行交互而占据多带宽。
与上述实施例一致的,请参阅图6,图6为本申请实施例提供的一种数据存储服务器的结构示意图,如图所示,包括处理器、输入设备、输出设备和存储器,所述处理器、输入设备、输出设备和存储器相互连接,其中,所述存储器用于存储计算机程序,所述计算机程序包括程序指令,所述处理器被配置用于调用所述程序指令,上述程序包括用于执行以下步骤的指令;
接收第一客户端发送的数据存储请求,所述数据存储请求携带第一数据和所述第一数据的大小A,其中,A为正数;
获取第一存储集群的剩余存储空间大小B,其中,B为正数;
确认所述第一数据的大小A超出所述第一存储集群的剩余存储空间大小B;
按照第一预设算法进行扩容处理,以得到第二存储集群;
对所述第一数据进行处理,并将处理后得到的数据按照第二预设算法分别存储至所述第一存储集群和所述第二存储集群;
发送存储成功的消息至所述第一客户端。
通过本申请实施例,通过确认第一存储集群的空间大小不足以存入待存储数据时,则新建第二存储集群,同时对所述待存储数据按照特定算法进行处理,通过设定不同的映射关系进而实现不同的存储,并将其存储至第一存储集群和第二存储集群中。采用该手段,提升了存储效率,且保障了数据存储的秩序性。
上述主要从方法侧执行过程的角度对本申请实施例的方案进行了介绍。可以理解的是,终端为了实现上述功能,其包含了执行各个功能相应的硬件结构和/或软件模块。本领域技术人员应该很容易意识到,结合本文中所提供的实施例描述的各示例的单元及算法步骤,本申请能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
本申请实施例可以根据上述方法示例对终端进行功能单元的划分,例如,可以对应各个功能划分各个功能单元,也可以将两个或两个以上的功能集成在一个处理单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。需要说明的是,本申请实施例中对单元的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
与上述一致的,请参阅图7,图7为本申请实施例提供了一种数据存储系统的结构示意图。其包括接收模块701、获取模块702、确认模块703、处理模块704、存储模块705、发送模块706,其中:
接收模块701,用于接收第一客户端发送的数据存储请求,所述数据存储请求携带第一数据和所述第一数据的大小A,其中,A为正数;
获取模块702,用于获取第一存储集群的剩余存储空间大小B,其中,B为正数;
确认模块703,用于确认所述第一数据的大小A超出所述第一存储集群的剩余存储空间大小B;
处理模块704,用于按照第一预设算法进行扩容处理,以得到第二存储集群;
存储模块705,用于对所述第一数据进行处理,并将处理后得到的数据按照第二预设算法分别存储至所述第一存储集群和所述第二存储集群;
发送模块706,用于发送存储成功的消息至所述第一客户端。
其还包括数据重要性确认模块,用于获取所述第一数据中的N个重复字段,其中,N为正整数;确认所述N个重复字段中的N’个字段中每个字段在所述第一数据中出现的次数均超出预设阈值,其中,N’为正整数;获取所述N’个字段;根据预设数据重要等级与字段的对应的关系,确认所述N’个字段所对应的数据重要等级;确认所述数据重要等级超出预设数据重要等级;将所述第一数据进行备份。
其还包括视频数据处理模块,用于获取所述视频的第一重要情节处于所述第一数据中的时间段;按照所述第一重要情节所处的时间段将所述第一数据分割为第一初始数据段、第二初始数据段和第三初始数据段,其中,所述初始第一数据段对应所述第一重要情节;获取所述第二初始数据段和所述第三初始数据段分别处于所述数据中的时间段;对所述第一初始数据段、第二初始数据段和所述第三初始数据段分别添加标识,以得到第一数据段、第二数据段和第三数据段,其中,所述标识分别携带所述第一初始数据段、第二初始数据段和所述第三初始数据段所处于的时间段,所述标识用于识别所述第一数据段、第二数据段和第三数据段;确认所述第一数据段的大小不大于B;将所述第一数据段存储至所述第一存储集群,同时所述服务器将所述第二数据段和所述第三数据段存储至所述第二存储集群。
可以看出,通过本申请实施例,通过确认第一存储集群的空间大小不足以存入待存储数据时,则新建第二存储集群,同时对所述待存储数据按照特定算法进行处理,通过设定不同的映射关系进而实现不同的存储,并将其存储至第一存储集群和第二存储集群中。采用该手段,提升了存储效率,且保障了数据存储的秩序性。
本申请实施例还提供一种计算机存储介质,其中,该计算机存储介质存储用于电子数据交换的计算机程序,该计算机程序使得计算机执行如上述方法实施例中记载的任何一种数据存储方法的部分或全部步骤。
本申请实施例还提供一种计算机程序产品,所述计算机程序产品包括存储了计算机程序的非瞬时性计算机可读存储介质,该计算机程序使得计算机执行如上述方法实施例中记载的任何一种数据存储方法的部分或全部步骤。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置,可通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在申请明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件程序模块的形式实现。
所述集成的单元如果以软件程序模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储器中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储器中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储器包括:U盘、只读存储器(read-only memory,ROM)、随机存取存储器(random access memory,RAM)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储器中,存储器可以包括:闪存盘、只读存储器、随机存取器、磁盘或光盘等。
以上对本申请实施例进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。

Claims (9)

1.一种数据存储方法,其特征在于,包括:
服务器接收第一客户端发送的数据存储请求,所述数据存储请求携带第一数据和所述第一数据的大小A,其中,A为正数;
所述服务器获取第一存储集群的剩余存储空间大小B,其中,B为正数;
所述服务器确认所述第一数据的大小A是否超出所述第一存储集群的剩余存储空间大小B,若是,则所述服务器获取所述B与A之间的比值C;
所述服务器确认所述C是否小于第一阈值;
若所述C小于所述第一阈值,则所述服务器生成第二存储集群,其中,所述第二存储集群的存储空间大小为D,D为正数,且A≤D≤A+B;
若所述C不小于所述第一阈值,则所述服务器生成所述第二存储集群,其中,所述第二存储集群的存储空间大小为E,E为正数,且A-B≤E≤A;
所述服务器对所述第一数据进行处理,并将处理后得到的数据按照第二预设算法分别存储至所述第一存储集群和所述第二存储集群;
所述服务器发送存储成功的消息至所述第一客户端。
2.根据权利要求1所述的方法,其特征在于,所述服务器对所述第一数据进行处理,并将处理后得到的数据按照第二预设算法分别存储至所述第一存储集群和所述第二存储集群,包括:
所述服务器确认所述第一存储集群的剩余存储空间大小B和所述第二存储集群的存储空间大小是否均不小于A/2;
若是,则所述服务器将所述第一数据平均分割为M份数据段;
所述服务器将所述M份数据段按照先后顺序进行排序标号,以得到M份待存储数据段;
所述服务器将所述M份待存储数据段中标号为奇数的待存储数据段依次存储至所述第一存储集群,并将所述M份待存储数据段中标号为偶数的待存储数据段依次存储至所述第二存储集群。
3.根据权利要求2所述的方法,其特征在于,包括:
若所述第一存储集群的剩余存储空间大小B和所述第二存储集群的存储空间大小并不同时满足均不小于A/2,则所述服务器将所述第一数据分割为第二数据和第三数据,其中,所述第二数据的大小为B,所述第三数据的大小为A-B;
所述服务器将所述第二数据存储至所述第一存储集群,并将所述第三数据存储至所述第二存储集群。
4.根据权利要求1所述的方法,其特征在于,所述服务器对所述第一数据进行处理,并将处理后得到的数据按照第二预设算法分别存储至所述第一存储集群和所述第二存储集群之后,所述服务器发送存储成功的消息至所述第一客户端之前,包括:
所述服务器获取所述第一数据中的N个重复字段,其中,N为正整数;
所述服务器确认所述N个重复字段中的N’个字段中每个字段在所述第一数据中出现的次数均超出预设阈值,其中,N’为正整数;
所述服务器获取所述N’个字段;
所述服务器根据预设数据重要等级与字段的对应的关系,确认所述N’个字段所对应的数据重要等级;
所述服务器确认所述数据重要等级超出预设数据重要等级;
所述服务器将所述第一数据进行备份。
5.根据权利要求1所述的方法,其特征在于,还包括:
所述数据存储请求还携带所述第一数据的数据类型,若所述第一数据的数据类型为视频,则所述服务器获取所述视频的第一重要情节处于所述第一数据中的时间段;
所述服务器按照所述第一重要情节所处的时间段将所述第一数据分割为第一初始数据段、第二初始数据段和第三初始数据段,其中,所述初始第一数据段对应所述第一重要情节;
所述服务器获取所述第二初始数据段和所述第三初始数据段分别处于所述数据中的时间段;
所述服务器对所述第一初始数据段、第二初始数据段和所述第三初始数据段分别添加标识,以得到第一数据段、第二数据段和第三数据段,其中,所述标识分别携带所述第一初始数据段、第二初始数据段和所述第三初始数据段所处于的时间段,所述标识用于识别所述第一数据段、第二数据段和第三数据段;
所述服务器确认所述第一数据段的大小不大于B;
所述服务器将所述第一数据段存储至所述第一存储集群,同时所述服务器将所述第二数据段和所述第三数据段存储至所述第二存储集群。
6.根据权利要求1至5任一项所述的方法,其特征在于,还包括:
所述服务器接收第二客户端发送的读取请求,所述读取请求携带身份信息,所述读取请求用于指示获取所述第一数据;
所述服务器验证所述身份信息是否具备读取所述第一数据的资格;
若是,则所述服务器向所述第一存储集群和所述第二存储集群发送请求,以获取所述第一数据;
所述服务器将所述第一数据发送至所述第二客户端,以响应所述第二客户端发送的读取请求。
7.一种数据存储系统,其特征在于,包括:
接收模块,用于接收第一客户端发送的数据存储请求,所述数据存储请求携带第一数据和所述第一数据的大小A,其中,A为正数;
获取模块,用于获取第一存储集群的剩余存储空间大小B,其中,B为正数;
确认模块,用于确认所述第一数据的大小A超出所述第一存储集群的剩余存储空间大小B;
处理模块,用于获取所述B与A之间的比值C;确认所述C是否小于第一阈值;若所述C小于所述第一阈值,则生成第二存储集群,其中,所述第二存储集群的存储空间大小为D,D为正数,且A≤D≤A+B;若所述C不小于所述第一阈值,则生成所述第二存储集群,其中,所述第二存储集群的存储空间大小为E,E为正数,且A-B≤E≤A;
存储模块,用于对所述第一数据进行处理,并将处理后得到的数据按照第二预设算法分别存储至所述第一存储集群和所述第二存储集群;
发送模块,用于发送存储成功的消息至所述第一客户端。
8.一种数据存储服务器,其特征在于,包括处理器、输入设备、输出设备和存储器,所述处理器、输入设备、输出设备和存储器相互连接,其中,所述存储器用于存储计算机程序,所述计算机程序包括程序指令,所述处理器被配置用于调用所述程序指令,执行如权利要求1-6任一项所述的方法。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行,以实现如权利要求1-6任一项所述的方法。
CN201910348682.8A 2019-04-28 2019-04-28 一种数据存储方法及相关装置 Active CN110134332B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201910348682.8A CN110134332B (zh) 2019-04-28 2019-04-28 一种数据存储方法及相关装置
PCT/CN2019/102734 WO2020220535A1 (zh) 2019-04-28 2019-08-27 一种数据存储方法及相关装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910348682.8A CN110134332B (zh) 2019-04-28 2019-04-28 一种数据存储方法及相关装置

Publications (2)

Publication Number Publication Date
CN110134332A CN110134332A (zh) 2019-08-16
CN110134332B true CN110134332B (zh) 2022-03-08

Family

ID=67575457

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910348682.8A Active CN110134332B (zh) 2019-04-28 2019-04-28 一种数据存储方法及相关装置

Country Status (2)

Country Link
CN (1) CN110134332B (zh)
WO (1) WO2020220535A1 (zh)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110134332B (zh) * 2019-04-28 2022-03-08 平安科技(深圳)有限公司 一种数据存储方法及相关装置
CN113132678B (zh) * 2019-12-31 2023-08-01 深圳云天励飞技术有限公司 一种数据传输方法、装置、电子设备及存储介质
CN114629925A (zh) * 2020-12-11 2022-06-14 飞狐信息技术(天津)有限公司 一种数据传输方法、装置及电子设备
CN112637327B (zh) * 2020-12-21 2022-07-22 北京奇艺世纪科技有限公司 一种数据处理方法、装置及系统
CN112737977B (zh) * 2020-12-28 2022-05-20 苏州浪潮智能科技有限公司 一种数据包处理方法以及装置
CN113867643A (zh) * 2021-09-29 2021-12-31 北京金山云网络技术有限公司 数据存储方法、装置、设备及存储介质
CN114357030B (zh) * 2022-01-04 2022-09-30 深圳市智百威科技发展有限公司 一种大数据存储系统及方法
CN114915550B (zh) * 2022-05-30 2023-04-14 深圳市政元软件有限公司 移动互联网大数据的存储配置方法及系统
CN117082083B (zh) * 2023-08-30 2024-08-13 杭州浩联智能科技有限公司 一种基于分布式物联网架构的数据存储方法、装置及介质
CN116880776B (zh) * 2023-09-06 2023-11-17 上海凯翔信息科技有限公司 一种存储数据的数据处理系统
CN117407324B (zh) * 2023-12-12 2024-03-15 深圳市银闪科技有限公司 基于固态硬盘的数据存储方法、装置、固态硬盘控制器

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104205780A (zh) * 2014-01-23 2014-12-10 华为技术有限公司 一种存储数据的方法和装置
CN107632791A (zh) * 2017-10-10 2018-01-26 郑州云海信息技术有限公司 一种存储空间的分配方法及系统
CN109062512A (zh) * 2018-07-26 2018-12-21 郑州云海信息技术有限公司 一种分布式存储集群、数据读写方法、系统及相关装置
CN109388351A (zh) * 2018-12-18 2019-02-26 平安科技(深圳)有限公司 一种分布式数据存储的方法及相关装置
CN109407976A (zh) * 2018-09-21 2019-03-01 联想(北京)有限公司 一种分布式存储方法及分布式存储装置
CN109426439A (zh) * 2017-09-04 2019-03-05 阿里巴巴集团控股有限公司 对分布式存储系统进行扩容的方法及装置
CN109547574A (zh) * 2019-01-04 2019-03-29 平安科技(深圳)有限公司 一种数据传输方法及相关装置

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4175788B2 (ja) * 2001-07-05 2008-11-05 株式会社日立製作所 ボリューム制御装置
CN101753936B (zh) * 2008-12-08 2013-07-24 北京中星微电子有限公司 一种视频监控系统的存储空间的配置方法和视频服务器
CN104571955A (zh) * 2014-12-27 2015-04-29 华为技术有限公司 提高存储容量的方法和装置
CN110134332B (zh) * 2019-04-28 2022-03-08 平安科技(深圳)有限公司 一种数据存储方法及相关装置

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104205780A (zh) * 2014-01-23 2014-12-10 华为技术有限公司 一种存储数据的方法和装置
CN109426439A (zh) * 2017-09-04 2019-03-05 阿里巴巴集团控股有限公司 对分布式存储系统进行扩容的方法及装置
CN107632791A (zh) * 2017-10-10 2018-01-26 郑州云海信息技术有限公司 一种存储空间的分配方法及系统
CN109062512A (zh) * 2018-07-26 2018-12-21 郑州云海信息技术有限公司 一种分布式存储集群、数据读写方法、系统及相关装置
CN109407976A (zh) * 2018-09-21 2019-03-01 联想(北京)有限公司 一种分布式存储方法及分布式存储装置
CN109388351A (zh) * 2018-12-18 2019-02-26 平安科技(深圳)有限公司 一种分布式数据存储的方法及相关装置
CN109547574A (zh) * 2019-01-04 2019-03-29 平安科技(深圳)有限公司 一种数据传输方法及相关装置

Also Published As

Publication number Publication date
CN110134332A (zh) 2019-08-16
WO2020220535A1 (zh) 2020-11-05

Similar Documents

Publication Publication Date Title
CN110134332B (zh) 一种数据存储方法及相关装置
CN108390933B (zh) 消息分发方法、装置、服务器及存储介质
CN111163130B (zh) 一种网络服务系统及其数据传输方法
CN110750341A (zh) 任务调度方法、装置、系统、终端设备及存储介质
CN111541762B (zh) 数据处理的方法、管理服务器、设备及存储介质
CN111917897A (zh) 标识生成方法、装置、设备及存储介质
CN109885424B (zh) 一种数据备份方法、装置及计算机设备
CN111416765A (zh) 一种互动消息处理的方法及装置
CN110719526B (zh) 视频播放方法及装置
CN109561041B (zh) 一种通信序列构造方法、系统、设备及计算机存储介质
CN113946287B (zh) 分布式存储系统及其数据处理方法、相关装置
CN105430052B (zh) 一种用于集群系统的仲裁方法和装置
JP2009157437A (ja) 分散記憶システム
CN113138969A (zh) 数据传输方法、装置、电子设备和计算机可读存储介质
CN103078805A (zh) 使Zookeeper的读性能支持水平扩展的系统和方法
CN105988890B (zh) 信息的备份方法及装置
CN108090087B (zh) 文件处理方法及装置
CN109214844A (zh) 一种广告分发方法、装置及电子设备
CN113794566A (zh) 一种可再投票的二元共识方法及装置
CN103514198A (zh) 云存储系统中文件的管理方法、云存储系统及云端服务器
CN112181974A (zh) 标识信息分配方法、系统及存储设备
US20190035145A1 (en) Systems and methods for facilitating making partial selections of multidimensional information while maintaining a multidimensional structure
CN109688433A (zh) 基于画面的剪切视频方法及相关产品
CN108733822A (zh) 一种文件存储方法、装置、电子设备及存储介质
CN110990348A (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