CN115495463A - 一种数据处理方法、装置、智能设备及存储介质 - Google Patents
一种数据处理方法、装置、智能设备及存储介质 Download PDFInfo
- Publication number
- CN115495463A CN115495463A CN202211151466.2A CN202211151466A CN115495463A CN 115495463 A CN115495463 A CN 115495463A CN 202211151466 A CN202211151466 A CN 202211151466A CN 115495463 A CN115495463 A CN 115495463A
- Authority
- CN
- China
- Prior art keywords
- data
- database
- processed
- updated
- primary key
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Computing Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请实施例公开了一种数据处理方法、装置、智能设备及存储介质,本申请实施例可以获取待处理数据;解析待处理数据,得到待处理数据的数据类型,所述数据类型包括查询类型与更新类型;根据数据类型将待处理数据进行划分,得到归属于查询类型的第一待处理数据与归属于更新类型的第二待处理数据;将第一待处理数据存储至第一数据库,将第二待处理数据存储至第二数据库;设置第一待处理数据在第一数据库中的第一主键,以及设置第二待处理数据在第二数据库中的第二主键;根据第一主键与第二主键将所述第一待处理数据与所述第二待处理数据进行关联。解决了数据库无法兼顾查询性能与更新性能导致数据处理效率低的问题,提高了数据处理效率。
Description
技术领域
本申请涉及数据处理技术领域,具体涉及一种数据处理方法、装置、智能设备及存储介质。
背景技术
当今是一个大数据应用的时代,用户的数据量越来越大,传统的数据库查询经常会遇到查询的性能问题。查询性能较好的数据库由于会用到大量的索引关系,因此更新其中某个数据时会需要对应更新大量与该数据有关系的其他数据,因此查询性能较好的数据库的更新性能不理想,这样导致数据库的更新和查询性能不能很好地兼顾,从而导致数据处理效率低。
发明内容
本申请实施例提供一种数据处理方法、装置、智能设备及存储介质,可以提高数据处理效率。
为解决上述技术问题,本申请实施例提供以下技术方案:
本申请实施例提供了一种数据处理方法,包括:
获取待处理数据;
解析所述待处理数据,得到所述待处理数据的数据类型,所述数据类型包括查询类型与更新类型;
根据所述数据类型将所述待处理数据进行划分,得到归属于所述查询类型的第一待处理数据与归属于所述更新类型的第二待处理数据;
将所述第一待处理数据存储至第一数据库,将所述第二待处理数据存储至第二数据库;
设置所述第一待处理数据在所述第一数据库中的第一主键,以及设置所述第二待处理数据在所述第二数据库中的第二主键;
根据所述第一主键与所述第二主键建立关联关系,以将所述第一待处理数据与所述第二待处理数据进行关联。
在一实施方式中,所述根据所述第一主键与所述第二主键建立关联关系,以将所述第一待处理数据与所述第二待处理数据进行关联之后,所述方法还包括:
基于接收到的查询请求,在所述第一数据库中进行查询,得到第一查询数据;
获取所述所述第一查询数据对应的第一主键;
通过所述第一主键以及所述第一主键与所述第二主键的关联关系,从所述第二数据库中获取与所述第二主键关联的第二查询数据;
将所述第一查询数据与所述第二查询数据进行拼接,得到目标查询数据,并输出所述目标查询数据。
在一实施方式中,所述根据所述第一主键与所述第二主键建立关联关系,以将所述第一待处理数据与所述第二待处理数据进行关联之后,所述方法还包括:
基于接收到的更新请求获取所述更新请求对应的待更新数据的更新主键,所述更新主键包括第一主键以及第二主键中的至少一种,所述待更新数据包括查询类型的第一待更新数据以及更新类型的第二待更新数据中的至少一种;
根据所述更新主键更新所述第二数据库中的第二待更新数据以及所述第一数据库中的第一待更新数据中的至少一种。
在一实施方式中,所述根据所述更新主键更新所述第二数据库中的第二待更新数据以及所述第一数据库中的第一待更新数据中的至少一种,包括:
根据所述第二主键更新所述第二数据库中的所述第二待更新数据,并向第一数据库发送实时更新通知;
通过所述第一数据库基于接收到的实时更新通知,更新所述第一待更新数据。
在一实施方式中,所述设置所述第一待处理数据在所述第一数据库中的第一主键,以及设置所述第二待处理数据在所述第二数据库中的第二主键之后,包括:
将所述第一待处理数据备份至所述第二数据库中,得到备份数据;
所述通过所述第一数据库基于接收到的实时更新通知,更新所述第一待更新数据之后,所述方法还包括:
判断所述第一数据库中的第一待更新数据是否更新成功;
若未更新成功,则更新所述第二数据库中的所述备份数据,得到所述备份数据对应的更新后数据;
获取定时更新时间点以及当前时间;
在当前时间达到所述定时更新时间点时,将所述更新后数据同步至所述第一数据库中,以更新所述第一数据库中的所述第一待更新数据。
在一实施方式中,所述设置所述第一待处理数据在所述第一数据库中的第一主键,以及设置所述第二待处理数据在所述第二数据库中的第二主键之后,包括:
将所述第一待处理数据备份至所述第二数据库中,得到备份数据;
所述根据所述更新主键更新所述第二数据库中的第二待更新数据以及所述第一数据库中的第一待更新数据中的至少一种,包括:
根据所述第二主键更新所述第二数据库中的所述第二待更新数据,以及更新所述第二数据库中的所述备份数据,得到所述备份数据对应的更新后数据;
获取定时更新时间点以及当前时间;
在当前时间达到所述定时更新时间点时,将所述更新后数据同步至所述第一数据库中,以更新所述第一数据库中的所述第一待更新数据。
在一实施方式中,所述在当前时间达到所述定时更新时间点时,将所述更新后数据同步至所述第一数据库中,以更新所述第一数据库中的所述第一待更新数据之后,包括:
判断所述第一数据库中的第一待更新数据是否更新成功;
若未更新成功,则获取下一次定时更新时间点以及当前时间;
在当前时间达到所述下一次定时更新时间点时,将所述更新后数据同步至所述第一数据库中,以更新所述第一数据库中的所述第一待更新数据。
根据本申请的一个方面,还提供了一种数据处理装置,包括:
获取模块,用于获取待处理数据;
解析模块,用于解析所述待处理数据,得到所述待处理数据的数据类型,所述数据类型包括查询类型与更新类型;
划分模块,用于根据所述数据类型将所述待处理数据进行划分,得到归属于所述查询类型的第一待处理数据与归属于所述更新类型的第二待处理数据;
存储模块,用于将所述第一待处理数据存储至第一数据库,将所述第二待处理数据存储至第二数据库;
设置模块,用于设置所述第一待处理数据在所述第一数据库中的第一主键,以及设置所述第二待处理数据在所述第二数据库中的第二主键;
关联模块,用于根据所述第一主键与所述第二主键建立关联关系,以将所述第一待处理数据与所述第二待处理数据进行关联。
根据本申请的一个方面,还提供了一种智能设备,包括处理器和存储器,所述存储器中存储有计算机程序,所述处理器调用所述存储器中的计算机程序时执行本申请实施例提供的任一种数据处理方法。
根据本申请的一个方面,还提供了一种存储介质,所述存储介质用于存储计算机程序,所述计算机程序被处理器加载,以执行本申请实施例提供的任一种数据处理方法。
本申请实施例可以获取待处理数据;解析所述待处理数据,得到所述待处理数据的数据类型,所述数据类型包括查询类型与更新类型;根据所述数据类型将所述待处理数据进行划分,得到归属于所述查询类型的第一待处理数据与归属于所述更新类型的第二待处理数据;将所述第一待处理数据存储至第一数据库,将所述第二待处理数据存储至第二数据库;设置所述第一待处理数据在所述第一数据库中的第一主键,以及设置所述第二待处理数据在所述第二数据库中的第二主键;根据所述第一主键与所述第二主键建立关联关系,以将所述第一待处理数据与所述第二待处理数据进行关联。这样将待处理数据划分后,对于用于搜索的搜索类型的第一待处理数据,可以存储在第一数据库中以支持频繁查询,对于不需要用于搜索的更新类型的第二待处理数据,可以存储在第二数据库中以支持频繁更新,将待处理数据划分存储到两种数据库中可以有效避免数据库不能同时兼顾查询性能与更新性能的问题,而将划分后存储在第一数据库中的第一待处理数据与存储在第二数据库中的第二待处理数据通过主键关联,可以同时利用两种数据库的查询性能与更新性能,从而可以兼顾数据库的更新和查询性能,提高数据处理效率。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的数据处理方法的流程示意图;
图2是本申请实施例提供的数据处理方法的另一流程示意图;
图3是本申请实施例提供的数据处理方法的另一流程示意图;
图4是本申请实施例提供的数据处理装置的示意图;
图5是本申请实施例提供的智能设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请实施例提供一种数据处理方法、装置、智能设备及存储介质(即计算机可读存储介质)。其中,数据处理方法可以应用于数据处理装置,该数据处理装置具体可以集成在智能设备中,该智能设备可以与服务器或终端等进行通信连接,该服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络(Content Delivery Network,CDN)、以及大数据和人工智能平台等基础云计算服务的云服务器,但并不局限于此。服务器与终端之间可以通过有线或无线通信方式进行直接或间接地连接,本申请在此不做限制。该终端可以是手机、电脑、家电设备、或者可穿戴设备等。
以下分别进行详细说明。需说明的是,以下实施例的描述顺序不作为对实施例优选顺序的限定。
在本实施例中,将从智能设备的角度进行描述,请参阅图1,图1是本申请一实施例提供的数据处理方法的流程示意图。该数据处理方法可以包括:
S101、获取待处理数据。
其中,待处理数据可以是指需要存储在数据库中用于后续查询处理或更新处理或者可以进行其他处理的数据,比如员工信息中的姓名、身份证号、身高、体重、年龄、性别、籍贯、学历以及工作经历等数据,或者储户信息中的姓名、身份证号、年龄、性别以及存入支出账单明细等数据。待处理数据中的部分数据一般较为固定,不会轻易更新,这部分数据常用来进行数据查询处理,比如员工信息或者储户信息中的姓名数据或者身份证号数据可以用来查询该员工或者储户的信息,而待处理数据中的另外部分数据一般会经常发生更新,这部分数据常用来进行数据更新处理。
需要说明的是,由于一般情况下查询性能较好的数据库由于会用到大量的索引关系,因此更新其中某个数据时会需要对应更新大量与该数据对应的索引关系以及与该数据有关系的其他数据,因此查询性能较好的数据库的更新性能会不太理想,这样数据库不容易兼顾数据的查询性能与更新性能,导致数据库的数据处理效率低的问题,本申请实施例针对该问题可以将待处理数据中的用于查询的数据与用于更新的数据分开在不同的数据库中存储并关联,从而可以兼顾数据库的查询性能与更新性能,进而提高数据处理效率。这样待处理数据可以是由用户输入到智能设备后,由智能设备先暂时缓存在一个临时存储器中,之后智能设备再从临时存储器中获取待处理数据,并将待处理数据进行划分存储在不同的数据库中。也可以是智能设备在获取到用户输入的待处理数据后,直接对待处理数据进行划分存储在不同的数据库中。本实施例中数据处理方法的执行主体可以是智能设备,也可以是与智能设备连接的服务器。
例如,智能设备获取用户输入的待处理数据。
S102、解析待处理数据,得到待处理数据的数据类型。
其中,数据类型包括查询类型与更新类型。待处理数据的数据类型可以是待处理数据预先自定义设置过的。
例如将待处理数据中不容易变化的,用于标识待处理数据身份的数据定义为查询类型的数据,将待处理数据中按照以往经验将经常发生更新的数据定义为更新类型的数据。可以对不同的数据类型的待处理数据定义不同的标识信息,从而方便智能设备在获取到待处理数据后可以根据待处理数据的标识信息确定待处理数据的数据类型。
S103、根据数据类型将待处理数据进行划分,得到归属于查询类型的第一待处理数据与归属于更新类型的第二待处理数据。
例如,在得到待处理数据的数据类型后,将数据类型为查询类型的数据划分为第一待处理数据,将数据类型为更新类型的数据划分为第二待处理数据。从而方便将待处理数据中的数据分开存储到不同的数据库中以利用不同数据库的特性,提高数据处理效率。
S104、将第一待处理数据存储至第一数据库,将第二待处理数据存储至第二数据库。
其中,第一数据库与第二数据库可以设置在智能设备中,也可以设置在于智能设备连接的服务器中。第一数据库可以是查询性能较好的数据库,例如搜索服务器(ES,ElasticSearch),该数据库可以通过HTTP使用JSON进行数据索引,该数据库是一个分布式、高扩展、高实时的搜索与数据分析引擎,能很方便的使大量数据具有搜索、分析和探索的能力。也就是说第一数据库可以是查询性能较好的数据库服务器,可以用来存储查询类型的第一待处理数据,从而便于智能设备通过第一数据库快速查询到第一待处理数据。第二数据库可以是更新性能较好的数据库,例如关系型数据库(MySQL),该关系型数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。更新性能较好的第二数据库可以用来存储更新类型的第二待处理数据,从而便于智能设备通过第二数据库快速更新第二待处理数据。
例如,智能设备将待处理数据通过数据类型划分为查询类型的第一待处理数据以及更新类型的第二待处理数据,然后将待处理数据中用于查询的第一待处理数据存储到方便查询的第一数据库中,将用于非查询或者说用于更新的第二待处理数据存储到方便更新的第二数据库中,从而可以利用第一数据库的优异的查询性能与第二数据库优异的更新性能,更好得对待处理数据进行处理。
S105、设置第一待处理数据在第一数据库中的第一主键,以及设置第二待处理数据在第二数据库中的第二主键。
其中,主键是指数据库主键,第一主键是指第一数据库中用于索引第一待处理数据的唯一标识,第二主键是指第二数据库中用于索引第二待处理数据的唯一标识。
例如,智能设备在将第一待处理数据存储到第一数据库后,对第一待处理数据设置在第一数据库中唯一的标识,即第一主键。智能设备在将第二待处理数据存储到第二数据库后,对第二待处理数据设置在第二数据库中唯一的标识,即第二主键。
S106、根据第一主键与第二主键建立关联关系,以将第一待处理数据与第二待处理数据进行关联。
其中,第一主键与第二主键的关联关系可以是指第一主键与第二主键相同,也可以是指第一主键与第二主键进行绑定。
例如,将第一主键与第二主键进行绑定,从而将第一数据库中的第一待处理数据与第二待处理数据进行关联。或者将第一数据库中的第一待处理数据对应的第一主键与第二数据库中的第二待处理数据对应的第二主键设置为相同的字段,这样可以通过同一个主键可以查询到两个数据库中不同类型的数据,从而将第一待处理数据与第二待处理数据进行关联。
在本实施例提供的技术方案中,智能设备可以获取待处理数据;解析待处理数据,得到待处理数据的数据类型,数据类型包括查询类型与更新类型;根据数据类型将待处理数据进行划分,得到归属于查询类型的第一待处理数据与归属于更新类型的第二待处理数据;将第一待处理数据存储至第一数据库,将第二待处理数据存储至第二数据库;设置第一待处理数据在第一数据库中的第一主键,以及设置第二待处理数据在第二数据库中的第二主键;根据第一主键与第二主键建立关联关系,以将第一待处理数据与第二待处理数据进行关联。这样将待处理数据划分后,对于用于搜索的搜索类型的第一待处理数据,可以存储在第一数据库中以支持频繁查询,对于不需要用于搜索的更新类型的第二待处理数据,可以存储在第二数据库中以支持频繁更新,将待处理数据划分存储到两种数据库中可以有效避免数据库不能同时兼顾查询性能与更新性能的问题,而将划分后存储在第一数据库中的第一待处理数据与存储在第二数据库中的第二待处理数据通过主键关联,可以同时利用两种数据库的查询性能与更新性能,从而可以兼顾数据库的更新和查询性能,提高数据处理效率。
基于上述实施例,参照图2,图2是本申请实施例提供的数据处理方法的另一流程示意图。其中,根据第一主键与第二主键建立关联关系,以将第一待处理数据与第二待处理数据进行关联之后,方法还可以包括:
S11、基于接收到的查询请求,在第一数据库中进行查询,得到第一查询数据。
其中,查询请求是指针对目标查询数据的查询请求,该目标查询数据中包括查询类型的第一查询数据以及非查询类型的第二查询数据,该查询类型的第一查询数据存储在查询性能较好的第一数据库中,非查询类型的第二查询数据存储在更新性能较好的第二数据库中。
因此,智能设备在接收到查询请求时,通过查询性能较好的第一数据库响应该查询请求,以查询该查询请求对应的第一查询数据,从而提高查询效率。
S12、获取第一查询数据对应的第一主键。
其中,该第一主键为第一查询数据对应的唯一标识,因此可以通过第一查询数据确定第一主键。
例如,在查询到第一查询数据后,可以获取第一数据库中与第一查询数据对应的第一主键,从而方便基于该第一主键以及第一主键与第二主键的关联关系,从第二数据库中获取与第二主键关联的第二查询数据。
S13、通过第一主键以及第一主键与第二主键的关联关系,从第二数据库中获取与第二主键关联的第二查询数据。
其中,第一主键与第二主键可以是绑定关系,也可以是第一主键与第二主键相同。
例如,若第一主键与第二主键相同,则可以通过第一主键从第二数据库中获取与第一主键关联的第二查询数据。若第一主键与第二主键为绑定关系,则可以根据第一主键以及第一主键与第二主键的绑定关系确定第二主键,根据第二主键从第二数据库中获取第二查询数据。
S14、将第一查询数据与第二查询数据进行拼接,得到目标查询数据,并输出目标查询数据。
例如,智能设备可以将第一查询数据与当然查询数据组装成完整的目标查询数据后,输出到智能设备的显示界面。
在本实施例提供的技术方案中,智能设备基于接收到的查询请求在第一数据库中进行查询,得到第一查询数据;获取第一查询数据对应的第一主键;通过第一主键以及第一主键与第二主键的关联关系,从第二数据库中获取与第二主键关联的第二查询数据;将第一查询数据与第二查询数据进行拼接,得到目标查询数据,并输出目标查询数据。这样智能设备在查询数据时可以通过查询性能较好的第一数据库查询快速查询到目标查询数据中用于查询的第一查询数据,并在查询到第一查询数据后,可以通过第一查询数据对应的第一主键从第二数据库中查询与该第一主键关联的第二主键对应的第二查询数据,并将第一查询数据与第二查询数据拼接得到目标查询数据后输出目标查询数据,提高了数据查询效率。
基于上述实施例,参照图3,图3是本申请实施例提供的数据处理方法的另一流程示意图。其中,根据第一主键与第二主键建立关联关系,以将第一待处理数据与第二待处理数据进行关联之后,数据处理方法还可以包括:
S21、基于接收到的更新请求获取更新请求对应的待更新数据的更新主键,更新主键包括第一主键以及第二主键中的至少一种,待更新数据包括查询类型的第一待更新数据以及更新类型的第二待更新数据中的至少一种;
其中,更新请求对应的待更新数据可以是更新类型的数据部分,也可以是更新类型的数据部分以及查询类型的数据部分。若待更新数据包括更新类型的第二待更新数据,则更新主键包括第二主键。若待更新数据包括查询类型的第一待更新数据,则更新主键包括第一主键。若待更新数据包括查询类型的第一待更新数据以及更新类型的第二待更新数据,则更新主键包括第一主键以及第二主键。
S22、根据更新主键更新第二数据库中的第二待更新数据以及第一数据库中的第一待更新数据中的至少一种。
例如,智能设备可以根据第一主键更新第一数据库中的第一待更新数据和/或根据第二主键更新第二数据库中的第二待更新数据。
可选地,在一实施例中,根据更新主键更新第二数据库中的第二待更新数据以及第一数据库中的第一待更新数据中的至少一种,可以包括:
S221、根据第二主键更新第二数据库中的第二待更新数据,并向第一数据库发送实时更新通知;
其中,实时更新通知可以包括与第二主键关联的第一主键。该实时更新通知可以是mq或者http形式的实时通知消息。
在本实施例中,如果对于查询类型的第一待更新数据的实时性要求较高,则需要在对第二数据库中更新类型的第二待更新数据更新后,需要通过实时更新通知对第一数据库中查询类型的第一待更新数据进行实时更新。
例如,若智能设备接收到的更新请求对应的待更新数据包括查询类型的第一待更新数据以及更新类型的第二待更新数据,那么可以先根据第二主键更新第二数据库中的第二待更新数据,然后根据第二主键获取第一主键,根据第一主键生成实时更新通知,并将实时更新通知发送至第一数据库中。
S222、通过第一数据库基于接收到的实时更新通知,更新第一待更新数据。
例如,智能设备通过第一数据库接收到的实时更新通知获取第一主键,根据第一主键确定第一待更新数据,并更新该第一待更新数据。
在一实施例中,设置第一待处理数据在第一数据库中的第一主键,以及设置第二待处理数据在第二数据库中的第二主键之后,包括:将第一待处理数据备份至第二数据库中,得到备份数据。
需要说明的是,由于第一数据库是查询性能较好的数据库,而第一数据库的更新性能可能并不理想,因此在通过第二数据库发送的实时更新通知,更新第一数据库的过程中,可能会存在更新失败的问题,甚至导致第一待更新数据丢失的问题,为了解决这个问题,在本实施例中,可以在预先存储待处理数据中查询类型的第一待处理数据时,在第二数据库中备份该查询类型的第一待处理数据,得到备份数据,从而可以在出现第一数据库中的查询类型的数据更新失败时,可以通过备份数据重新对第一数据库中查询类型的数据进行更新。
通过第一数据库基于接收到的实时更新通知,更新第一待更新数据之后,方法还包括:
S1、判断第一数据库中的第一待更新数据是否更新成功。
可选地,若第一待更新数据更新成功,则会生成数据更新成功对应的更新标识信息,并将该更新标识信息存储在第一数据库中。这样智能设备可以通过检测第一数据库中的更新标识信息判断第一数据库中的第一待更新数据是否更新成功。若检测到该更新标识信息,则判定第一数据库中的第一待更新数据更新成功;若未检测到该更新标识信息,则判定第一数据库中的第一待更新数据未更新成功。
S2、若未更新成功,则更新第二数据库中的备份数据,得到备份数据对应的更新后数据。
可以理解的是,若第一数据库中的查询类型的第一待更新数据未更新成功,那么可以通过对更新性能较好的第二数据库中备份的查询类型的备份数据进行更新得到备份数据对应的更新后数据,这样在第二数据库中可以实现对待更新数据的整体更新,得到更新后整体数据。
S3、获取定时更新时间点以及当前时间;
S4、在当前时间达到定时更新时间点时,将更新后数据同步至第一数据库中,以更新第一数据库中的第一待更新数据。
进一步地,为了方便之后对更新后整体数据的进行查询处理,可以定时将第二数据库中的备份数据进行更新后得到的更新后数据同步传输至第一数据库中,以实现对第一数据库中第一待更新数据的更新。
在本实施例中,智能设备在对待更新数据进行更新时,可以先将待更新数据中存储在第二数据库中的更新类型的第二待更新数据进行更新后,通过第一主键生成的实时更新通知,对第一数据库中的查询类型的第一待更新数据进行更新,由于第二数据库的更新性能较好,且第二数据库中存储的待更新数据均为更新类型的数据,也就是说第二数据库中的第二待更新数据更支持频繁地进行更新,因此可以提高待更新数据的更新效率。
可选地,在另一实施例中,设置第一待处理数据在第一数据库中的第一主键,以及设置第二待处理数据在第二数据库中的第二主键之后,可以包括:将第一待处理数据备份至第二数据库中,得到备份数据;
可选地,在一实施例中,根据更新主键更新第二数据库中的第二待更新数据以及第一数据库中的第一待更新数据中的至少一种,可以包括:
S223、根据第二主键更新第二数据库中的第二待更新数据,以及更新第二数据库中的备份数据,得到备份数据对应的更新后数据。
在本实施例中,如果对于查询类型的第一待更新数据的实时性要求不高,可以通过定时更新第一数据库中的查询类型的第一待更新数据。
S224、获取定时更新时间点以及当前时间;
S225、在当前时间达到定时更新时间点时,将更新后数据同步至第一数据库中,以更新第一数据库中的第一待更新数据。
在一实施例中,在当前时间达到定时更新时间点时,将更新后数据同步至第一数据库中,以更新第一数据库中的第一待更新数据之后,可以包括:
S5、判断第一数据库中的第一待更新数据是否更新成功。
可选地,若第一待更新数据更新成功,则会生成数据更新成功对应的更新标识信息,并将该更新标识信息存储在第一数据库中。这样智能设备可以通过检测第一数据库中的更新标识信息判断第一数据库中的第一待更新数据是否更新成功。若检测到该更新标识信息,则判定第一数据库中的第一待更新数据更新成功;若未检测到该更新标识信息,则判定第一数据库中的第一待更新数据未更新成功。
S6、若未更新成功,则获取下一次定时更新时间点以及当前时间;
S7、在当前时间达到下一次定时更新时间点时,将更新后数据同步至第一数据库中,以更新第一数据库中的第一待更新数据。
在本实施例中,若对第一数据库中查询类型的第一待更新数据未更新成功,那么可以等待下次定时更新时间点到达时再次将第二数据库中更新后数据同步至第一数据库中,直至判断第一数据库中的第一待更新数据更新成功。
在本实施例提供的技术方案中,智能设备在对待更新数据进行更新的过程中,对于需要搜索的查询类型的数据,且需要及时更新的,可以在第二数据库中的第二待更新数据更新完成后,采用实时通知的方法,通知第一数据库中对应的第一待更新数据进行实时更新,而对于需要搜索的查询类型的数据,且不需要及时更新的,可以采用定时任务同步的方法,也就是在第二数据库中的第二待更新数据更新完成后,对第二数据库中备份的查询类型的第一待更新数据进行更新,得到更新后数据,并在到达定时时间点时,将更新后数据同步更新到第一数据库中。这样通过更新性能较好的第二数据库对第二待更新数据进行快速更新,可以提高数据更新效率。
为便于更好的实施本申请实施例提供的数据处理方法,本申请实施例还提供一种基于上述数据处理方法的装置。其中名词的含义与上述数据处理方法中相同,具体实现细节可以参考方法实施例中的说明。
请参阅图4,图4为本申请实施例提供的数据处理装置的结构示意图,其中该数据处理装置300可以包括获取模块301、解析模块302、划分模块303、存储模块304、设置模块305以及关联模块306等。
其中,获取模块301,用于获取待处理数据;
解析模块302,用于解析待处理数据,得到待处理数据的数据类型,数据类型包括查询类型与更新类型;
划分模块303,用于根据数据类型将待处理数据进行划分,得到归属于查询类型的第一待处理数据与归属于更新类型的第二待处理数据;
存储模块304,用于将第一待处理数据存储至第一数据库,将第二待处理数据存储至第二数据库;
设置模块305,用于设置第一待处理数据在第一数据库中的第一主键,以及设置第二待处理数据在第二数据库中的第二主键;
关联模块306,用于根据第一主键与第二主键建立关联关系,以将第一待处理数据与第二待处理数据进行关联。
可选地,数据处理装置300还可以包括:
查询模块,用于基于接收到的查询请求,在第一数据库中进行查询,得到第一查询数据;
第三获取模块,用于获取第一查询数据对应的第一主键;
第四获取模块,用于通过第一主键以及第一主键与第二主键的关联关系,从第二数据库中获取与第二主键关联的第二查询数据;
拼接模块,用于将第一查询数据与第二查询数据进行拼接,得到目标查询数据,并输出目标查询数据。
第五获取模块,用于基于接收到的更新请求获取更新请求对应的待更新数据的更新主键,更新主键包括第一主键以及第二主键中的至少一种,待更新数据包括查询类型的第一待更新数据以及更新类型的第二待更新数据中的至少一种;
第一更新模块,用于根据更新主键更新第二数据库中的第二待更新数据以及第一数据库中的第一待更新数据中的至少一种。
第二更新模块,用于根据第二主键更新第二数据库中的第二待更新数据,并向第一数据库发送实时更新通知;
第三更新模块,用于通过第一数据库基于接收到的实时更新通知,更新第一待更新数据。
备份模块,用于将第一待处理数据备份至第二数据库中,得到备份数据;
第一判断模块,用于判断第一数据库中的第一待更新数据是否更新成功;
第四更新模块,用于若未更新成功,则更新第二数据库中的备份数据,得到备份数据对应的更新后数据;
第六获取模块,用于获取定时更新时间点以及当前时间;
第一同步模块,用于在当前时间达到定时更新时间点时,将更新后数据同步至第一数据库中,以更新第一数据库中的第一待更新数据。
第五更新模块,用于根据第二主键更新第二数据库中的第二待更新数据,以及更新第二数据库中的备份数据,得到备份数据对应的更新后数据;
第七获取模块,用于获取定时更新时间点以及当前时间;
第二同步模块,用于在当前时间达到定时更新时间点时,将更新后数据同步至第一数据库中,以更新第一数据库中的第一待更新数据。
第二判断模块,用于判断第一数据库中的第一待更新数据是否更新成功;
第八获取模块,用于若未更新成功,则获取下一次定时更新时间点以及当前时间;
第三同步模块,用于在当前时间达到下一次定时更新时间点时,将更新后数据同步至第一数据库中,以更新第一数据库中的第一待更新数据。
在本实施例提供的数据处理装置中,第一获取模块301,用于获取待处理数据;解析模块302,用于解析待处理数据,得到待处理数据的数据类型,数据类型包括查询类型与更新类型;划分模块303,用于根据数据类型将待处理数据进行划分,得到归属于查询类型的第一待处理数据与归属于更新类型的第二待处理数据;存储模块304,用于将第一待处理数据存储至第一数据库,将第二待处理数据存储至第二数据库;设置模块305,用于设置第一待处理数据在第一数据库中的第一主键,以及设置第二待处理数据在第二数据库中的第二主键;关联模块306,用于根据第一主键与第二主键建立关联关系,以将第一待处理数据与第二待处理数据进行关联。这样将待处理数据划分后,对于用于搜索的搜索类型的第一待处理数据,可以存储在第一数据库中以支持频繁查询,对于不需要用于搜索的更新类型的第二待处理数据,可以存储在第二数据库中以支持频繁更新,将待处理数据划分存储到两种数据库中可以有效避免数据库不能同时兼顾查询性能与更新性能的问题,而将划分后存储在第一数据库中的第一待处理数据与存储在第二数据库中的第二待处理数据通过主键关联,可以同时利用两种数据库的查询性能与更新性能,从而可以兼顾数据库的更新和查询性能,提高数据处理效率。
本申请实施例还提供一种智能设备,该智能设备可以是手机或计算机等设备,如图5所示,其示出了本申请实施例所涉及的智能设备的结构示意图,具体来讲:
该智能设备可以包括一个或者一个以上处理核心的处理器401、一个或一个以上计算机可读存储介质的存储器402、电源403和输入单元404等部件。本领域技术人员可以理解,图5中示出的智能设备结构并不构成对智能设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。其中:
处理器401是该智能设备的控制中心,利用各种接口和线路连接整个智能设备的各个部分,通过运行或执行存储在存储器402内的软件程序和/或模块,以及调用存储在存储器402内的数据,执行智能设备的各种功能和处理数据,从而对智能设备进行整体监控。可选的,处理器401可包括一个或多个处理核心;优选的,处理器401可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器401中。
存储器402可用于存储软件程序以及模块,处理器401通过运行存储在存储器402的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器402可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据智能设备的使用所创建的数据等。此外,存储器402可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器402还可以包括存储器控制器,以提供处理器401对存储器402的访问。
智能设备还包括给各个部件供电的电源403,优选的,电源403可以通过电源管理系统与处理器401逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。电源403还可以包括一个或一个以上的直流或交流电源、再充电系统、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。
该智能设备还可包括输入单元404,该输入单元404可用于接收输入的数字或字符信息,以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。
尽管未示出,智能设备还可以包括显示单元等,在此不再赘述。具体在本实施例中,智能设备中的处理器401会按照如下的指令,将一个或一个以上的应用程序的进程对应的可执行文件加载到存储器402中,并由处理器401来运行存储在存储器402中的应用程序,从而实现各种功能,如下:
获取待处理数据;解析待处理数据,得到待处理数据的数据类型,数据类型包括查询类型与更新类型;根据数据类型将待处理数据进行划分,得到归属于查询类型的第一待处理数据与归属于更新类型的第二待处理数据;将第一待处理数据存储至第一数据库,将第二待处理数据存储至第二数据库;设置第一待处理数据在第一数据库中的第一主键,以及设置第二待处理数据在第二数据库中的第二主键;根据第一主键与第二主键建立关联关系,以将第一待处理数据与第二待处理数据进行关联。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见上文针对数据处理方法的详细描述,此处不再赘述。
根据本申请的一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。智能设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该智能设备执行上述实施例中各种可选实现方式中提供的方法。
本领域普通技术人员可以理解,上述实施例的各种方法中的全部或部分步骤可以通过计算机指令来完成,或通过计算机指令控制相关的硬件来完成,该计算机指令可以存储于一存储介质中并由处理器进行加载和执行,该存储介质为计算机可读存储介质。为此,本申请实施例提供一种存储介质,其中存储有计算机程序,计算机程序可以包括计算机指令,该计算机程序能够被处理器进行加载,以执行本申请实施例所提供的任一种数据处理方法。
以上各个操作的具体实施可参见前面的实施例,在此不再赘述。
其中,该存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取记忆体(RAM,Random Access Memory)、磁盘或光盘等。
由于该存储介质中所存储的计算机指令,可以执行本申请实施例所提供的任一种数据处理方法,因此,可以实现本申请实施例所提供的任一种数据处理方法所能实现的有益效果,详见前面的实施例,在此不再赘述。
以上对本申请实施例所提供的一种数据处理方法、装置、智能设备及存储介质进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
Claims (10)
1.一种数据处理方法,其特征在于,所述方法包括:
获取待处理数据;
解析所述待处理数据,得到所述待处理数据的数据类型,所述数据类型包括查询类型与更新类型;
根据所述数据类型将所述待处理数据进行划分,得到归属于所述查询类型的第一待处理数据与归属于所述更新类型的第二待处理数据;
将所述第一待处理数据存储至第一数据库,将所述第二待处理数据存储至第二数据库;
设置所述第一待处理数据在所述第一数据库中的第一主键,以及设置所述第二待处理数据在所述第二数据库中的第二主键;
根据所述第一主键与所述第二主键建立关联关系,以将所述第一待处理数据与所述第二待处理数据进行关联。
2.根据权利要求1所述的数据处理方法,其特征在于,所述根据所述第一主键与所述第二主键建立关联关系,以将所述第一待处理数据与所述第二待处理数据进行关联之后,所述方法还包括:
基于接收到的查询请求,在所述第一数据库中进行查询,得到第一查询数据;
获取所述所述第一查询数据对应的第一主键;
通过所述第一主键以及所述第一主键与所述第二主键的关联关系,从所述第二数据库中获取与所述第二主键关联的第二查询数据;
将所述第一查询数据与所述第二查询数据进行拼接,得到目标查询数据,并输出所述目标查询数据。
3.根据权利要求1所述的数据处理方法,其特征在于,所述根据所述第一主键与所述第二主键建立关联关系,以将所述第一待处理数据与所述第二待处理数据进行关联之后,所述方法还包括:
基于接收到的更新请求获取所述更新请求对应的待更新数据的更新主键,所述更新主键包括第一主键以及第二主键中的至少一种,所述待更新数据包括查询类型的第一待更新数据以及更新类型的第二待更新数据中的至少一种;
根据所述更新主键更新所述第二数据库中的第二待更新数据以及所述第一数据库中的第一待更新数据中的至少一种。
4.根据权利要求3所述的数据处理方法,其特征在于,所述根据所述更新主键更新所述第二数据库中的第二待更新数据以及所述第一数据库中的第一待更新数据中的至少一种,包括:
根据所述第二主键更新所述第二数据库中的所述第二待更新数据,并向第一数据库发送实时更新通知;
通过所述第一数据库基于接收到的实时更新通知,更新所述第一待更新数据。
5.根据权利要求4所述的数据处理方法,其特征在于,所述设置所述第一待处理数据在所述第一数据库中的第一主键,以及设置所述第二待处理数据在所述第二数据库中的第二主键之后,包括:
将所述第一待处理数据备份至所述第二数据库中,得到备份数据;
所述通过所述第一数据库基于接收到的实时更新通知,更新所述第一待更新数据之后,所述方法还包括:
判断所述第一数据库中的第一待更新数据是否更新成功;
若未更新成功,则更新所述第二数据库中的所述备份数据,得到所述备份数据对应的更新后数据;
获取定时更新时间点以及当前时间;
在当前时间达到所述定时更新时间点时,将所述更新后数据同步至所述第一数据库中,以更新所述第一数据库中的所述第一待更新数据。
6.根据权利要求3所述的数据处理方法,其特征在于,所述设置所述第一待处理数据在所述第一数据库中的第一主键,以及设置所述第二待处理数据在所述第二数据库中的第二主键之后,包括:
将所述第一待处理数据备份至所述第二数据库中,得到备份数据;
所述根据所述更新主键更新所述第二数据库中的第二待更新数据以及所述第一数据库中的第一待更新数据中的至少一种,包括:
根据所述第二主键更新所述第二数据库中的所述第二待更新数据,以及更新所述第二数据库中的所述备份数据,得到所述备份数据对应的更新后数据;
获取定时更新时间点以及当前时间;
在当前时间达到所述定时更新时间点时,将所述更新后数据同步至所述第一数据库中,以更新所述第一数据库中的所述第一待更新数据。
7.根据权利要求6所述的数据处理方法,其特征在于,所述在当前时间达到所述定时更新时间点时,将所述更新后数据同步至所述第一数据库中,以更新所述第一数据库中的所述第一待更新数据之后,包括:
判断所述第一数据库中的第一待更新数据是否更新成功;
若未更新成功,则获取下一次定时更新时间点以及当前时间;
在当前时间达到所述下一次定时更新时间点时,将所述更新后数据同步至所述第一数据库中,以更新所述第一数据库中的所述第一待更新数据。
8.一种数据处理装置,其特征在于,包括:
获取模块,用于获取待处理数据;
解析模块,用于解析所述待处理数据,得到所述待处理数据的数据类型,所述数据类型包括查询类型与更新类型;
划分模块,用于根据所述数据类型将所述待处理数据进行划分,得到归属于所述查询类型的第一待处理数据与归属于所述更新类型的第二待处理数据;
存储模块,用于将所述第一待处理数据存储至第一数据库,将所述第二待处理数据存储至第二数据库;
设置模块,用于设置所述第一待处理数据在所述第一数据库中的第一主键,以及设置所述第二待处理数据在所述第二数据库中的第二主键;
关联模块,用于根据所述第一主键与所述第二主键建立关联关系,以将所述第一待处理数据与所述第二待处理数据进行关联。
9.一种智能设备,其特征在于,包括处理器和存储器,所述存储器中存储有计算机程序,所述处理器调用所述存储器中的计算机程序时执行如权利要求1至7任一项所述的数据处理方法。
10.一种存储介质,其特征在于,所述存储介质用于存储计算机程序,所述计算机程序被处理器加载以执行权利要求1至7任一项所述的数据处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211151466.2A CN115495463A (zh) | 2022-09-21 | 2022-09-21 | 一种数据处理方法、装置、智能设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211151466.2A CN115495463A (zh) | 2022-09-21 | 2022-09-21 | 一种数据处理方法、装置、智能设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115495463A true CN115495463A (zh) | 2022-12-20 |
Family
ID=84470034
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211151466.2A Pending CN115495463A (zh) | 2022-09-21 | 2022-09-21 | 一种数据处理方法、装置、智能设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115495463A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117521152A (zh) * | 2024-01-05 | 2024-02-06 | 同盾科技有限公司 | 数据更新方法、匿踪查询方法、电子设备及介质 |
-
2022
- 2022-09-21 CN CN202211151466.2A patent/CN115495463A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117521152A (zh) * | 2024-01-05 | 2024-02-06 | 同盾科技有限公司 | 数据更新方法、匿踪查询方法、电子设备及介质 |
CN117521152B (zh) * | 2024-01-05 | 2024-05-07 | 同盾科技有限公司 | 数据更新方法、匿踪查询方法、电子设备及介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108989397B (zh) | 数据推荐方法、装置及存储介质 | |
CN106059825A (zh) | 一种分布式系统及配置方法 | |
CN111859132A (zh) | 一种数据处理方法、装置及智能设备、存储介质 | |
CN112214505B (zh) | 数据同步方法、装置、计算机可读存储介质及电子设备 | |
CN109299225A (zh) | 日志检索方法、系统、终端及计算机可读存储介质 | |
CN111343269B (zh) | 一种数据下载方法、装置、计算机设备和存储介质 | |
CN111221742B (zh) | 一种测试案例的更新方法、装置、存储介质和服务器 | |
CN115495463A (zh) | 一种数据处理方法、装置、智能设备及存储介质 | |
CN112491609A (zh) | 基于业务服务的系统应用架构发现方法及系统 | |
CN107291938B (zh) | 订单查询系统及方法 | |
CN107066522B (zh) | 数据库的访问方法和装置 | |
CN117874033A (zh) | 数据库分表方法、装置、电子设备及存储介质 | |
CN111046113B (zh) | 用于不同类型数据仓库的数据检索装置及方法 | |
CN113297516A (zh) | 客户交互界面生成方法、装置和电子设备 | |
CN116701413A (zh) | 主数据处理方法及装置 | |
CN116775712A (zh) | 联表查询方法、装置、电子设备、分布式系统和存储介质 | |
CN110109919B (zh) | 确定逻辑信息的方法和装置 | |
CN115630122A (zh) | 一种数据同步方法、装置、存储介质和计算机设备 | |
CN117827854A (zh) | 数据处理方法、装置、电子设备及存储介质 | |
CN113986948A (zh) | 即时消息的查询方法、装置、服务器及存储介质 | |
CN114385657A (zh) | 数据存储方法、装置及存储介质 | |
CN108206933B (zh) | 一种基于视频云存储系统的视频数据获取方法及装置 | |
CN107770265B (zh) | 一种数据同步方法、数据同步装置及移动终端 | |
CN106528337B (zh) | 数据的备份方法、装置及系统 | |
CN110781370B (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 |