一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种数据分布式缓存自动加载与转换方法与流程

2022-12-20 00:31:04 来源:中国专利 TAG:


1.本发明属于数据分布式缓存技术领域,具体涉及一种数据分布式缓存自动加载与转换方法。


背景技术:

2.分布式缓存能够处理大量的动态数据,因此比较适合应用在web 2.0时代中的社交网站等需要由用户生成内容的场景。从本地缓存扩展到分布式缓存后,关注重点从cpu、内存、缓存之间的数据传输速度差异也扩展到了业务系统、数据库、分布式缓存之间的数据传输速度差异,然而市面上各种的数据分布式缓存仍存在各种各样的问题。
3.如授权公告号为cn113779043a所公开的一种数据分布式缓存自动加载与转换方法,其虽然实现了通过采用一致性哈希均匀分布的缓存方式,实现基于现一致性哈希分布式数据的环状存储结构,同时采用存入数据的特征提取,使其数据实现向特征的转换,但是并未解决现有分布缓存存在的不能够有效的进行对应缓存,不能够有效的实现多种形式的存储,以及不能够有效的提高数据的安全性,且不能够精准的实现转换处理等的问题,为此我们提出一种数据分布式缓存自动加载与转换方法。


技术实现要素:

4.本发明的目的在于提供一种数据分布式缓存自动加载与转换方法,以解决上述背景技术中提出的问题。
5.为实现上述目的,本发明提供如下技术方案:一种数据分布式缓存自动加载与转换方法,包括有以下方法步骤:
6.s1、实现对数据信息进行自动加载存储:采用多节点的redis分布缓存机构,且每个节点负责一部分数据的存储,所述redis采用基于内存的key-value数据库;
7.s2、建立存储对像,进行数据信息的缓存:redis分布缓存将hash视作一个整体作为数据库的value进行存储,把hash结构的整体看作对象,则hash结构里的key-value相当于该对象的属性名和属性值;
8.s3、对数据信息进行获取:redis分布缓存中完成value的相关数据操作,实现对数据的获取,所述redis采用单线程数据传输,不存在并发数据读写的线程安全问题;
9.s4、在对数据信息进行获取的过程中,对数据信息进行转换:数据信息获取之前,根据获取要求对数据信息进行转换模式处理,在完成数据转换之后,对数据进行传输处理。
10.优选的,所述s1中的redis分布缓存的key-value数据库支持的数据结构包括支持简单的k/v类型,还支持list、set、hash类型的存储。
11.优选的,所述redis分布缓存还支持持久化,所述redis分布缓存的持久化由rdb和aof实现。
12.优选的,所述redis分布缓存定时将内存中的数据备份到磁盘中,形成一个快照;所述aof即记录下所述redis分布缓存中所有的更新操作。
13.优选的,所述redis分布缓存中,提供了三种实现aof的策略,包括:
14.不同步的aof_fsync_no,不自动触发写操作的同步;
15.每秒同步的aof_fsync_everysec,每隔一秒都会将写操作同步到磁盘;
16.每次写都同步的aof_fsync_always,每次发生写操作会立即同步到磁盘;
17.redis所述redis分布缓存采用的是每秒同步的aof_fsync_everysec策略。
18.优选的,所述s3对数据的获取过程为了提高所述redis分布缓存的可靠性,在每个节点进行主备设计,通过设定两个参数来有效地保证数据的一致性,且这两个参数如下所示:min-replicas-to-write和min-replicas-max-lag,所述redis分布缓存提供了两种同步模式,即完整重同步和部分重同步。
19.优选的,所述完整重同步的流程如下所示:
20.s301:当备服务器启动时,会向主服务器发送sync命令;
21.s302:主服务器收到命令后会生成rdb文件,并记录从现在起新执行的写操作;
22.s303:rdb生成后会发送给备服务器,备服务器通过rdb文件进行数据更新;
23.s304:更新完成后,主服务器再将新记录的写操作发送给备服务器,备服务器执行完这些新记录的写操作,便与主服务器的数据保持一致;
24.所述部分重同步当网络恢复后,主数据库将主备数据库断开连接之后的一系列写操作发送给备服务器,备数据库执行这些写操作,从而保证数据保持一致。
25.优选的,所述s4中的数据信息进行转换包括有以下处理:
26.平滑处理:帮助除去数据中的噪声,主要方法有bin方法、聚类方法和回归方法;
27.合计处理:对数据进行总结或合计操作;
28.数据泛化处理:用更抽象的概念来取代低层次或数据层的数据对象;
29.规格化处理:将有关属性数据按比例投射到特定的小范围之中;
30.属性构造处理:根据已有属性集构造新的属性,以帮助数据处理过程。
31.优选的,所述数据转换的内容包括:数据类型转换、数据语义转换、数据值域转换、数据粒度转换、表/数据拆分、行列转换、数据离散化、数据离散化、提炼新字段、属性构造、数据压缩等;
32.数据类型转换:当数据来自不同数据源时,需要将不同数据源的数据类型进行统一转换为一种兼容的数据类型;
33.数据粒度转换:会将业务系统数据按照数据仓库中不同的粒度需求进行聚合;
34.表/数据拆分:一个表内的多个字段,存在表字段拆分的情况;
35.行列转换:某些情况下,表内的行列数据会需要进行转换,用来满足基于项目和基于用户的相似度推荐计算;
36.数据离散化:将连续取值的属性离散化成若干区间,来帮助消减一个连续属性的取值个数;
37.数据标准化:不同字段间由于字段本身的业务含义不同,有些时间需要消除变量之间不同数量级造成的数值之间的悬殊差异。
38.优选的,所述数据转换步骤如下:
39.s401:执行数据发现,以识别源和数据类型;
40.s402:确定需要发生的结构和数据转换;
41.s403:执行数据映射以定义各个字段的映射,修改,连接,过滤和聚合方式;
42.s404:从原始源提取数据;
43.s405:执行转换;
44.s406:然后实现数据的发送。
45.与现有技术相比,本发明的有益效果是:
46.本发明通过redis分布缓存有效的实现对数据信息进行缓存处理,并且通过redis分布缓存的键值对形成缓存存储,且为了有效的实现查询,采用hash计算进行数据的计算处理,便于进行存储处理,并且redis分布缓存单线程运行,有效的防止并发问题的产生,提高数据的安全性,且实现对节点进行主备设定,提高数据的准确性,在实现对数据信息进行转换,使得数据信息能够有效的实现传输,并且能够有效的保持数据信息在转换过程中的精准度。
附图说明
47.图1为本发明的步骤流程示意图;
48.图2为本发明的完整重同步的步骤流程示意图;
49.图3为本发明的数据转换步骤流程示意图。
具体实施方式
50.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
51.请参阅图1,本发明提供一种技术方案:一种数据分布式缓存自动加载与转换方法,包括以下步骤:
52.s1、对数据信息进行自动加载存储:采用多节点的redis分布缓存机构,且每个节点负责一部分数据的存储,为了实现便于进行数据查询的目的,redis采用基于内存的key-value数据库;
53.s2、建立存储对像,进行数据信息的缓存:redis分布缓存将hash视作一个整体作为数据库的value进行存储,把hash结构的整体看作对象,则hash结构里的key-value相当于该对象的属性名和属性值;
54.s3、对数据信息进行获取:redis分布缓存中完成value的相关数据操作,实现对数据的获取,所述redis采用单线程数据传输,不存在并发数据读写的线程安全问题,保证数据读写操作的顺序性;
55.s4、在对数据信息进行获取的过程中,对数据信息进行转换:数据信息获取之前,根据获取要求对数据信息进行转换模式处理,在完成数据转换之后,对数据进行传输处理。
56.为了实现多种数据格式的缓存,本实施例中,优选的,所述s1中的redis分布缓存的key-value数据库为了方便支持多应用数据的缓存,例如缓存文本类型、数据库的查询结果,支持的数据结构不仅有简单的k/v类型,还支持list、set、hash类型的存储。
57.为了实现对数据进行安全保存,防止丢失,本实施例中,优选的,所述redis分布缓
存还支持持久化处理功能,将数据从内存这种易失性存储设备中写入磁盘等存储介质中,从而让数据永久保存,防止数据信息的丢失,所述redis分布缓存的持久化处理功能主要由rdb持久化和aof持久化两种方式实现,所述rdb也称快照方式,可使redis分布缓存会定时将内存中的数据备份到磁盘中,形成一个快照,但是会造成数据丢失,即当节点出现故障时,新数据还未备份到磁盘中;
58.所述aof即记录下所述redis分布缓存中所有的更新操作。
59.为了实现对aof的存储,提供了三种方式,本实施例中,优选的,所述redis分布缓存中,提供了三种实现aof的策略,包括:
60.不同步的aof_fsync_no,不自动触发写操作的同步;
61.每秒同步的aof_fsync_everysec,每隔一秒都会将写操作同步到磁盘;
62.每次写都同步的aof_fsync_always,每次发生写操作会立即同步到磁盘;
63.为了提高存储保存的性能,redis所述redis分布缓存采用的是每秒同步的aof_fsync_everysec策略。
64.为了实现对数据缓存的可靠性,本实施例中,优选的,所述s3对数据的获取过程中,为了提高所述redis分布缓存的可靠性,在每个节点进行主备设计,通过设定两个参数来有效地保证数据的一致性,且这两个参数如下所示:min-replicas-to-write和min-replicas-max-lag,所述redis分布缓存提供了两种同步模式,即完整重同步和部分重同步。
65.参考图2,对完整重同步和部分重同步的步骤进行说明,本实施例中,优选的,所述完整重同步的流程如下所示:
66.s301:当备服务器启动时,会向主服务器发送sync命令;
67.s302:主服务器收到命令后会生成rdb文件,并记录从现在起新执行的写操作;
68.s303:rdb生成后会发送给备服务器,备服务器通过rdb文件进行数据更新;
69.s304:更新完成后,主服务器再将新记录的写操作发送给备服务器,备服务器执行完这些新记录的写操作,便与主服务器的数据保持一致;
70.所述部分重同步为:当网络恢复后,主数据库将主备数据库断开连接之后的一系列写操作发送给备服务器,备数据库执行这些写操作,从而保证数据保持一致。
71.为了实现在数据转换的时候,能够实现对数据进行处理,本实施例中,优选的,所述s4中的数据信息进行转换包括有以下处理方式:
72.平滑处理:帮助除去数据中的噪声,主要方法有bin方法、聚类方法和回归方法;
73.合计处理:对数据进行总结或合计操作;
74.数据泛化处理:用更抽象的概念来取代低层次或数据层的数据对象;
75.规格化处理:将有关属性数据按比例投射到特定的小范围之中;
76.属性构造处理:根据已有属性集构造新的属性,以帮助数据处理过程。
77.为了实现对数据不同的内容进行转换处理,本实施例中,优选的,所述数据转换的内容包括:数据类型转换、数据语义转换、数据值域转换、数据粒度转换、表/数据拆分、行列转换、数据离散化、数据离散化、提炼新字段、属性构造、数据压缩等;
78.数据类型转换:当数据来自不同数据源时,需要将不同数据源的数据类型进行统一转换为一种兼容的数据类型;
79.数据粒度转换:会将业务系统数据按照数据仓库中不同的粒度需求进行聚合;
80.表/数据拆分:一个表内的多个字段,存在表字段拆分的情况;
81.行列转换:某些情况下,表内的行列数据会需要进行转换,用来满足基于项目和基于用户的相似度推荐计算;
82.数据离散化:将连续取值的属性离散化成若干区间,来帮助消减一个连续属性的取值个数;
83.数据标准化:不同字段间由于字段本身的业务含义不同,有些时间需要消除变量之间不同数量级造成的数值之间的悬殊差异。
84.参考图3,为了实现对数据信息进行有效的转换处理,本实施例中,优选的,所述数据转换步骤如下:
85.s401:执行数据发现,以识别源和数据类型;
86.s402:确定需要发生的结构和数据转换;
87.s403:执行数据映射以定义各个字段的映射,修改,连接,过滤和聚合方式;
88.s404:从原始源提取数据;
89.s405:执行转换;
90.s406:然后实现数据的发送。
91.本发明的工作原理及使用流程:
92.第一步、对数据信息进行自动加载存储:采用redis分布缓存,且每个节点负责一部分数据的存储,以及为了实现便于进行查询,redis是一个基于内存的key-value数据库;
93.第二步、建立存储对像,进行数据信息的缓存:redis分布缓存将hash视作一个整体作为数据库的value进行存储,把hash结构的整体看作对象,则hash结构里的key-value相当于该对象的属性名和属性值;
94.第三步、对数据信息进行获取:redis分布缓存中完成value的相关数据操作,对数据进行获取,所述redis为单线程进行,不存在并发数据读写的线程安全问题,保证数据读写操作的顺序性;
95.第四步、在对数据信息进行获取的过程中,对数据信息进行转换:数据信息获取之前,根据获取要求对数据信息进行转换模式处理,在数据转换之后,对数据进行传输处理。
96.尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由所附权利要求及其等同物限定。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献