CN110555042B - 一种数据的实时检索方法,装置及*** - Google Patents
一种数据的实时检索方法,装置及*** Download PDFInfo
- Publication number
- CN110555042B CN110555042B CN201810278260.3A CN201810278260A CN110555042B CN 110555042 B CN110555042 B CN 110555042B CN 201810278260 A CN201810278260 A CN 201810278260A CN 110555042 B CN110555042 B CN 110555042B
- Authority
- CN
- China
- Prior art keywords
- log
- database
- data
- query request
- unit
- 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
- 238000000034 method Methods 0.000 title claims abstract description 69
- 230000008569 process Effects 0.000 claims description 16
- 238000013500 data storage Methods 0.000 claims description 11
- 238000012544 monitoring process Methods 0.000 claims description 11
- 229920001971 elastomer Polymers 0.000 claims 1
- 239000000806 elastomer Substances 0.000 claims 1
- 238000004806 packaging method and process Methods 0.000 claims 1
- 238000012545 processing Methods 0.000 abstract description 11
- 238000010586 diagram Methods 0.000 description 9
- 230000005540 biological transmission Effects 0.000 description 7
- 238000004891 communication Methods 0.000 description 6
- 238000011161 development Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000007726 management method Methods 0.000 description 3
- 230000006978 adaptation Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 150000001875 compounds Chemical class 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Images
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请实施例示出一种数据的实时检索方法,装置及***,所述方法包括接收用户端发送的查询请求;基于所述查询请求遍历ES数据库,确定二进制显示文件;发送所述二进制显示文件至用户端。本申请实施例示出的方案采用ES数据库对车辆信息进行存储,所述ES数据库,基于ElasticSearch搜索结果进行封装,实时的更新车辆信息,更新的结果以二进制的形式进行存储,相比于复杂的MYSQL存储方式,存储速度更快;同时,数据处理逻辑复杂度低,把复杂的MYSQL语句由ElasticSearch处理,有效的避免了数据多次缓存,节省了内存空闲,也未增添***运行负荷,提高***的运行效率。
Description
技术领域
本发明涉及计算机技术领域,特别涉及一种数据的实时检索方法,装置及***。
背景技术
随着科技的发展和时代的变迁,二十一世纪的中国已经步入工业时代,车辆成为了普通的日常代步工具,人们的工作和生活每时每刻都和汽车息息相关。车辆时代的来临带来了巨大的社会进步,推动了国民经济的快速发展,拉近了人与人,地方与地方之间的距离。随着车辆行业的迅速发展,车辆的种类逐渐增多,在众多种类的车辆中搜索一款适合自己的目标车辆的难度也在逐渐增加,在此情况下车辆检索方法应运而生。
现有技术提供有多种车辆检索方法,用于在众多种类的车辆中,查找得到目标车辆。现有技术中的车辆检索方法的具体过程为:首先用户在用户端输入搜索的限定条件,然后,应用平台服务器根据所述限定条件,搜索出与所述限定条件相匹配的显示数据至用户端(所述显示数据包括目标车辆的相关信息),然后所述用户端对所述显示数据进行显示。
现有技术示出的车辆检索方法,用户端(安卓或ios***的APP)和应用平台服务器电脑浏览器或手机浏览器,请求接口数据时连接HTTP,返回JSON格式数据;JSON格式数据处理逻辑复杂度高,拼接复杂的MYSQL语句,并做缓存,在车辆信息收集的过程中,通常根据实际的情况对车辆信息进行实时的更新,采用JSON格式数据,就需要多次请求MYSQL,多次缓存JSON格式数据,占用***内存,降低了***带宽、数据库等资源的利用率。
发明内容
本发明的发明目的在于提供一种数据的实时检索方法,装置及***,以解现有技术示出的车辆检索方法,在数据更新过程中多次缓存JSON格式数据,占用***内存,降低了***带宽、数据库等资源的利用率的技术问题。
本申请实施例第一方面示出一种数据的实时检索方法,所述方法包括:
接收用户端发送的查询请求;
基于所述查询请求遍历ES数据库,确定二进制显示文件;
发送所述二进制显示文件至用户端。
可选择的,所述发送二进制显示文件,至用户端的步骤包括:
如果所述二进制显示文件为PROTO文件,根据用户端采用的程序语言,将所述PROTO文件生成相应的语言代码;
发送所述语言代码至用户端。
可选择的,所述发送所述语言代码至用户端的步骤包括:
根据预置规则,对所述语言代码添加相应的GRPC扩展,生成显示文件;
发送所述显示文件至用户端。
可选择的,所述ES数据库的生成过程具体为:
收集MYSQL数据库的日志记录;
监测所述日志记录,确定目标日志,所述目标日志为日志记录发生变化的日志;
将所述目标日志的日志记录发送至ES数据库,更新所述ES数据库。
可选择的,所述接收用户端发送的查询请求步骤包括:
PHP接口接收用户端发送的查询请求;
PHP接口通过COMPOSER组件GRPC连接GRPC接口将所述查询请求发送至ES数据库。
本申请实施例第二方面示出一种数据的实时检索装置,所述装置包括:
接收单元,用于接收用户端发送的查询请求;
确定单元,用于基于所述查询请求遍历ES数据库,确定二进制显示文件;
发送单元,用于发送所述二进制显示文件至用户端。
可选择的,所述发送单元包括:
生成单元,用于如果所述二进制显示文件为PROTO文件,根据用户端采用的程序语言,将所述PROTO文件生成相应的语言代码;
第一发送单元,用于发送所述语言代码至用户端。
可选择的,所述第一发送单元包括:
添加单元,根据预置规则,对所述语言代码添加相应的GRPC扩展,生成显示文件;
第二发送单元,用于发送所述显示文件至用户端。
可选择的,所述确定单元包括:
收集单元,用于收集MYSQL数据库的日志记录;
监测单元,用于监测所述日志记录,确定目标日志,所述目标日志为日志记录发生变化的日志;
更新单元,用于将所述目标日志的日志记录发送至ES数据库,更新所述ES数据库。
可选择的,所述接收单元包括:
第一接收单元,用于PHP接口接收用户端发送的查询请求;
第三发送单元,用于PHP接口通过COMPOSER组件GRPC连接GRPC接口,GRPC接口将所述查询请求发送至ES数据库。
本申请实施例第三方面示出一种数据的实时检索***,所述***包括:
应用平台服务器,与所述应用平台服务器相连接的数据存储服务器,所述数据存储服务器设置在所述内部或独立设置,所述应用平台服务器通过互联网与终端相连接;
所述终端,用于信息的显示;
所述应用平台服务器,用于实现本申请实施例示出的方法;
所述数据存储服务器,用于相关数据的存储。
由以上技术方案可知,本申请实施例示出一种数据的实时检索方法,装置及***,所述方法包括接收用户端发送的查询请求;基于所述查询请求遍历ES数据库,确定二进制显示文件;发送所述二进制显示文件至用户端。本申请实施例示出的方案采用ES数据库对车辆信息进行存储,所述ES数据库,基于ElasticSearch搜索结果进行封装,实时的更新车辆信息,更新的结果以二进制的形式进行存储,相比于复杂的MYSQL存储方式,存储速度更快;同时,数据处理逻辑复杂度低,把复杂的MYSQL语句由ElasticSearch处理,有效的避免了数据多次缓存,节省了内存空闲,也未增添***运行负荷,提高***的运行效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1-1为根据一优选实施例示出的一种数据的实时检索***的结构框图;
图1-2为根据又一优选实施例示出的一种数据的实时检索***的结构框图;
图2为根据一优选实施例示出一种数据的实时检索***的硬件结构框图;
图3为根据一优选实施例示出的一种数据的实时检索方法的流程图;
图4为根据一优选实施例示出的步骤S103的详细流程图;
图5为根据一优选实施例示出的步骤S1032的详细流程图;
图6为根据一优选实施例示出的步骤S102的详细流程图;
图7为根据一优选实施例示出的步骤S101的详细流程图;
图8为根据一优选实施例示出的一种数据的实时检索的装置的结构框图;
图9为根据一优选实施例示出的发送单元的结构框图;
图10为根据一优选实施例示出的第一发送单元的结构框图;
图11为根据一优选实施例示出的确定单元的结构框图;
图12为根据一优选实施例示出的接收单元的结构框图;
图13为根据一优选实施例示出的一种服务器的结构框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整的描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例例如能够除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、***、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
本申请实施例示出的:
RPC:Remote Procedure Call远程过程调用,它是一种通过网络从远程计算机程序上请求服务,而不需要了解底层网络技术的协议。RPC协议假定某些传输协议的存在,如TCP或UDP,为通信程序之间携带信息数据。在OSI网络通信模型中,RPC跨越了传输层和应用层。
GRPC:为RPC框架。GRPC是***开源的一个高性能、跨语言的RPC框架,基于HTTP2协议,基于PROTObuf 3.x,基于Netty 4.x+。
对于开发者而言:
1)需要使用PROTObuf定义接口,即.PROTO文件
2)然后使用compile工具生成特定语言的执行代码,比如JAVA、C/C++、Python等。类似于thrift,为了解决跨语言问题。
3)启动一个Server端,server端通过侦听指定的port,来等待Client链接请求,通常使用Netty来构建,GRPC内置了Netty的支持。
4)启动一个或者多个Client端,Client也是基于Netty,Client通过与Server建立TCP长链接,并发送请求;Request与Response均被封装成HTTP2的stream Frame,通过NettyChannel进行交互。
PROTOBUF:Google PROTOcol Buffer(简称PROTObuf)是是***的一种数据交换的格式,它独立于语言,独立于平台。***提供了多种语言的实现:java、c#、c++、go和python,每一种实现都包含了相应语言的编译器以及库文件。由于它是一种二进制的格式,比使用xml进行数据交换快许多。可以把它用于分布式应用之间的数据通信或者异构环境下的数据交换。作为一种效率和兼容性都很优秀的二进制数据传输格式,可以用于诸如网络传输、配置文件、数据存储等诸多领域。
ES:Elasticsearch全文搜索引擎。
MYSQL:关系型数据库管理***。
IO:输入/输出(Input/Output)。
APP:Application手机软件(主要指安装在智能手机上的软件)
HTTP:HyperText Transfer PROTOcol超文本传输协议是互联网上应用最为广泛的一种网络协议。
JSON:是存储和交换文本信息的语法。
COMPOSER:PHP5.3以上的一个依赖管理工具,它允许你声明项目所依赖的代码库,它会在你的项目中为你安装他们。Composer不是一个包管理器。是的,它涉及"packages"和"libraries",但它在每个项目的基础上进行管理,在你项目的某个目录中(例如vendor)进行安装。
PHP:Hypertext Preprocessor,超文本预处理器。
实施例1:
现有技术示出的车辆检索方法,用户端(安卓或ios***的APP)和应用平台服务器电脑浏览器或手机浏览器,请求接口数据时连接HTTP,返回JSON格式数据;JSON格式数据处理逻辑复杂度高,拼接复杂的MYSQL语句,并做缓存,在车辆信息收集的过程中,通常根据实际的情况对车辆信息进行实时的更新,采用JSON格式数据,就需要多次请求MYSQL,多次缓存JSON格式数据,占用***内存,降低了***带宽、数据库等资源的利用率。
为了解决上述问题本申请实施例第一方面示出一种数据的实时检索***,请参阅图1-1,以及1-2,所述***包括:
应用平台服务器31,与所述应用平台服务器31相连接的数据存储服务器32,所述数据存储服务器32设置在所述平台服务器31内部或独立设置,所述应用平台服务器31通过互联网与所述终端33相连接;
所述终端33,用于发送查询请求至应用平台服务器31;
本申请实施例示出的终端33,是计算机网络中处于网络最***的设备,主要用于用户信息的输入以及处理结果的输出等。现有技术示出的移动终端如:手机、PAD均在本申请实施例的保护范围内。
所述应用平台服务器31;
本申请实施例示出的应用平台服务器31为Web应用程序提供一种简单的和可管理的对***资源的访问机制。应用平台服务器31也提供低级的服务,如TCP/IC协议的实现和数据库连接管理。
所述数据存储服务器32,用于相关数据的存储。现有技术示出的车辆检索方法,预先将收集的车辆信息以MYSQL形式存储于MYSQL数据库中,本申请实施例示出的***,在实现的过程中采用MYSQL数据库中的数据,实时的检测MYSQL数据库中的数据,当MYSQL数据库中的数据的是数据发生变化时,将变化的数据传输至ES数据库,并以二进制文件的方式在ES数据库中进行存储。
本申请实施例示出的数据存储服务器33被配置来执行多种功能,如它可以作为数据存储服务器、打印服务器、应用数据库服务器、Web服务器,甚至可以是集以上多种功能于一身。值得注意的是本申请实施例示出的数据存储服务器32设置有快速的处理器芯片、比较多的RAM以及足够的内部磁盘空间,以便应对终端用户随时可能出现的应用调配需求。
请参阅图2,其中用户端APP即为本申请实施例示出的终端,用于发送查询请求至应用平台服务器,同时用于接收应用平台服务器发送PROTO文件,并生成相应的显示文件。
本申请实施例示出的应用平台服务器设置有,PHP接口,COMPOSER组件,GRPC接口,ElasticSearch搜索引擎;
用户端APP发送查询请求,应用平台服务器通过PHP接口,接收用户端发送的查询请求,PHP接口通过COMPOSER组件的GRPC连接GRPC接口,GRPC接口基于所述查询请求对ElasticSearch搜索结果进行封装,最终生成一个PROTO文件,然后将返回PROTOBUF数据给PHP接口,返回给用户端APP。
举例说明:
用户端APP输入一查询请求为:红色奥迪车,应用平台服务器通过PHP接口获取“红色奥迪车”的查询请求并通过COMPOSER组件的GRPC连接GRPC接口,将“红色奥迪车”的查询请求发送至GRPC接口,所述ElasticSearch搜索引擎,基于“红色奥迪车”的查询请求遍历ES数据库筛选出与所述“红色奥迪车”查询请求相匹配的查询结果,并将所述查询结果生成PROTO文件,通过PHP接口,返回给用户端APP。用户APP显示相应的查询结果。
值得注意的是,本申请实施例示出的方法实时的监测MYSQL数据库的数据,若MYSQL数据库的数据发生变化,例如:红色奥迪车的数量由原来为8辆变为10辆,MYSQL数据库将变化后的数据,即红色奥迪车的数量为10辆,发送至ES数据库,所述ES,以二进制的形式存储所述变化后的数据,无需编写复杂的MYSQL语句,数据数据处理逻辑复杂度低。避免了是在数据更新过程中多次编写复杂的MYSQL语句,并多次存储缓存,节省了内存空闲,也未增添***运行负荷,提高***的运行效率。
同时,本申请实施例示出的应用平台服务器请求连接GRPC,GRPC基于TCP/IP协议,在OSI网络通信模型中,TCP/IP协议跨越了传输层和应用层。相比较传统的应用平台服务器,具有更快的数据传输速度,提高***的运行效率。
本申请实施示出的方案采用ES数据库对车辆信息进行存储,所述ES数据库,基于ElasticSearch搜索结果进行封装。通过实时的获取MYSQL数据库中的数据的变化,并变化的数据以二进制的形式进行存储,相比于MYSQL数据库以复杂的MYSQL存储方式,本申请实施例示出的ES数据库存储速度更快;同时,二进制的存储方式,在数据存储的过程中,无需构建复杂的MYSQL语句,数据处理逻辑复杂度低,把复杂的MYSQL语句由ElasticSearch处理,有效的避免了数据多次缓存,节省了内存空闲,也未增添***运行负荷,提高***的运行效率。
实施例2:
本申请实施例第二方面示出一种数据的实时检索方法,请参阅图3,所述方法包括:
S101接收用户端发送的查询请求;
所述查询请求可以是对一类车辆数量的查询,例如褐色奥迪车的数量;
也可是对某一车辆的车辆信息进行查询,例如:VIN码为:123456789123车辆的车辆信息的查询;
也可以是对某一车辆的维修记录进行查询。
需要说明的是,本申请本实施例只是示例性的记录了几种车辆相关信息的查询,在实际应用中,凡是对车辆的查询的相关项目均在本申请实施例保护范围内,在此,由于篇幅有限,便不一一举例。
用户通过在终端APP上不同的选项,生成相应的查询请求。
S102基于所述查询请求遍历ES数据库,确定二进制显示文件;
所述ES数据库,用于存储ElasticSearch搜索引擎的监测结果;
预先将收集的车辆信息以MYSQL语句的形式存储与MYSQL数据库中。
具体的,本申请实施例示出方法,直接利用现有技术已建立的MYSQL数据库,实时监测MYSQL数据库中数据的更新,若MYSQL数据库发生数据更新,MYSQL数据库直接将更新后的数据传输到ES数据库中,ES数据库直接将更新后的数据进行存储,并以二进制的形式对数据进行存储。
当接收到用户发送的查询请求,基于查询请求遍历ES数据库,搜索出与查询请求相匹配的二进制显示文件;
例如:查询请求是:褐色奥迪车的数量。对应的二进制文件为:9辆;
查询请求是:VIN码为:123456789123车辆的车辆信息;对应的二进制文件为:车辆名称为:奥迪,颜色为:褐色,车型:SUV……等一些列车辆信息。
值得注意的是,本申请实施例示出的ES数据库,在MYSQL数据可中的数据发生变化时,仅仅对更新的数据经行更新,存储;数据的存储形式以二进制的形式进行存储,无需编写复杂的MYSQL语句,数据数据处理逻辑复杂度低。避免了是在数据更新过程中对MYSQL语句的多次缓存,节省了内存空闲,也未增添***运行负荷,提高***的运行效率。
S103发送所述二进制显示文件至用户端。
本申请实施例示出的方案采用ES数据库对车辆信息进行存储,所述ES数据库,基于ElasticSearch搜索结果进行封装,实时的更新车辆信息,更新的结果以二进制的形式进行存储,相比于复杂的MYSQL存储方式,存储速度更快;同时,数据处理逻辑复杂度低,把复杂的MYSQL语句由ElasticSearch处理,有效的避免了数据多次缓存,节省了内存空闲,也未增添***运行负荷,提高***的运行效率。
实施例3:
为了提高本申请实施例示出方法的通用性,本申请实施例示出方法采用PROTO文件作为应用平台服务器与用户端的传输文件,具体的,请参阅图4。
实施例3与实施例2具有相似的步骤,唯一的区别在于,实施例2示出的技术方案中步骤S103包括以下步骤:
S1031如果所述二进制显示文件为PROTO文件,根据用户端采用的程序语言,将所述PROTO文件生成相应的语言代码;
GRPC接口通过COMPOSER组件PROTOBUF返回数据PROTO文件,是通过先下载与查询请求对应的PROTO文件,根据用户端***采用的程序语言,将PROTO文件转化为相应的语言代码,生成对应的语言代码(如:PHP、Java、Python、C++等)。
举例说明,如果用户端采用的程序语言为C++,相应的将与查询请求对应的PROTO文件,转化为C++语言代码,发送至用户端。
S1032发送所述语言代码至用户端。
可见本申请实施例示出的方法采用PROTO文件作为应用平台服务器与用户端的传输文件,所述PROTO文件可转化为PHP、Java、Python、C++等相应的语言代码,转换后的语言代码直接发送至用户端,被用户端识别,用于相关数据的显示。
可见本申请实施例示出的方,采用PROTO文件作为应用平台服务器与用户端的传输文件,可适用于采用PHP、Java、Python、C++作为程序语言的终端,增加了本申请实施例示出方法的通用性。
实施例4:
为了方便用户对车辆信息的比对,本申请实施例示出的方法对语言代码添加相应的显示文件,以方便用户在查询过程中对信息的比对,具体的,请参阅图5。
实施例4与实施例3具有相似的步骤,唯一的区别在于,实施例3示出的技术方案中步骤S1032包括以下步骤:
S10321根据预置规则,对所述语言代码添加相应的GRPC扩展,生成显示文件;
本申请实施例示出的方法,将生成的语言代码添加相应的GRPC扩展生成5个文件:
文件1:生成一个通信用的服务通道,用来调用PROTObuf的底层协议;
文件2:fiancemodel实体;
文件3:公用条件;
文件4:搜索条件;
文件5:返回对象;
所述预置规则根据用户端输入的查询请求而定。
例如:用户对某一类的车辆进行查询,红色奥迪车辆的车辆信息,通产查询结果有几百项,甚至几千项,此时,需要多个页面进行显示,在多个页面显示的过程中,每个页面都有公共显示项,例如:序号,每个页面的页眉,页脚,页码;这些公共显示项即为公用条件;
查询结果均同个公共条件,以相同的形式进行显示,方便用户对不同车辆信息的对比,快速搜索出目标车辆。
对于查询请求,VIN码为:123456789123车辆的车辆信息的查询;
语言代码添加相应的GRPC扩展为:文件2,fiancemodel实体,即唯一一个车辆对应的车辆信息车辆名称为:奥迪,颜色为:褐色,车型:SUV……等一些列车辆信息。
或对于查询请求,红色奥迪车辆的数量,则语言代码添加相应的GRPC扩展为文件2,fiancemodel实体,9个。
或对于查询请求,绿色奥迪车的数量,则语言代码添加相应的GRPC扩展为文件2,搜索条件,绿色奥迪车并未搜索到相关的记录。
对于查询请求,红色奥迪车辆的车辆信息语言代码添加相应的GRPC扩展为文件2,返回对象,则将一些列关于红色奥迪车辆的车辆信息均返回值用户端进行显示。
可见本申请实施例示出的方法可根据用户的查询请求对语言代码添加相应的GRPC扩展,将最适合该用户的文件发送至用户端进行显示,方便用户对信息的获取与比对,缩短了用户信息搜索的时间,进一步提高了***提高***的运行效率。
S10322发送所述显示文件至用户端。
实施例5:
为了进一步,节省了内存空闲,本申请实施例示出一种ES数据库的更新方法,具体的,请参阅图6:
实施例5与实施例1具有相似的步骤唯一的区别在于,实施例1示出的技术方案中步骤S102步骤中ES数据库的生成过程具体为:
S1021收集MYSQL数据库的日志记录;
S1022监测所述日志记录,确定目标日志,所述目标日志为日志记录发生变化的日志;
S1023将所述目标日志的日志记录发送至ES数据库,更新所述ES数据库。
本申请实施例示出的方法实时的监测MYSQL数据库的数据,若MYSQL数据库的数据发生变化,例如:红色奥迪车的数量由原来为8辆变为10辆,MYSQL数据库将变化后的数据,即红色奥迪车的数量为10辆,发送至ES数据库,所述ES,以二进制的形式存储所述变化后的数据,无需编写复杂的MYSQL语句,数据数据处理逻辑复杂度低。避免了是在数据更新过程中对MYSQL语句的多次缓存,节省了内存空闲,也未增添***运行负荷,提高***的运行效率。
实施例6:
实施例6与实施例2具有相似的步骤唯一的区别在于,实施例2示出的技术方案中步骤S101包括以下步骤,具体的,请参阅图7:
S1011PHP接口接收用户端发送的查询请求;
S1012PHP接口通过COMPOSER组件GRPC连接GRPC接口,将所述查询请求发送至ES数据库。
本申请实施例示出的应用平台服务器请求连接GRPC,GRPC基于TCP/IP协议,在OSI网络通信模型中,TCP/IP协议跨越了传输层和应用层。相比较传统的应用平台服务器,具有更快的数据传输速度。提高***的运行效率。
实施例7:
本申请实施例第三方面示出一种数据的实时检索装置,具体的请参阅图8,所述装置包括:
接收单元21,用于接收用户端发送的查询请求;
确定单元22,用于基于所述查询请求遍历ES数据库,确定二进制显示文件;
发送单元23,用于发送所述二进制显示文件至用户端。
实施例8:
请参阅图9,实施例7示出的技术方案中,所述发送单元23包括:
生成单元231,用于如果所述二进制显示文件为PROTO文件,根据用户端采用的程序语言,将所述PROTO文件生成相应的语言代码;
第一发送单元232,用于发送所述语言代码至用户端。
实施例9:
请参阅图10,实施例8示出的技术方案中,所述第一发送单元232包括:
添加单元2321,用于根据预置规则,对所述语言代码添加相应的GRPC扩展,生成显示文件;
第二发送单元2322,用于发送所述显示文件至用户端。
实施例10:
请参阅图11,实施例7示出的技术方案中,所述确定单元22包括:
收集单元221,用于收集MYSQL数据库的日志记录;
监测单元222,用于监测所述日志记录,确定目标日志,所述目标日志为日志记录发生变化的日志;
更新单元223,用于将所述目标日志的日志记录发送至ES数据库,更新所述ES数据库。
实施例11:
请参阅图12,实施例7示出的技术方案中,所述接收单元21包括:
第一接收单元211,用于PHP接口接收用户端发送的查询请求;
第三发送单元212,用于PHP接口通过COMPOSER组件GRPC连接GRPC接口,GRPC接口将所述查询请求发送至ES数据库。
请参阅图13本申请实施例第四方面示出本申请实施例第四方面示出一服务器,包括:
一个或多个处理器41;
存储器42,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器41执行,使得所述一个或多个处理器41实现本申请实施例实处的方法。
由以上技术方案可知,本申请实施例示出一种数据的实时检索方法,装置及***,所述方法包括接收用户端发送的查询请求;基于所述查询请求遍历ES数据库,确定二进制显示文件;发送所述二进制显示文件至用户端。本申请实施例示出的方案采用ES数据库对车辆信息进行存储,所述ES数据库,基于ElasticSearch搜索结果进行封装,实时的更新车辆信息,更新的结果以二进制的形式进行存储,相比于复杂的MYSQL存储方式,存储速度更快;同时,数据处理逻辑复杂度低,把复杂的MYSQL语句由ElasticSearch处理,有效的避免了数据多次缓存,节省了内存空闲,也未增添***运行负荷,提高***的运行效率。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本申请的真正范围和精神由下面的权利要求指出。
应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本申请的范围仅由所附的权利要求来限制。
值得注意的是,具体实现中,本申请还提供一种计算机存储介质,其中,该计算机存储介质可存储有程序,该程序执行时可包括本申请提供的用户身份的服务提供方法或用户注册方法的各实施例中的部分或全部步骤。所述的存储介质可为磁碟、光盘、只读存储记忆体(英文:read-only memory,简称:ROM)或随机存储记忆体(英文:random accessmemory,简称:RAM)等。
本领域的技术人员可以清楚地了解到本申请实施例中的技术可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本申请实施例中的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例或者实施例的某些部分所述的方法。
本说明书中各个实施例之间相同相似的部分互相参见即可。尤其,对于用户身份的服务提供装置或用户注册装置的实施例而言,由于其基本相似于方法实施例,所以描述的比对简单,相关之处参见方法实施例中的说明即可。
以上所述的本申请实施方式并不构成对本申请保护范围的限定。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本申请的真正范围和精神由下面的权利要求指出。
应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本申请的范围仅由所附的权利要求来限制。
Claims (7)
1.一种数据的实时检索方法,其特征在于,所述方法包括:
接收用户端发送的查询请求;
基于所述查询请求遍历ElasticSearch数据库得到搜索结果,并对搜索结果进行封装,最终生成一个二进制显示文件,其中,所述ElasticSearch数据库为全文搜索引擎数据库,所述ElasticSearch数据库的生成过程具体为:收集MYSQL数据库的日志记录;监测所述日志记录,确定目标日志,所述目标日志为日志记录发生变化的日志;将所述目标日志的日志记录发送至ElasticSearch数据库,更新所述ElasticSearch数据库;
所述二进制显示文件为PROTO文件,根据用户端采用的程序语言,将所述PROTO文件生成相应的语言代码,发送所述语言代码至用户端,其中,所述PROTO文件为PROTObuf文本。
2.根据权利要求1所述的方法,其特征在于,所述发送语言代码至用户端的步骤包括:
根据预置规则,对所述语言代码添加相应的GRPC扩展,生成显示文件,其中,所述GRPC扩展为远程调用框架扩展;
发送所述显示文件至用户端。
3.根据权利要求2所述的方法,其特征在于,所述接收用户端发送的查询请求步骤包括:
PHP接口接收用户端发送的查询请求,其中,所述PHP接口为超文本预处理器接口;
PHP接口通过COMPOSER组件GRPC 连接GRPC接口将所述查询请求发送至ElasticSearch数据库。
4.一种数据的实时检索装置,其特征在于,所述装置包括:
接收单元,用于接收用户端发送的查询请求;
确定单元,用于基于所述查询请求遍历ElasticSearch数据库得到搜索结果,并对搜索结果进行封装,最终生成一个二进制显示文件,所述确定单元包括:收集单元,用于收集MYSQL数据库的日志记录;监测单元,用于监测所述日志记录,确定目标日志,所述目标日志为日志记录发生变化的日志;更新单元,用于将所述目标日志的日志记录发送至ElasticSearch数据库,更新所述ElasticSearch数据库;
生成单元,用于所述二进制显示文件为PROTO文件,根据用户端采用的程序语言,将所述PROTO文件生成相应的语言代码, 其中,所述PROTO文件为PROTObuf文本;
第一发送单元,用于发送所述语言代码至用户端。
5.根据权利要求4所述的装置,其特征在于,所述第一发送单元包括:
添加单元,根据预置规则,对所述语言代码添加相应的GRPC扩展,生成显示文件;
第二发送单元,用于发送所述显示文件至用户端。
6.根据权利要求4所述的装置,其特征在于,所述确定单元包括:
收集单元,用于收集MYSQL数据库的日志记录;
监测单元,用于监测所述日志记录,确定目标日志,所述目标日志为日志记录发生变化的日志;
更新单元,用于将所述目标日志的日志记录发送至ElasticSearch数据库,更新所述ElasticSearch数据库。
7.一种数据的实时检索***,其特征在于,所述***包括:
应用平台服务器,与所述应用平台服务器相连接的数据存储服务器,所述数据存储服务器设置在所述平台服务器内部或独立设置,所述应用平台服务器通过互联网与终端相连接;
所述终端,用于信息的显示;
所述应用平台服务器,用于实现权利要求1-3任一项所述的方法;
所述数据存储服务器,用于相关数据的存储。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810278260.3A CN110555042B (zh) | 2018-03-30 | 2018-03-30 | 一种数据的实时检索方法,装置及*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810278260.3A CN110555042B (zh) | 2018-03-30 | 2018-03-30 | 一种数据的实时检索方法,装置及*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110555042A CN110555042A (zh) | 2019-12-10 |
CN110555042B true CN110555042B (zh) | 2023-06-20 |
Family
ID=68733609
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810278260.3A Active CN110555042B (zh) | 2018-03-30 | 2018-03-30 | 一种数据的实时检索方法,装置及*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110555042B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111078571B (zh) * | 2019-12-20 | 2024-02-02 | 广州品唯软件有限公司 | 模拟响应的测试方法、终端设备及计算机可读存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1997024879A1 (en) * | 1995-12-28 | 1997-07-10 | Tele-Communications, Inc. | Methods and systems for client or customer-site transaction processing in a distributed database system |
CN103176970A (zh) * | 2011-12-20 | 2013-06-26 | 腾讯科技(深圳)有限公司 | 一种检索方法及检索*** |
CN104519059A (zh) * | 2014-12-16 | 2015-04-15 | 北京中交兴路车联网科技有限公司 | 一种车辆的实时告警处理***及方法 |
CN107169083A (zh) * | 2017-05-11 | 2017-09-15 | 聚龙融创科技有限公司 | 公安卡口海量车辆数据存储与检索方法及装置、电子设备 |
CN107341212A (zh) * | 2017-06-26 | 2017-11-10 | 努比亚技术有限公司 | 一种缓存更新方法及设备 |
-
2018
- 2018-03-30 CN CN201810278260.3A patent/CN110555042B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1997024879A1 (en) * | 1995-12-28 | 1997-07-10 | Tele-Communications, Inc. | Methods and systems for client or customer-site transaction processing in a distributed database system |
CN103176970A (zh) * | 2011-12-20 | 2013-06-26 | 腾讯科技(深圳)有限公司 | 一种检索方法及检索*** |
CN104519059A (zh) * | 2014-12-16 | 2015-04-15 | 北京中交兴路车联网科技有限公司 | 一种车辆的实时告警处理***及方法 |
CN107169083A (zh) * | 2017-05-11 | 2017-09-15 | 聚龙融创科技有限公司 | 公安卡口海量车辆数据存储与检索方法及装置、电子设备 |
CN107341212A (zh) * | 2017-06-26 | 2017-11-10 | 努比亚技术有限公司 | 一种缓存更新方法及设备 |
Also Published As
Publication number | Publication date |
---|---|
CN110555042A (zh) | 2019-12-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10447772B2 (en) | Managed function execution for processing data streams in real time | |
US11775501B2 (en) | Trace and span sampling and analysis for instrumented software | |
CN106131213B (zh) | 一种服务管理方法和*** | |
CN107133267B (zh) | 查询elasticsearch集群的方法、装置、电子设备和可读存储介质 | |
CN112383533B (zh) | 报文格式转换方法及装置 | |
CN101609415B (zh) | 基于中间件的通用服务调用***及方法 | |
CN111045833B (zh) | 接口调用的方法和装置 | |
CN109783562B (zh) | 一种业务处理方法和装置 | |
WO2020092135A1 (en) | Extracting web api endpoint data from source code | |
Medvedev et al. | Data ingestion and storage performance of IoT platforms: Study of OpenIoT | |
CN113900907B (zh) | 一种映射构建方法和*** | |
CN110555042B (zh) | 一种数据的实时检索方法,装置及*** | |
CN109086414B (zh) | 用于搜索区块链数据的方法、装置及存储介质 | |
CN114003835A (zh) | 页面渲染方法、装置、设备及存储介质 | |
US9043323B2 (en) | Method and apparatus for providing search with contextual processing | |
CN116204239A (zh) | 业务处理方法、装置和计算机可读存储介质 | |
CN111680247B (zh) | 网页字符串的本地调用方法、装置、设备及存储介质 | |
CN111488386B (zh) | 数据查询方法和装置 | |
CN110764769B (zh) | 处理用户请求的方法和装置 | |
Suguna et al. | User interest level based preprocessing algorithms using web usage mining | |
US8321535B2 (en) | Web services integration systems and methods | |
CN116150513A (zh) | 数据处理方法、装置、电子设备及计算机可读存储介质 | |
CN109710604A (zh) | 数据处理方法、装置、***、计算机可读存储介质 | |
CN113515494B (zh) | 基于分布式文件***的数据库处理方法和电子设备 | |
CN112887442B (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 | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20231221 Address after: A1 Floor, Southeast Comprehensive Building, Intersection of Yangmiao Road and Chezuo Road, Wushan Town, Changfeng County, Hefei City, Anhui Province, 231100 Patentee after: Youxin (Anhui) Industrial Investment Co.,Ltd. Address before: 100102 room 323609, building 5, yard 1, Futong East Street, Chaoyang District, Beijing Patentee before: CARPRO (BEIJING) INFORMATION TECHNOLOGY CO.,LTD. |