CN111651471B - 目标数据查询方法、装置、电子设备及存储介质 - Google Patents
目标数据查询方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN111651471B CN111651471B CN202010362950.4A CN202010362950A CN111651471B CN 111651471 B CN111651471 B CN 111651471B CN 202010362950 A CN202010362950 A CN 202010362950A CN 111651471 B CN111651471 B CN 111651471B
- Authority
- CN
- China
- Prior art keywords
- data
- preset
- type
- target data
- real
- 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
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/24—Querying
- G06F16/242—Query formulation
- G06F16/2433—Query languages
-
- 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
Abstract
本发明涉及人工智能,提供了一种目标数据查询方法,应用于电子设备,该方法包括当监预设消息系统控到预设数据源发生数据变更时,爬取数据变更对应的第一类型数据,将具有相同用户标识的第一类型数据输入实时计算引擎输出聚合数据存储至预设数据库,实时更新预设数据库中的第二类型数据后进行消息发布,当监听到预设消息系统发布的消息时,将第二类型数据转化得到目标数据,为每个目标数据分配对应的预设标签后存储至预设数据库,实时发出提醒信息通知客户端从预设数据库中查询目标数据。此外,本发明还涉及区块链技术,用户的隐私信息可存储于区块链节点中。本发明能够在接收到用户发出的业务需求后能够及时为用户提供服务,提升客户体验感。
Description
技术领域
本发明涉及人工智能,尤其涉及一种目标数据查询方法、装置、电子设备及存储介质。
背景技术
目前市场上大多数数据查询系统为了实现数据查询,通常将数以百万片段式的业务数据通过离线同步到大数据平台,技术人员在后台将具有关联性的业务数据进行拼接成完整的数据,再将拼接得到的完整数据发送给预设的客户端(例如客服人员)进行相应操作。由于离线数据具有一定的延时性,所以客户端没办法在第一时间接收到用户发出的业务需求后及时为用户提供服务,导致用户体验感下降。
发明内容
本发明的主要目的在于提供一种目标数据查询方法、装置、电子设备及存储介质,旨在如何在接收到用户发出的业务需求后能够及时为用户提供服务的问题。
为实现上述目的,本发明提供的一种目标数据查询方法,应用于电子设备,该方法包括:
数据获取步骤:利用预设消息系统实时监控预设数据源,当监控到所述预设数据源发生数据变更时,爬取所述数据变更对应的第一类型数据;
数据处理步骤:将预设时间段内具有相同用户标识的所述第一类型数据输入实时计算引擎,输出至少一个第二类型数据,将所述第二类型数据据存储至预设数据库,实时更新所述预设数据库中的第二类型数据,并将所述更新后的第二类型数据发送至所述预设消息系统进行消息发布;
数据转换步骤:当监听到所述预设消息系统发布的消息时,基于所述实时计算引擎将所述预设消息系统中的第二类型数据转化得到至少一个目标数据,为每个所述目标数据分配预设标签后存储至所述预设数据库,实时生成提醒信息发送至客户端,并在每个目标数据及其对应的预设标签之间建立第一映射关系;及
数据查询步骤:接收客户端发起的数据查询请求,对所述数据查询请求进行解析得到待查询数据的预设标签,根据所述预设标签从所述预设数据库中查询与该预设标签匹配的目标数据反馈至所述客户端。
优选地,所述基于所述实时计算引擎将所述预设消息系统中的第二类型数据转化得到至少一个目标数据包括:
在所述实时计算引擎的数据库中预先创建预设数量的SQL数据;
根据输入所述实时计算引擎的第二类型数据匹配与第二类型数据对应的SQL数据,并对匹配到的SQL数据进行解析得到SQL语句;
将SQL语句封装为作业算子,并根据SQL语句的运算逻辑将所述作业算子进行串接生成算子流;及
调用预设API接口将所述算子流提交给实时计算引擎的任务管理系统执行算子流,以对SQL数据进行实时处理得到与第二类型数据对应的目标数据。
优选地,所述SQL数据是基于预设语言编辑的,所述预设语言包括hql、mySQL及presto。
优选地,该方法还包括:
识别所述SQL语句对应的预设语言,根据预先创建在数据库中所述预设语言与语法规则之间的第二映射关系,查询与该预设语言对应的语法规则,根据所述语法规则判断所述SQL语句是否存在语法错误,若有则生成反馈信息反馈至所述客户端。
优选地,该方法还包括:
判断具有所述相同用户标识的第一类型数据对应的操作类型是否为预设操作,若是则判断同一所述用户标识的第一类型数据执行所述预设操作的次数是否大于预设阈值,若是则删除具有所述相同用户标识的第一类型数据中超过所述预设阈值的其他部分的消息数据。
为实现上述目的,本发明还进一步提供一种目标数据查询装置,包括:
数据获取模块:利用预设消息系统实时监控预设数据源,当监控到所述预设数据源发生数据变更时,爬取所述数据变更对应的第一类型数据;
数据处理模块:将预设时间段内具有相同用户标识的所述第一类型数据输入实时计算引擎,输出至少一个第二类型数据,将所述第二类型数据据存储至预设数据库,实时更新所述预设数据库中的第二类型数据,并将所述更新后的第二类型数据发送至所述预设消息系统进行消息发布;
数据转换模块:当监听到所述预设消息系统发布的消息时,基于所述实时计算引擎将所述预设消息系统中的第二类型数据转化得到至少一个目标数据,为每个所述目标数据分配预设标签后存储至所述预设数据库,实时生成提醒信息发送至客户端,并在每个目标数据及其对应的预设标签之间建立第一映射关系;及
数据查询模块:接收客户端发起的数据查询请求,对所述数据查询请求进行解析得到待查询数据的预设标签,根据所述预设标签从所述预设数据库中查询与该预设标签匹配的目标数据反馈至所述客户端。
优选地,所述基于所述实时计算引擎将所述预设消息系统中的第二类型数据转化得到至少一个目标数据包括:
在所述实时计算引擎的数据库中预先创建预设数量的SQL数据;
根据输入所述实时计算引擎的第二类型数据匹配与第二类型数据对应的SQL数据,并对匹配到的SQL数据进行解析得到SQL语句;
将SQL语句封装为作业算子,并根据SQL语句的运算逻辑将所述作业算子进行串接生成算子流;及
调用预设API接口将所述算子流提交给实时计算引擎的任务管理系统执行算子流,以对SQL数据进行实时处理得到与第二类型数据对应的目标数据。
优选地,所述目标数据查询装置还包括识别模块:
识别所述SQL语句对应的预设语言,根据预先创建在数据库中所述预设语言与语法规则之间的第二映射关系,查询与该预设语言对应的语法规则,根据所述语法规则判断所述SQL语句是否存在语法错误,若有则生成反馈信息反馈至所述客户端。
为实现上述目的,本发明进一步提供一种电子设备,所述电子设备包括:
存储器,存储至少一个指令;及
处理器,执行所述存储器中存储的指令以实现上述所述的目标数据查询方法。
为实现上述目的,本发明进一步提供一种计算机可读存储介质,所述计算机可读存储介质上存储有目标数据查询程序,所述目标数据查询程序可被一个或者多个处理器执行,以实现如上所述的目标数据查询方法的步骤。
本发明提出的目标数据查询方法、装置、电子设备及存储介质,通过当监预设消息系统控到预设数据源发生数据变更时,爬取数据变更对应的第一类型数据,将具有相同用户标识的第一类型数据输入实时计算引擎输出聚合数据存储至预设数据库,并实时更新预设数据库中的第二类型数据,将更新后的第二类型数据发送至预设消息系统进行消息发布,当监听到预设消息系统发布的消息时,基于实际计算引擎将预设消息系统中的第二类型数据转化得到目标数据,为每个目标数据分配对应的预设标签后存储至预设数据库,实时发出提醒信息通知客户端根据预设标签从预设数据库中查询目标数据。本发明能够在接收到用户发出的业务需求后能够及时为用户提供服务,提升客户体验感。
附图说明
图1为本发明一实施例提供的实现目标数据查询方法的电子设备的内部结构示意图;
图2为本发明一实施例提供的目标数据查询装置的模块示意图;
图3为本发明一实施例提供的目标数据查询方法的流程示意图。
本发明目的的实现、功能特点及优点将结合实施例,参附图做进一步说明。
具体实施方式
为了使本发明的目的、技术本实施例及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,在本发明中涉及“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。另外,各个实施例之间的技术本实施例可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术本实施例的结合出现相互矛盾或无法实现时应当认为这种技术本实施例的结合不存在,也不在本发明要求的保护范围之内。
本发明提供一种目标数据查询方法。参照图1所示,为本发明一实施例提供的目标数据查询方法的流程示意图。该方法可以由一个装置执行,该装置可以由软件和/或硬件实现。
在本实施例中,目标数据查询方法包括:
S110,利用预设消息系统实时监控预设数据源,当监控到所述预设数据源发生数据变更时,爬取所述数据变更对应的第一类型数据。
在本实施例中,本方案的应用场景可应用于产险、寿险、意外险或车险等预设业务,每个预设业务均对应相应的业务系统,比如产险业务对应产险系统,车险业务对应车险系统,每个业务系统对应相应的数据源。
目前市场上大多数数据查询系统为了实现数据查询,通常将数以百万的片段式业务数据离线同步到大数据平台,再通过技术人员在后台将具有关联性的业务数据拼接成完整的数据。例如在预设时间段内同一用户的业务数据有“询价车牌为xxx”,“询价时间为xxx”,“用户id为xxx”等。通过将这些片段式的离线业务数据拼接一起得到“用户id为xxx用户在时间xxx时对车牌为xxx进行询价”,再将拼接得到的完整数据发送给客户端(例如客服人员)进行相应操作。但是由于采用离线同步大数据平台的方式具有一定的延时性,客户端没办法在第一时间得到用户发出的业务需求并及时为用户提供服务,导致用户体验感下降。
因此,在本实施例中,在确定预设业务(例如产险业务)对应的预设数据源后,利用预设消息系统,例如Kafka(分布式发布订阅消息系统),实时监控预设数据源,当监控到预设数据源发生数据变更时,爬取数据变更对应的第一类型数据,例如OGG消息数据(即数据增量变化),再将实时获得的第一类型数据上报电子设备。其中,OGG(Oracle Golden Gate)是一种基于日志的结构化数据复制备份软件,通过OGG解析源数据库在线日志或归档日志获得数据的增量变化(即OGG消息数据),比如在某个时间段对应的OGG数据为某个字段如“money+10”,说明是完整数据中money增加了10。由此可利用数据源在数据同步时对应的OGG消息数据来实时表示预设业务(例如产险业务)的数据变化。
S120,将预设时间段内具有相同用户标识的所述第一类型数据输入实时计算引擎,输出至少一个第二类型数据,将所述第二类型数据据存储至预设数据库,实时更新所述预设数据库中的第二类型数据,并将所述更新后的第二类型数据发送至所述预设消息系统进行消息发布。
在本实施例中,以OGG消息数据作为第一类型数据举例说明。因为OGG消息数据是片段式的,想要得到完整的业务数据需要将预设时间段内具有相同用户标识的OGG消息数据进行拼接,所以简单地利用Kafka获取到的OGG数据是不完整的,需要对OGG消息数据进行预处理。在本实施例中,将预设时间段内具有相同用户标识的OGG消息数据输入Flink(实时计算引擎)实时输出至少一个聚合数据,将聚合数据存储至Hbase,实时更新Hbase中的聚合数据,并将更新后的聚合数据发送至Kafka进行消息发布。
其中,Hbase是一个面向列存储的分布式存储系统。具有支持百万并发毫秒级返回,实现高性能的并发读写操作等特性。
假设Kafka在预设时间段内获取到数据源中同一用户的ogg消息数据为“用户id:xxx”、“时间:xxx”、“车牌:xxx”通过将上述ogg消息数据输入Flink中进行数据聚合得到聚合数据:"用户id:xxx,车牌:xxx,询价时间:xxx”,并将聚合数据存入Hbase,存入Hbase中的格式为:用户id“xxx”为Hbase的rowkey(主键),车牌“xxx”为列id,列的值是询价时间“xxx”。
S130,当监听到所述预设消息系统发布的消息时,基于所述实时计算引擎将所述预设消息系统中的第二类型数据转化得到至少一个目标数据,为每个所述目标数据分配预设标签后存储至所述预设数据库,实时生成提醒信息发送至客户端,并在每个目标数据及其对应的预设标签之间建立第一映射关系。
在本实施例中,当监听到预设消息系统(例如Kafka)发布的消息时,基于实时计算引擎(Flink)对预设消息系统(例如Kafka)中的聚合数据转化得到至少一个目标数据,为每个目标数据分配对应的预设标签,例如目标数据:“用户id为xxx的客户的最新询价时间为2020-01-01-23:00:00”,其中,“最新询价时间”为预设标签。为每个目标数据及其对应的预设标签、用户标识分别建立关系链后存储至预设数据库(例如Hbase),同时生成带有预设标签的提醒信息发送至客户端(例如客服人员的手机或电脑),通知客户端的持有者及时根据提醒信息进行处理。
将预设消息系统(例如Kafka)中的第二类型数据转化得到目标数据通过以下步骤实现:
在实时计算引擎(Flink)的数据库中预先创建预设数量的SQL数据,其中,SQL是基于预设语言编辑的,例如hql、mySQL及presto等,用于存取数据以及查询、更新和管理关系数据库系统;
据输入实时计算引擎(Flink)的第二类型数据匹配对聚合数据对应的SQL数据,并对匹配到的SQL数据进行解析得到SQL语句;
将SQL语句封装为作业算子,并根据SQL语句的运算逻辑将所述作业算子进行串接生成算子流;
调用预设API(例如Flink自带的Flink execute)接口将算子流提交给实时计算引擎(Flink)的任务管理系统(taskmanager)执行算子流,以对SQL数据进行实时处理得到与第二类型数据对应的目标数据。
在另一实施例中,为了防止SQL由于语法错误导致无法执行SQL的命令,该方法还包括:
识别所述SQL语句对应的预设语言,根据预先创建在数据库中所述预设语言与语法规则之间的第二映射关系,查询与该预设语言对应的语法规则,根据所述语法规则判断所述SQL语句是否存在语法错误,若有则生成反馈信息反馈至所述客户端。
在本实施例中,通过识别SQL语句对应的预设语言,根据预先创建在数据库中预设语言与语法规则之间的第二映射关系查询与该预设语言对应的语法规则,根据语法规则判断SQL语句在编辑上是否存在语法错误,若有则生成反馈信息反馈至所述客户端(技术人员的手机或电脑),其中反馈信息可包括SQL语句存在语法错误的具体位置。
S140,接收客户端发起的数据查询请求,对所述数据查询请求进行解析得到待查询数据的预设标签,根据所述预设标签从所述预设数据库中查询与该预设标签匹配的目标数据反馈至所述客户端。
在本实施例中,在本实施例中,当客户端(例如客服人员的手机或电脑)接收到提醒信息时,可立即向电子设备发起数据查询请求,电子设备根据数据查询请求携带的待查询数据的预设标签(例如最新询价时间),根据预设标签从预设数据库(Hbase)中查询与预设标签对应的所有目标数据(例如“用户id为xxx的客户的最新询价时间为2020-01-01-23:00:00”)反馈至客户端,客户端的持有者能够实时知道发起询价通知的用户信息,及时做出处理,例如从数据库中调用该用户id的联系方式,并与用户取得联系,避免现有技术存在数据延时的缺点导致降低用户体验感的情况发生。
在另一实施例中,该方法还包括以下步骤:
判断相同所述用户标识的第一类型数据对应的操作类型是否为预设操作,在本实施例中,预设操作为插入操作。由于网络和预设消息系统(Kafka)自身特性的原因,同一条第一类型数据(例如OGG消息数据)可能被预设消息系统接收多次,为保证数据处理过程中不会出错,对重复插入操作的第一类型数据需要剔除。若判断结果为插入操作,则判断相同所述用户标识的第一类型数据执行所述预设操作的次数是否大于预设阈值(例如1),若是则删除具有所述相同用户标识的第一类型数据中超过所述预设阈值的其他部分的消息数据。
关于上述步骤的详细介绍,请参照下述图2关于目标数据查询程序10实施例的程序模块示意图及图3关于目标数据查询方法实施例的方法流程示意图的说明。
如图2所示,是本发明目标数据查询装置100的功能模块图。
本发明所述目标数据查询装置100可以安装于电子设备中。根据实现的功能,所述目标数据查询装置100可以包括数据获取模块110、数据处理模块120、数据转换模块130及数据查询模块140。本发明所述模块也可以称之为单元,是指一种能够被电子设备处理器所执行,并且能够完成固定功能的一系列计算机程序段,其存储在电子设备的存储器中。
在本实施例中,关于各模块/单元的功能如下:
数据获取模块110,用于利用预设消息系统实时监控预设数据源,当监控到所述预设数据源发生数据变更时,爬取所述数据变更对应的第一类型数据。
在本实施例中,本方案的应用场景可应用于产险、寿险、意外险或车险等预设业务,每个预设业务均对应相应的业务系统,比如产险业务对应产险系统,车险业务对应车险系统,每个业务系统对应相应的数据源。
目前市场上大多数数据查询系统为了实现数据查询,通常将数以百万的片段式业务数据离线同步到大数据平台,再通过技术人员在后台将具有关联性的业务数据拼接成完整的数据。例如在预设时间段内同一用户的业务数据有“询价车牌为xxx”,“询价时间为xxx”,“用户id为xxx”等。通过将这些片段式的离线业务数据拼接一起得到“用户id为xxx用户在时间xxx时对车牌为xxx进行询价”,再将拼接得到的完整数据发送给客户端(例如客服人员)进行相应操作。但是由于采用离线同步大数据平台的方式具有一定的延时性,客户端没办法在第一时间得到用户发出的业务需求并及时为用户提供服务,导致用户体验感下降。
因此,在本实施例中,在确定预设业务(例如产险业务)对应的预设数据源后,利用预设消息系统,例如Kafka(分布式发布订阅消息系统),实时监控预设数据源,当监控到预设数据源发生数据变更时,爬取数据变更对应的第一类型数据,例如OGG消息数据(即数据增量变化),再将实时获得的第一类型数据上报电子设备。其中,OGG(Oracle Golden Gate)是一种基于日志的结构化数据复制备份软件,通过OGG解析源数据库在线日志或归档日志获得数据的增量变化(即OGG消息数据),比如在某个时间段对应的OGG数据为某个字段如“money+10”,说明是完整数据中money增加了10。由此可利用数据源在数据同步时对应的OGG消息数据来实时表示预设业务(例如产险业务)的数据变化。
数据处理模块120,用于将预设时间段内具有相同用户标识的所述第一类型数据输入实时计算引擎,输出至少一个第二类型数据,将所述第二类型数据据存储至预设数据库,实时更新所述预设数据库中的第二类型数据,并将所述更新后的第二类型数据发送至所述预设消息系统进行消息发布。
在本实施例中,以OGG消息数据作为第一类型数据举例说明。因为OGG消息数据是片段式的,想要得到完整的业务数据需要将预设时间段内具有相同用户标识的OGG消息数据进行拼接,所以简单地利用Kafka获取到的OGG数据是不完整的,需要对OGG消息数据进行预处理。在本实施例中,将预设时间段内具有相同用户标识的OGG消息数据输入Flink(实时计算引擎)实时输出至少一个聚合数据,将聚合数据存储至Hbase,实时更新Hbase中的聚合数据,并将更新后的聚合数据发送至Kafka进行消息发布。
其中,Hbase是一个面向列存储的分布式存储系统。具有支持百万并发毫秒级返回,实现高性能的并发读写操作等特性。
假设Kafka在预设时间段内获取到数据源中同一用户的ogg消息数据为“用户id:xxx”、“时间:xxx”、“车牌:xxx”通过将上述ogg消息数据输入Flink中进行数据聚合得到聚合数据:"用户id:xxx,车牌:xxx,询价时间:xxx”,并将聚合数据存入Hbase,存入Hbase中的格式为:用户id“xxx”为Hbase的rowkey(主键),车牌“xxx”为列id,列的值是询价时间“xxx”。
数据转换模块130,用于当监听到所述预设消息系统发布的消息时,基于所述实时计算引擎将所述预设消息系统中的第二类型数据转化得到至少一个目标数据,为每个所述目标数据分配预设标签后存储至所述预设数据库,实时生成提醒信息发送至客户端,并在每个目标数据及其对应的预设标签之间建立第一映射关系。
在本实施例中,当监听到预设消息系统(例如Kafka)发布的消息时,基于实时计算引擎(Flink)对预设消息系统(例如Kafka)中的聚合数据转化得到至少一个目标数据,为每个目标数据分配对应的预设标签,例如目标数据:“用户id为xxx的客户的最新询价时间为2020-01-01-23:00:00”,其中,“最新询价时间”为预设标签。为每个目标数据及其对应的预设标签、用户标识分别建立关系链后存储至预设数据库(例如Hbase),同时生成带有预设标签的提醒信息发送至客户端(例如客服人员的手机或电脑),通知客户端的持有者及时根据提醒信息进行处理。
将预设消息系统(例如Kafka)中的第二类型数据转化得到目标数据通过以下步骤实现:
在实时计算引擎(Flink)的数据库中预先创建预设数量的SQL数据,其中,SQL是基于预设语言编辑的,例如hql、mySQL及presto等,用于存取数据以及查询、更新和管理关系数据库系统;
据输入实时计算引擎(Flink)的第二类型数据匹配对聚合数据对应的SQL数据,并对匹配到的SQL数据进行解析得到SQL语句;
将SQL语句封装为作业算子,并根据SQL语句的运算逻辑将所述作业算子进行串接生成算子流;
调用预设API(例如Flink自带的Flink execute)接口将算子流提交给实时计算引擎(Flink)的任务管理系统(taskmanager)执行算子流,以对SQL数据进行实时处理得到与第二类型数据对应的目标数据。
在另一实施例中,为了防止SQL由于语法错误导致无法执行SQL的命令,该程序还执行以下步骤:
识别所述SQL语句对应的预设语言,根据预先创建在数据库中所述预设语言与语法规则之间的第二映射关系,查询与该预设语言对应的语法规则,根据所述语法规则判断所述SQL语句是否存在语法错误,若有则生成反馈信息反馈至所述客户端。
在本实施例中,通过识别SQL语句对应的预设语言,根据预先创建在数据库中预设语言与语法规则之间的第二映射关系查询与该预设语言对应的语法规则,根据语法规则判断SQL语句在编辑上是否存在语法错误,若有则生成反馈信息反馈至所述客户端(技术人员的手机或电脑),其中反馈信息可包括SQL语句存在语法错误的具体位置。
数据查询模块140,用于接收客户端发起的数据查询请求,对所述数据查询请求进行解析得到待查询数据的预设标签,根据所述预设标签从所述预设数据库中查询与该预设标签匹配的目标数据反馈至所述客户端。
在本实施例中,在本实施例中,当客户端(例如客服人员的手机或电脑)接收到提醒信息时,可立即向电子设备发起数据查询请求,电子设备根据数据查询请求携带的待查询数据的预设标签(例如最新询价时间),根据预设标签从预设数据库(Hbase)中查询与预设标签对应的所有目标数据(例如“用户id为xxx的客户的最新询价时间为2020-01-01-23:00:00”)反馈至客户端,客户端的持有者能够实时知道发起询价通知的用户信息,及时做出处理,例如从数据库中调用该用户id的联系方式,并与用户取得联系,避免现有技术存在数据延时的缺点导致降低用户体验感的情况发生。
在另一实施例中,该程序还执行以下步骤:
判断相同所述用户标识的第一类型数据对应的操作类型是否为预设操作,在本实施例中,预设操作为插入操作。由于网络和预设消息系统(Kafka)自身特性的原因,同一条第一类型数据(例如OGG消息数据)可能被预设消息系统接收多次,为保证数据处理过程中不会出错,对重复插入操作的第一类型数据需要剔除。若判断结果为插入操作,则判断相同所述用户标识的第一类型数据执行所述预设操作的次数是否大于预设阈值(例如1),若是则删除具有所述相同用户标识的第一类型数据中超过所述预设阈值的其他部分的消息数据。
如图3所示,是本发明实现目标数据查询方法的电子设备的结构示意图。
所述电子设备1可以包括处理器12、存储器11和总线,还可以包括存储在所述存储器11中并可在所述处理器12上运行的计算机程序,如目标数据查询程序10。
其中,所述存储器11至少包括一种类型的可读存储介质,所述计算机可用存储介质可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序等;存储数据区可存储根据区块链节点的使用所创建的数据等。所述可读存储介质包括闪存、移动硬盘、多媒体卡、卡型存储器(例如:SD或DX存储器等)、磁性存储器、磁盘、光盘等。所述存储器11在一些实施例中可以是电子设备1的内部存储单元,例如该电子设备1的移动硬盘。所述存储器11在另一些实施例中也可以是电子设备1的外部存储设备,例如电子设备1上配备的插接式移动硬盘、智能存储卡(Smart Media Card,SMC)、安全数字(Secure Digital,SD)卡、闪存卡(Flash Card)等。进一步地,所述存储器11还可以既包括电子设备1的内部存储单元也包括外部存储设备。所述存储器11不仅可以用于存储安装于电子设备1的应用软件及各类数据,例如目标数据查询程序10的代码等,还可以用于暂时地存储已经输出或者将要输出的数据。
所述处理器12在一些实施例中可以由集成电路组成,例如可以由单个封装的集成电路所组成,也可以是由多个相同功能或不同功能封装的集成电路所组成,包括一个或者多个中央处理器(Central Processing unit,CPU)、微处理器、数字处理芯片、图形处理器及各种控制芯片的组合等。所述处理器12是所述电子设备的控制核心(Control Unit),利用各种接口和线路连接整个电子设备的各个部件,通过运行或执行存储在所述存储器11内的程序或者模块(例如目标数据查询程序等),以及调用存储在所述存储器11内的数据,以执行电子设备1的各种功能和处理数据。
所述总线可以是外设部件互连标准(peripheral component interconnect,简称PCI)总线或扩展工业标准结构(extended industry standard architecture,简称EISA)总线等。该总线可以分为地址总线、数据总线、控制总线等。所述总线被设置为实现所述存储器11以及至少一个处理器12等之间的连接通信。
图3仅示出了具有部件的电子设备,本领域技术人员可以理解的是,图3示出的结构并不构成对所述电子设备1的限定,可以包括比图示更少或者更多的部件,或者组合某些部件,或者不同的部件布置。
例如,尽管未示出,所述电子设备1还可以包括给各个部件供电的电源(比如电池),优选地,电源可以通过电源管理装置与所述至少一个处理器12逻辑相连,从而通过电源管理装置实现充电管理、放电管理、以及功耗管理等功能。电源还可以包括一个或一个以上的直流或交流电源、再充电装置、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。所述电子设备1还可以包括多种传感器、蓝牙模块、Wi-Fi模块等,在此不再赘述。
进一步地,所述电子设备1还可以包括网络接口13,可选地,所述网络接口13可以包括有线接口和/或无线接口(如WI-FI接口、蓝牙接口等),通常用于在该电子设备1与其他电子设备之间建立通信连接。
可选地,该电子设备1还可以包括用户接口,用户接口可以是显示器(Display)、输入单元(比如键盘(Keyboard)),可选地,用户接口还可以是标准的有线接口、无线接口。可选地,在一些实施例中,显示器可以是LED显示器、液晶显示器、触控式液晶显示器以及OLED(Organic Light-Emitting Diode,有机发光二极管)触摸器等。其中,显示器也可以适当的称为显示屏或显示单元,用于显示在电子设备1中处理的信息以及用于显示可视化的用户界面。
应该了解,所述实施例仅为说明之用,在专利申请范围上并不受此结构的限制。
所述电子设备1中的所述存储器11存储的目标数据查询程序10是多个指令的组合,在所述处理器12中运行时,可以实现:
数据获取步骤:利用预设消息系统实时监控预设数据源,当监控到所述预设数据源发生数据变更时,爬取所述数据变更对应的第一类型数据;
数据处理步骤:将预设时间段内具有相同用户标识的所述第一类型数据输入实时计算引擎,输出至少一个第二类型数据,将所述第二类型数据据存储至预设数据库,实时更新所述预设数据库中的第二类型数据,并将所述更新后的第二类型数据发送至所述预设消息系统进行消息发布;
数据转换步骤:当监听到所述预设消息系统发布的消息时,基于所述实时计算引擎将所述预设消息系统中的第二类型数据转化得到至少一个目标数据,为每个所述目标数据分配预设标签后存储至所述预设数据库,实时生成提醒信息发送至客户端,并在每个目标数据及其对应的预设标签之间建立第一映射关系;及
数据查询步骤:接收客户端发起的数据查询请求,对所述数据查询请求进行解析得到待查询数据的预设标签,根据所述预设标签从所述预设数据库中查询与该预设标签匹配的目标数据反馈至所述客户端。
在另一实施例中,该程序还执行以下步骤:
识别所述SQL语句对应的预设语言,根据预先创建在数据库中所述预设语言与语法规则之间的第二映射关系,查询与该预设语言对应的语法规则,根据所述语法规则判断所述SQL语句是否存在语法错误,若有则生成反馈信息反馈至所述客户端。
在另一实施例中,该程序还执行以下步骤:
判断具有所述相同用户标识的第一类型数据对应的操作类型是否为预设操作,若是则判断同一所述用户标识的第一类型数据执行所述预设操作的次数是否大于预设阈值,若是则删除具有所述相同用户标识的第一类型数据中超过所述预设阈值的其他部分的消息数据。
具体地,所述处理器11对上述指令的具体实现方法可参考图1对应实施例中相关步骤的描述,在此不赘述。
在本发明所提供的几个实施例中,应该理解到,所揭露的设备,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能模块的形式实现。
对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。
因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本发明内。不应将权利要求中的任何附关联图标记视为限制所涉及的权利要求。
此外,显然“包括”一词不排除其他单元或步骤,单数不排除复数。系统权利要求中陈述的多个单元或装置也可以由一个单元或装置通过软件或者硬件来实现。第二等词语用来表示名称,而并不表示任何特定的顺序。
最后应说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或等同替换,而不脱离本发明技术方案的精神和范围。
Claims (10)
1.一种目标数据查询方法,应用于电子设备,其特征在于,该方法包括:
数据获取步骤:利用预设消息系统实时监控预设数据源,当监控到所述预设数据源发生数据变更时,爬取所述数据变更对应的第一类型数据;
数据处理步骤:将预设时间段内具有相同用户标识的所述第一类型数据输入实时计算引擎,输出至少一个第二类型数据,将所述第二类型数据存储至预设数据库,实时更新所述预设数据库中的第二类型数据,并将所述更新后的第二类型数据发送至所述预设消息系统进行消息发布;
数据转换步骤:当监听到所述预设消息系统发布的消息时,基于所述实时计算引擎将所述预设消息系统中的第二类型数据转化得到至少一个目标数据,为每个所述目标数据分配预设标签后存储至所述预设数据库,实时生成带有预设标签的提醒信息发送至客户端,并在每个目标数据及其对应的预设标签之间建立第一映射关系;及
数据查询步骤:接收客户端发起的数据查询请求,对所述数据查询请求进行解析得到待查询数据的预设标签,根据所述预设标签从所述预设数据库中查询与该预设标签匹配的目标数据反馈至所述客户端。
2.如权利要求1所述的目标数据查询方法,其特征在于,所述基于所述实时计算引擎将所述预设消息系统中的第二类型数据转化得到至少一个目标数据包括:
在所述实时计算引擎的数据库中预先创建预设数量的SQL数据;
根据输入所述实时计算引擎的第二类型数据匹配与第二类型数据对应的SQL数据,并对匹配到的SQL数据进行解析得到SQL语句;
将SQL语句封装为作业算子,并根据SQL语句的运算逻辑将所述作业算子进行串接生成算子流;及
调用预设API接口将所述算子流提交给实时计算引擎的任务管理系统执行算子流,以对SQL数据进行实时处理得到与第二类型数据对应的目标数据。
3.如权利要求2所述的目标数据查询方法,其特征在于,所述SQL数据是基于预设语言编辑的,所述预设语言包括hql、mySQL及presto。
4.如权利要求3所述的目标数据查询方法,其特征在于,该方法还包括:
识别所述SQL语句对应的预设语言,根据预先创建在数据库中所述预设语言与语法规则之间的第二映射关系,查询与该预设语言对应的语法规则,根据所述语法规则判断所述SQL语句是否存在语法错误,若有则生成反馈信息反馈至所述客户端。
5.如权利要求1所述的目标数据查询方法,其特征在于,该方法还包括:
判断具有所述相同用户标识的第一类型数据对应的操作类型是否为预设操作,若是则判断同一所述用户标识的第一类型数据执行所述预设操作的次数是否大于预设阈值,若是则删除具有所述相同用户标识的第一类型数据中超过所述预设阈值的其他部分的消息数据。
6.一种目标数据查询装置,其特征在于,包括:
数据获取模块:利用预设消息系统实时监控预设数据源,当监控到所述预设数据源发生数据变更时,爬取所述数据变更对应的第一类型数据;
数据处理模块:将预设时间段内具有相同用户标识的所述第一类型数据输入实时计算引擎,输出至少一个第二类型数据,将所述第二类型数据存储至预设数据库,实时更新所述预设数据库中的第二类型数据,并将所述更新后的第二类型数据发送至所述预设消息系统进行消息发布;
数据转换模块:当监听到所述预设消息系统发布的消息时,基于所述实时计算引擎将所述预设消息系统中的第二类型数据转化得到至少一个目标数据,为每个所述目标数据分配预设标签后存储至所述预设数据库,实时生成带有预设标签的提醒信息发送至客户端,并在每个目标数据及其对应的预设标签之间建立第一映射关系;及
数据查询模块:接收客户端发起的数据查询请求,对所述数据查询请求进行解析得到待查询数据的预设标签,根据所述预设标签从所述预设数据库中查询与该预设标签匹配的目标数据反馈至所述客户端。
7.如权利要求6所述的目标数据查询装置,其特征在于,所述基于所述实时计算引擎将所述预设消息系统中的第二类型数据转化得到至少一个目标数据包括:
在所述实时计算引擎的数据库中预先创建预设数量的SQL数据;
根据输入所述实时计算引擎的第二类型数据匹配与第二类型数据对应的SQL数据,并对匹配到的SQL数据进行解析得到SQL语句;
将SQL语句封装为作业算子,并根据SQL语句的运算逻辑将所述作业算子进行串接生成算子流;及
调用预设API接口将所述算子流提交给实时计算引擎的任务管理系统执行算子流,以对SQL数据进行实时处理得到与第二类型数据对应的目标数据。
8.如权利要求7所述的目标数据查询装置,其特征在于,所述目标数据查询装置还包括识别模块:
识别所述SQL语句对应的预设语言,根据预先创建在数据库中所述预设语言与语法规则之间的第二映射关系,查询与该预设语言对应的语法规则,根据所述语法规则判断所述SQL语句是否存在语法错误,若有则生成反馈信息反馈至所述客户端。
9.一种电子设备,其特征在于,所述电子设备包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如权利要求1至5中任一所述的目标数据查询方法。
10.一种计算机可读存储介质,其特征在于,包括存储数据区和存储程序区,存储数据区存储根据区块链节点的使用所创建的数据,存储程序区存储有计算机程序;其中,所述计算机程序被处理器执行时实现如权利要求1-5中任一项所述的目标数据查询方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010362950.4A CN111651471B (zh) | 2020-04-30 | 2020-04-30 | 目标数据查询方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010362950.4A CN111651471B (zh) | 2020-04-30 | 2020-04-30 | 目标数据查询方法、装置、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111651471A CN111651471A (zh) | 2020-09-11 |
CN111651471B true CN111651471B (zh) | 2023-02-03 |
Family
ID=72348180
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010362950.4A Active CN111651471B (zh) | 2020-04-30 | 2020-04-30 | 目标数据查询方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111651471B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112035534A (zh) * | 2020-09-18 | 2020-12-04 | 上海依图网络科技有限公司 | 一种实时大数据处理方法、装置及电子设备 |
CN112100502A (zh) * | 2020-09-24 | 2020-12-18 | 北京百度网讯科技有限公司 | 用于数据库的信息查询方法、装置、计算设备和介质 |
CN112348713A (zh) * | 2020-09-25 | 2021-02-09 | 贝壳技术有限公司 | 基于QLRunner的数据处理方法、装置、电子设备和介质 |
CN113051330A (zh) * | 2021-04-13 | 2021-06-29 | 福州外语外贸学院 | 基于大数据的实时环境监控方法、装置及计算机设备 |
CN113220657B (zh) * | 2021-05-14 | 2022-12-06 | 上海哔哩哔哩科技有限公司 | 数据处理方法、装置及计算机设备 |
WO2024020708A1 (zh) * | 2022-07-25 | 2024-02-01 | 深圳市富途网络科技有限公司 | 基于用户画像的数据处理方法、装置、设备、介质及程序 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11226962B2 (en) * | 2018-10-05 | 2022-01-18 | Sap Se | Efficient event correlation in a streaming environment |
CN109800269A (zh) * | 2018-12-13 | 2019-05-24 | 中国平安财产保险股份有限公司 | 数据管理方法、装置、计算机设备及存储介质 |
CN110781232A (zh) * | 2019-09-27 | 2020-02-11 | 招联消费金融有限公司 | 数据处理方法、装置、计算机设备和存储介质 |
CN110784419B (zh) * | 2019-10-22 | 2023-02-28 | 中国铁道科学研究院集团有限公司电子计算技术研究所 | 铁路电务专业数据可视化方法及系统 |
-
2020
- 2020-04-30 CN CN202010362950.4A patent/CN111651471B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN111651471A (zh) | 2020-09-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111651471B (zh) | 目标数据查询方法、装置、电子设备及存储介质 | |
CN108874558B (zh) | 分布式事务的消息订阅方法、电子装置及可读存储介质 | |
CN112653760B (zh) | 跨服务器的文件传输方法、装置、电子设备及存储介质 | |
CN111429121B (zh) | 基于区块链的电子罚单处理方法、装置、设备及存储介质 | |
CN111897831A (zh) | 业务报文的生成方法、装置、电子设备及存储介质 | |
CN111538573A (zh) | 异步任务处理方法、装置及计算机可读存储介质 | |
CN112115145A (zh) | 数据采集方法、装置、电子设备及存储介质 | |
CN112256783A (zh) | 数据导出方法、装置、电子设备及存储介质 | |
CN111813676A (zh) | 机器人软件测试方法、设备及存储介质 | |
CN113379391A (zh) | 工单处理方法、装置、电子设备及计算机可读存储介质 | |
CN112631806A (zh) | 异步消息排列及调度方法、装置、电子设备及存储介质 | |
CN111459629A (zh) | 基于Azkaban的项目运行方法、装置及终端设备 | |
CN114880368A (zh) | 数据查询方法、装置、电子设备及可读存储介质 | |
CN114205322A (zh) | 消息发送方法、装置、电子设备及存储介质 | |
CN111858604B (zh) | 数据存储方法、装置、电子设备及存储介质 | |
CN112015815A (zh) | 数据同步方法、装置及计算机可读存储介质 | |
CN115002062B (zh) | 消息处理方法、装置、设备及可读存储介质 | |
CN115145870A (zh) | 失败任务原因定位方法、装置、电子设备及存储介质 | |
CN114816371A (zh) | 消息处理方法、装置、设备及介质 | |
CN114399397A (zh) | 续保跟踪方法、装置、设备及介质 | |
CN114201466A (zh) | 防缓存击穿方法、装置、设备及可读存储介质 | |
CN113419718A (zh) | 数据报送方法、装置、设备及介质 | |
CN112328656A (zh) | 基于中台架构的服务查询方法、装置、设备及存储介质 | |
CN112540839A (zh) | 信息变更方法、装置、电子设备及存储介质 | |
CN114911503A (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 |