本发明涉及信息技术领域,具体涉及一种数据获取方法、装置及存储介质。
背景技术:
传统的关系数据管理系统(relationaldatabasemanagementsystem,rdbms)到分布式缓存中加载数据时,只能实现每个节点加载不同的表单进行并行处理,而无法实现一张表单被多个节点并行加载。
技术实现要素:
本发明实施例提供了一种数据获取方法、装置及存储介质,可以实现一张表单被多个节点并行加载。
本发明实施例提供了一种数据获取方法,包括:获取表单中的数据对应的节点标识;根据所述节点标识确定所述表单中的目标数据;获取所述目标数据。
可选的,在获取表单中的数据对应的节点标识之前,还包括:配置所述表单中的数据对应的节点标识。
可选的,所述配置所述表单中的数据对应的节点标识,包括:根据所述表单中的主键或者分片键配置所述表单中的每一条数据对应的节点标识。
可选的,所述获取所述目标数据,包括:将所述目标数据加载到分布式缓存中,并在所述分布式缓存中对所述目标数据进行处理。
本发明实施例还提供了一种数据获取装置,包括第一获取模块、确定模块和第二获取模块,其中,所述第一获取模块,用于获取表单中的数据对应的节点标识;所述确定模块,用于根据所述节点标识确定所述表单中的目标数据;所述第二获取模块,用于获取所述目标数据。
可选的,所述装置还包括配置模块,其中,所述配置模块,用于配置所述表单中的数据对应的节点标识。
可选的,所述配置模块,用于根据所述表单中的主键或者分片键配置所述表单中的每一条数据对应的节点标识。
可选的,所述第二获取模块,用于将所述目标数据加载到分布式缓存中,并在所述分布式缓存中对所述目标数据进行处理。
本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现本发明实施例中的任意一种方法。
本发明实施例还提供了一种电子装置,包括存储器和处理器,所述处理器通过执行所述存储器中的程序实现本发明实施例中的任意一种方法。
通过本发明实施例提供的数据获取方法,可以实现一张表单被多个节点并行加载。
附图说明
图1是本发明实施例提供的一种数据获取方法的流程图;
图2是根据本发明实施例的一种数据获取装置的框架图;
图3是根据本发明实施例的一种数据处理方法的示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚明白,下文中将结合附图对本申请的实施例进行详细说明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。
另外,在本发明实施例中,“可选的”或者“示例性的”等词用于表示作例子、例证或说明。本发明实施例中被描述为“可选的”或者“示例性的”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用“可选的”或者“示例性的”等词旨在以具体方式呈现相关概念。
本发明实施例提供了一种数据获取方法。图1是本发明实施例提供的一种数据获取方法的流程图,如图1所示,该方法可以包括如下步骤:
s102,获取表单中的数据对应的节点标识;
s104,根据该节点标识确定该表单中的目标数据;
s106,获取该目标数据
可选的,在获取表单中的数据对应的节点标识之前,还包括:配置该表单中的数据对应的节点标识。
可选的,该配置该表单中的数据对应的节点标识,包括:根据该表单中的主键或者分片键配置该表单中的每一条数据对应的节点标识。
内存数据库所有节点访问rdbms关系型数据库时,按照应用需求,标记出需要加载的目标数据。具体方法可以是,根据内存数据库分片算法,根据表中记录值的主键或者分片键计算每张表中每一条数据所映射的节点标识id,并在表中最后一列进行节点id的标记。
节点根据标记的节点id查询本节点需要加载的目标数据,并进行加载,多个节点可以对同一个表的数据进行查询,由于每个节点加载的数据不同,可以实现同一张表在多个节点的并行加载。
需要说明的是,本发明实施例不仅适用于rdbms关系型数据库到分布式缓存的加载,也可以适用于其他数据库到缓存的加载。
可选的,该获取该目标数据,包括:将该目标数据加载到分布式缓存中,并在该分布式缓存中对该目标数据进行处理。
节点将目标数据加载到分布式缓存中,在缓存中进行分布式并行计算,实现对数据的批处理。
本发明实施例还提供了一种数据获取装置。图2是根据本发明实施例的一种数据获取装置的框架图,如图2所示,该装置包括第一获取模块22、确定模块24和第二获取模块26,其中,
该第一获取模块22,用于获取表单中的数据对应的节点标识;
该确定模块24,用于根据该节点标识确定该表单中的目标数据;
该第二获取模块26,用于获取该目标数据。
可选的,该装置还包括配置模块,其中,该配置模块,用于配置该表单中的数据对应的节点标识。
可选的,该配置模块,用于根据该表单中的主键或者分片键配置该表单中的每一条数据对应的节点标识。
可选的,该第二获取模块26,用于将该目标数据加载到分布式缓存中,并在该分布式缓存中对该目标数据进行处理。
本发明实施例还提供了一种数据处理方法。图3是根据本发明实施例的一种数据处理方法的示意图,如图3所示,该方法包括如下流程:
1.数据预处理
内存数据库所有节点访问rdbms关系型数据库,按照应用需求,标记出需要加载的数据。根据内存数据库分片算法,根据表中记录值的主键或者分片键计算每张表中每一条数据所映射的节点id,并在表中最后一列进行标记。
2.加载数据
分布式缓存节点根据标记的节点id查询本节点需要加载的数据,并进行加载,多个节点可以对同一个表的数据进行查询,由于每个节点加载的数据不同,可以实现同一张表在多个节点的并行加载。
3.批处理逻辑计算
数据加载到分布式缓存中,在缓存中进行分布式并行计算,实现批处理逻辑。
4.数据后处理
数据处理后,分布式缓存每个节点对数据进行清理。
其中,上述步骤都可以由多节点同时进行并行处理,大大提高处理效率。
相比单表单节点加载方式,本发明实施例提供的数据与节点映射算法,使得多线程可以并行对单表单中的每一条数据进行标记,后续节点根据标记的节点id加载需要映射到自己节点的数据。整个过程都是多线程并行处理,大大加快了数据加载的效率。
本发明实施例还提供了一种电子装置,该电子装置包括处理器和存储器;电子装置中处理器的数量可以是一个或多个,存储器作为一种计算机可读存储介质,可用于存储计算机可执行程序。处理器通过运行存储在存储器中的软件程序、指令,从而执行电子装置的各种功能应用以及数据处理,即实现上述任一实施例中的方法。
本申请实施例还提供一种包含计算机可执行指令的存储介质,计算机可执行指令在由计算机处理器执行时实现上述任一实施例中的方法。
可选的,处理器通过执行指令以实现一种数据获取方法,该方法包括:
s1,获取表单中的数据对应的节点标识;
s2,根据该节点标识确定该表单中的目标数据;
s3,获取该目标数据。
以上仅为本申请的示例性实施例而已,并非用于限定本申请的保护范围。
一般来说,本申请的多种实施例可以在硬件或专用电路、软件、逻辑或其任何组合中实现。例如,一些方面可以被实现在硬件中,而其它方面可以被实现在可以被控制器、微处理器或其它计算装置执行的固件或软件中,尽管本申请不限于此。
本申请的实施例可以通过移动装置的数据处理器执行计算机程序指令来实现,例如在处理器实体中,或者通过硬件,或者通过软件和硬件的组合。计算机程序指令可以是汇编指令、指令集架构(isa)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码。
本申请附图中的任何逻辑流程的框图可以表示程序步骤,或者可以表示相互连接的逻辑电路、模块和功能,或者可以表示程序步骤与逻辑电路、模块和功能的组合。计算机程序可以存储在存储器上。存储器可以具有任何适合于本地技术环境的类型并且可以使用任何适合的数据存储技术实现,例如但不限于只读存储器(rom)、随机访问存储器(ram)、光存储器装置和系统(数码多功能光碟dvd或cd光盘)等。计算机可读介质可以包括非瞬时性存储介质。数据处理器可以是任何适合于本地技术环境的类型,例如但不限于通用计算机、专用计算机、微处理器、数字信号处理器(dsp)、专用集成电路(asic)、可编程逻辑器件(fgpa)以及基于多核处理器架构的处理器。
通过示范性和非限制性的示例,上文已提供了对本申请的示范实施例的详细描述。但结合附图和权利要求来考虑,对以上实施例的多种修改和调整对本领域技术人员来说是显而易见的,但不偏离本发明的范围。因此,本发明的恰当范围将根据权利要求确定。
1.一种数据获取方法,其特征在于,包括:
获取表单中的数据对应的节点标识;
根据所述节点标识确定所述表单中的目标数据;
获取所述目标数据。
2.如权利要求1所述的方法,其中,在获取表单中的数据对应的节点标识之前,还包括:
配置所述表单中的数据对应的节点标识。
3.如权利要求2所述的方法,其中,所述配置所述表单中的数据对应的节点标识,包括:
根据所述表单中的主键或者分片键配置所述表单中的每一条数据对应的节点标识。
4.如权利要求1-3中任一项所述的方法,其特征在于,所述获取所述目标数据,包括:将所述目标数据加载到分布式缓存中,并在所述分布式缓存中对所述目标数据进行处理。
5.一种数据获取装置,其特征在于,包括第一获取模块、确定模块和第二获取模块,其中,
所述第一获取模块,用于获取表单中的数据对应的节点标识;
所述确定模块,用于根据所述节点标识确定所述表单中的目标数据;
所述第二获取模块,用于获取所述目标数据。
6.如权利要求5所述的装置,所述装置还包括配置模块,其中,
所述配置模块,用于配置所述表单中的数据对应的节点标识。
7.如权利要求6所述的方法,其中,所述配置模块,用于根据所述表单中的主键或者分片键配置所述表单中的每一条数据对应的节点标识。
8.如权利要求5-7中任一项所述的装置,其特征在于,所述第二获取模块,用于将所述目标数据加载到分布式缓存中,并在所述分布式缓存中对所述目标数据进行处理。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1-4中任一项所述的方法。
10.一种电子装置,包括存储器和处理器,其特征在于,所述处理器通过执行所述存储器中的计算机程序实现如权利要求1-4中任一项所述的方法。
技术总结