CN115794143A - 一种客户端升级方法及装置 - Google Patents
一种客户端升级方法及装置 Download PDFInfo
- Publication number
- CN115794143A CN115794143A CN202211245371.7A CN202211245371A CN115794143A CN 115794143 A CN115794143 A CN 115794143A CN 202211245371 A CN202211245371 A CN 202211245371A CN 115794143 A CN115794143 A CN 115794143A
- Authority
- CN
- China
- Prior art keywords
- version
- request
- service
- client
- protocol
- 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
Landscapes
- Stored Programmes (AREA)
Abstract
本申请公开了一种客户端升级方法及装置,该方法包括第一设备获取第一应用的第一请求;第一设备通过第一客户端调用第一服务,第一服务用于处理第一应用的请求,第一客户端的版本为第一版本,第一服务的版本为第二版本;第一设备获取第一请求完成处理的指示信息;第一设备将第一客户端的版本升级为第二版本。该方法通过第一客户端调用第一服务的方式处理第一请求,第一服务处理完第一请求后,升级客户端版本,从而实现Hive等客户端版本的不停机升级。
Description
技术领域
本申请涉及计算机领域,尤其涉及一种客户端升级方法及装置。
背景技术
随着大数据技术的飞速发展,分布式数据库逐渐成为人们关注的焦点。基于分布式系统基础架构(Hadoop)的分布式数据仓库(Hive),是一个适用于数据仓库存储的开源数据库,具有高扩展性、高性能想、大数据处理等特点。随着新技术、新功能不断的加入,Hive在Hadoop生态环境中不断的完善,Hive的版本不断更新,因此,如果使用新技术、新功能则需要对Hive的版本进行更新。
目前的Hive版本升级方式中,通常会搭建一个集群,通过搭建的集群迁移数据,但是通过集群迁移数据的过程中需要停机一段时间。因此,无法实现Hive版本的不停机升级。
发明内容
本发明通过了一种客户端升级方法及装置,用以实现Hive等客户端版本的不停机升级。
第一方面,本申请实施例提供了一种客户端升级方法,包括:第一设备获取第一应用的第一请求;第一设备通过第一客户端调用第一服务,第一服务用于处理第一应用的请求,第一客户端的版本为第一版本,第一服务的版本为第二版本;第一设备获取第一请求完成处理的指示信息;第一设备将第一客户端的版本升级为第二版本。
根据该方法,第一设备可用于通过第一客户端调用第一服务的方式处理第一请求,第一服务处理完第一请求后,升级客户端版本,从而实现Hive等客户端版本的不停机升级。
在一种可能的设计中,第一设备将第一服务的版本升级为第二版本。其中可选的,第一设备将第一服务的元数据的格式升级为第二版本支持的元数据格式。
根据该设计,第一设备在升级客户端版本之前,将第一服务的版本升级为第二版本为升级客户端做准备,从而提高升级效率。
在一种可能的设计中,第一设备将第一请求转换为第二版本支持的第二请求,第一服务具体用于处理第二请求。
其中可选的,第一设备将第一接口转换为第二版本支持的第二接口,第一请求通过第一接口获取,第二接口用于将第二请求发送至第一服务。根据该设计,第一设备通过将第一接口转换为第二版本支持的第二接口的方式,保障第一设备可以通过第一客户端调用第一服务。
可选的,第一设备将第一协议转换为第二版本支持的第二协议,第一协议为第一请求对应的协议,第二协议为第二请求对应的协议。根据该设计,第一设备通过将第一协议转换为第二版本支持的第二协议,保障第一设备可以通过第一客户端调用第一服务。
第二方面,本申请实施例还提供了一种客户端升级装置,包括通信模块和处理模块。其中:
通信模块,用于获取第一应用的第一请求;
处理模块,用于通过第一客户端调用第一服务,第一服务用于处理第一应用的请求,第一客户端的版本为第一版本,第一服务的版本为第二版本;
通信模块,还用于获取第一请求完成处理的指示信息;
处理模块,还用于将第一客户端的版本升级为第二版本。
在一种可能的设计中,处理模块具体用于:将第一服务的版本升级为第二版本。其中可选的,处理模块具体还用于:将第一服务的元数据的格式升级为第二版本支持的元数据格式。
在一种可能的设计中,处理模块具体用于:将第一请求转换为第二版本支持的第二请求,第一服务具体用于处理第二请求。其中可选的,处理模块具体还用于:将第一接口转换为第二版本支持的第二接口,第一请求通过第一接口获取,第二接口用于将第二请求发送至第一服务。可选的,处理模块具体还用于:将第一协议转换为第二版本支持的第二协议,第一协议为第一请求对应的协议,第二协议为第二请求对应的协议。
第三方面,本申请实施例还提供了一种电子设备,电子设备包括处理器,处理器用于执行存储器中存储的计算机程序时实现第一方面及其任意一种设计的方法。
第四方面,本申请实施例还提供了一种计算机可读存储介质,其存储有计算机程序,计算机程序被处理器执行时实现第一方面及其任意一种设计的方法。
第二方面至第四方面及其任意一种设计所带来的技术效果可参见第一方面中对应的设计所带来的技术效果,此处不再赘述。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种客户端升级方法的流程示意图;
图2为本申请实施例提供的一种客户端升级装置结构示意图;
图3为本申请实施例提供的一种电子设备结构示意图。
具体实施方式
为了使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请作可选的详细描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。
下面,结合现有技术对客户端升级方法进行介绍。
在分布式数据库(Hive)的使用过程中,随着新技术、新功能的不断加入,如果使用新功能,则需要升级数据库。由于是两个不同的版本,两个版本的表结构、使用的协议和接口等也会发生变化,导致升级后的版本不兼容升级前的版本。因此,迁移数据则需要搭建一个集群,通过搭建的集群迁移数据,但是通过搭建的集群迁移数据的过程中需要停机一段时间,因此无法实现Hive版本的不停机升级。
为了解决上述缺陷,本申请提供一种客户端升级方法及装置,用以实现Hive等客户端版本的不停机升级。
本申请中,采用的方法包括:第一设备获取第一应用的第一请求;第一设备通过第一客户端调用第一服务,第一服务用于处理所述第一请求,第一客户端的版本为第一版本,第一服务的版本为第二版本;第一设备获取第一请求完成处理的指示信息;第一设备将所述第一客户端的版本升级为第二版本。
可以理解,本申请中的第一设备可用于通过第一客户端调用第一服务的方式处理第一请求,第一服务处理完第一请求后,升级客户端版本,从而实现Hive等客户端版本的不停机升级。此外,第一设备可以包括在用于执行本申请所示方法的计算机系统中,或者可以是计算机系统中用于执行本申请所示方法的处理装置,如处理器或处理模块等,本申请不具体限定。
图1为本发明实施例提供的一种不停机升级的方法的流程示意图。以第一设备为执行主体为例,该流程可以包括以下步骤:
S101,第一设备获取第一应用的第一请求。
S102,第一设备通过第一客户端调用第一服务。其中,第一服务用于处理第一应用的请求,第一客户端的版本为第一版本,第一服务的版本为第二版本。
可选的,第一设备将第一版本的第一服务的版本升级为第二版本。可选的,第一设备将第一服务的元数据的格式升级为第二版本支持的元数据格式。本申请中,元数据为描述数据的数据,如包括描述数据属性的信息,其可用来指示存储位置、历史数据、资源查找、文件记录等功能。
作为一种可能的实施例,第一设备可通过以下方式升级第一服务的版本:
第一设备可以将第二版本的元数据服务器组件和HiveServer组件部署在第一版本服务的集群中。采用该设计,将第二版本的服务部署在第一版本服务的集群中,无需新建集群,从而避免了其他数据的迁移,提高升级效率,其中,其他数据不包括元数据。
可选的,第一设备还可根据元数据的升级方式将第一服务的元数据格式升级为第二版本支持的元数据格式。其中,元数据的升级方式可以是人工预先根据不同版本的元数据格式以及元数据升级脚本确定的。采用该设计,预先确定元数据的升级方式,可以提高升级效率。
第一设备还可以将第二版本支持的元数据迁移到第二版本的服务中。
可选的,第一设备将第一请求转换为第二版本支持的第二请求,其中,第一请求为第一版本支持的第一请求,第一服务具体用于处理第二请求。
可选的,第一设备可通过以下方式将第一请求转换为第二版本支持的第二请求:
第一设备可以将第一接口转换为第二版本支持的第二接口。其中,第一请求通过第一接口获取,第二接口用于将第二请求发送至第一服务。
示例性的,第二版本的预定义配置不包含hive.开头的参数,如果第一请求包含set语句,则系统会直接报错。第一设备可以在第一接口中增加hive.开头的参数,并将第一接口封装转换为第二接口。第一设备还可以通过第二接口将第一请求转换为第二版本支持的第二请求。
采用该设计,通过将第一接口转换为第二版本支持的第二接口的方式,保障第一设备可以通过第一客户端调用第一服务。
第一设备还可以将第一协议转换为第二版本支持的第二协议。其中,第一协议为第一请求对应的协议,第二协议为第二请求对应的协议。
示例性的,第一版本可以用Hive CLI协议实现客户端与服务的交互操作,但第二版本仅可以使用Beeline协议实现客户端与服务的交互操作。由于第一客户端的版本为第一版本,第一服务的版本为第二版本,因此,第一请求无法访问第一服务。第一设备可以将Hive CLI协议接收的第一请求转换为Beeline协议对应的第二请求,从而实现第一请求可以访问第一服务。
采用该设计,通过将第一协议转换为第二版本支持的第二协议,保障第一设备可以通过第一客户端调用第一服务。
S103,第一设备获取第一请求完成处理的指示信息。
采用该设计,通过获取第一请求完成处理的指示信息,保障第一服务处理完第一请求后,再执行S104,提高版本升级的稳定性。
S104,第一设备将第一客户端的版本升级为第二版本。
可选的,第一设备将第一客户端的版本升级为第二版本后,第一设备通过第二版本的客户端调用第一服务。
可选的,若系统正常运行,第一设备将其他的客户端按照上述方法进行升级,若系统运行异常,则第一设备仍通过第一客户端调用第一服务。也就是说,可以先升级部分第一版本的客户端,当第二版本的客户端正产运行之后,再将其他未升级的客户端进行升级。
采用该设计,客户端升级过程中出现异常情况,即可将客户端的版本回滚至第一版本,提高了版本升级的可控性以及稳定性。
基于上述内容和相同构思,本申请提供一种客户端升级装置。如图2所示,该装置包括通信模块201和处理模块202。
通信模块201,用于获取第一应用的第一请求;
处理模块202,用于通过第一客户端调用第一服务,第一服务用于处理第一应用的请求,第一客户端的版本为第一版本,第一服务的版本为第二版本;
通信模块201,还用于获取第一请求完成处理的指示信息;
处理模块202,还用于将第一客户端的版本升级为第二版本。
在一种可能的设计中,处理模块202具体用于:将第一服务的版本升级为第二版本。其中可选的,处理模块202具体还用于:将第一服务的元数据的格式升级为第二版本支持的元数据格式。
在一种可能的设计中,处理模块202具体用于:将第一请求转换为第二版本支持的第二请求,第一服务具体用于处理第二请求。其中可选的,处理模块202具体还用于:将第一接口转换为第二版本支持的第二接口,第一请求通过第一接口获取,第二接口用于将第二请求发送至第一服务。可选的,处理模块202具体还用于:将第一协议转换为第二版本支持的第二协议,第一协议为第一请求对应的协议,第二协议为第二请求对应的协议。
图3示出了本申请实施例提供的一种客户端升级装置的结构示意图。
本申请实施例中的电子设备可包括处理器301。处理器301是该装置的控制中心,可以利用各种接口和线路连接该装置的各个部分,通过运行或执行存储在存储器303内的指令以及调用存储在存储器303内的数据。可选的,处理器301可包括一个或多个处理单元,处理器301可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器301中。在一些实施例中,处理器301和存储器303可以在同一芯片上实现,在一些实施例中,它们也可以在独立的芯片上分别实现。
处理器301可以是通用处理器,例如中央处理器(CPU)、数字信号处理器、专用集成电路、现场可编程门阵列或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件,可以实现或者执行本申请实施例中公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者任何常规的处理器等。结合本申请实施例所公开的方法步骤可以直接由硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
在本申请实施例中,存储器303存储有可被至少一个处理器301执行的指令,至少一个处理器301通过执行存储器303存储的指令,可以用于执行本申请实施例所公开的方法步骤。
存储器303作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块。存储器303可以包括至少一种类型的存储介质,例如可以包括闪存、硬盘、多媒体卡、卡型存储器、随机访问存储器(Random AccessMemory,RAM)、静态随机访问存储器(Static Random Access Memory,SRAM)、可编程只读存储器(Programmable Read Only Memory,PROM)、只读存储器(Read Only Memory,ROM)、带电可擦除可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,EEPROM)、磁性存储器、磁盘、光盘等。存储器303是能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。本申请实施例中的存储器303还可以是电路或者其它任意能够实现存储功能的装置,用于存储程序指令和/或数据。
本申请实施例中,该装置还可以包括通信接口302,电子设备可以通过该通信接口302传输数据。
可选的,可由图3所示处理器301(或处理器301和通信接口302)实现图2所示的通信模块201和/或处理模块202,也就是说,可以由处理器301(或处理器301和通信接口302)执行通信模块201和/或处理模块202的动作。
基于相同的发明构思,本申请实施例还提供一种计算机可读存储介质,其中可存储有指令,当该指令在计算机上运行时,使得计算机执行上述方法实施例提供的操作步骤。该计算机可读存储介质可以是图3所示的存储器303。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
Claims (14)
1.一种客户端升级方法,其特征在于,所述方法包括:
第一设备获取第一应用的第一请求;
第一设备通过第一客户端调用第一服务,所述第一服务用于处理所述第一应用的请求,所述第一客户端的版本为第一版本,所述第一服务的版本为第二版本;
所述第一设备获取所述第一请求完成处理的指示信息;
所述第一设备将所述第一客户端的版本升级为所述第二版本。
2.如权利要求1所述的方法,其特征在于,所述方法还包括:
将所述第一服务的版本升级为所述第二版本。
3.如权利要求2所述的方法,其特征在于,所述第一服务的版本升级为所述第二版本,包括:
将第一服务的元数据的格式升级为所述第二版本支持的元数据格式。
4.如权利要求1所述的方法,其特征在于,所述第一请求为所述第一版本支持的第一请求,所述方法还包括:
将所述第一请求转换为所述第二版本支持的第二请求,所述第一服务具体用于处理所述第二请求。
5.如权利要求4所述的方法,其特征在于,所述第一请求转换为所述第二版本支持的第二请求,包括:
将第一接口转换为所述第二版本支持的第二接口,所述第一请求通过所述第一接口获取,所述第二接口用于将所述第二请求发送至所述第一服务。
6.如权利要求4所述的方法,其特征在于,所述第一请求转换为所述第二版本支持的第二请求,包括:
将第一协议转换为所述第二版本支持的第二协议,所述第一协议为所述第一请求对应的协议,所述第二协议为所述第二请求对应的协议。
7.一种客户端升级装置,其特征在于,所述装置包括:
通信模块,用于获取第一应用的第一请求;
处理模块,用于通过第一客户端调用第一服务,所述第一服务用于处理所述第一应用的请求,所述第一客户端的版本为第一版本,所述第一服务的版本为第二版本;
所述通信模块,还用于获取所述第一请求完成处理的指示信息;
所述处理模块,还用于将所述第一客户端的版本升级为所述第二版本。
8.如权利要求7所述的装置,其特征在于,所述处理模块具体用于:
将所述第一服务的版本升级为所述第二版本。
9.如权利要求8所述的装置,其特征在于,所述处理模块具体用于:
将第一服务的元数据的格式升级为所述第二版本支持的元数据格式。
10.如权利要求7所述的装置,其特征在于,所述处理模块具体用于:
将所述第一请求转换为所述第二版本支持的第二请求,所述第一服务具体用于处理所述第二请求。
11.如权利要求10所述的装置,其特征在于,所述处理模块具体用于:
将第一接口转换为所述第二版本支持的第二接口,所述第一请求通过所述第一接口获取,所述第二接口用于将所述第二请求发送至所述第一服务。
12.如权利要求10所述的装置,其特征在于,所述处理模块具体用于:
将第一协议转换为所述第二版本支持的第二协议,所述第一协议为所述第一请求对应的协议,所述第二协议为所述第二请求对应的协议。
13.一种电子设备,其特征在于,所述电子设备包括处理器,所述处理器用于执行存储器中存储的计算机程序时实现如权利要求1-6中任一所述方法的步骤。
14.一种计算机可读存储介质,其特征在于,其存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1-6中任一所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211245371.7A CN115794143A (zh) | 2022-10-12 | 2022-10-12 | 一种客户端升级方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211245371.7A CN115794143A (zh) | 2022-10-12 | 2022-10-12 | 一种客户端升级方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115794143A true CN115794143A (zh) | 2023-03-14 |
Family
ID=85432861
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211245371.7A Pending CN115794143A (zh) | 2022-10-12 | 2022-10-12 | 一种客户端升级方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115794143A (zh) |
-
2022
- 2022-10-12 CN CN202211245371.7A patent/CN115794143A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107040578B (zh) | 数据同步方法、装置和系统 | |
CN108696372B (zh) | 一种保持系统配置一致性的方法和系统 | |
CN108920691B (zh) | 前端静态资源的管理方法、装置、计算机设备及存储介质 | |
CN111064626B (zh) | 配置更新方法、装置、服务器及可读存储介质 | |
CN111651219A (zh) | 一种多模块项目配置文件管理的方法及设备 | |
CN111611207A (zh) | 状态数据处理方法、装置及计算机设备 | |
CN106603125B (zh) | 一种与蓝牙设备进行数据交互的方法及装置 | |
CN111078506A (zh) | 业务数据跑批任务监控方法及装置 | |
CN106293790B (zh) | 基于Firefox操作系统的应用程序升级方法和装置 | |
CN113468143A (zh) | 数据迁移方法、系统、计算设备及存储介质 | |
CN115098297B (zh) | 一种云原生存储数据卷的一致性快照生成方法和系统 | |
CN115729590A (zh) | 服务部署方法、装置、设备和计算机可读存储介质 | |
CN115794143A (zh) | 一种客户端升级方法及装置 | |
CN116048609A (zh) | 配置文件更新方法、装置、计算机设备和存储介质 | |
CN110968471A (zh) | 一种程序崩溃问题上报方法、存储介质、电子设备及系统 | |
CN115129740A (zh) | 一种云原生环境下的分布式微服务数据库更新方法及系统 | |
CN114553859A (zh) | 一种bmc配置管理方法、装置、电子设备及存储介质 | |
CN114791884A (zh) | 测试环境的构建方法、装置、存储介质及电子设备 | |
CN114489674A (zh) | 动态数据模型的数据校验方法和装置 | |
CN112579189A (zh) | 配置文件更新方法及装置 | |
CN110688201A (zh) | 一种日志管理方法及相关设备 | |
CN117492787A (zh) | 一种软件升级方法、终端设备及网络设备 | |
CN113626007B (zh) | 连接器模型的应用方法、装置及服务器 | |
CN109542598B (zh) | 定时任务管理方法及装置 | |
WO2024001569A1 (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 |