CN109271182B - Method and device for upgrading search engine - Google Patents

Method and device for upgrading search engine Download PDF

Info

Publication number
CN109271182B
CN109271182B CN201710586233.8A CN201710586233A CN109271182B CN 109271182 B CN109271182 B CN 109271182B CN 201710586233 A CN201710586233 A CN 201710586233A CN 109271182 B CN109271182 B CN 109271182B
Authority
CN
China
Prior art keywords
search engine
source code
version
file
project
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
Application number
CN201710586233.8A
Other languages
Chinese (zh)
Other versions
CN109271182A (en
Inventor
王宇
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Jingdong Century Trading Co Ltd
Beijing Jingdong Shangke Information Technology Co Ltd
Original Assignee
Beijing Jingdong Century Trading Co Ltd
Beijing Jingdong Shangke Information Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Jingdong Century Trading Co Ltd, Beijing Jingdong Shangke Information Technology Co Ltd filed Critical Beijing Jingdong Century Trading Co Ltd
Priority to CN201710586233.8A priority Critical patent/CN109271182B/en
Publication of CN109271182A publication Critical patent/CN109271182A/en
Application granted granted Critical
Publication of CN109271182B publication Critical patent/CN109271182B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

The application discloses a method and a device for upgrading a search engine. Relates to the field of computer information processing. The method comprises the following steps: rewriting the project file through the version number of the first search engine source code; and issuing the second search engine source code to be uploaded to be on-line. The method and the device for upgrading the search engine can reduce the development amount of codes and save development time.

Description

Method and device for upgrading search engine
Technical Field
The invention relates to the field of computer information processing, in particular to a method and a device for upgrading a search engine.
Background
In the internet and software fields, big data queries are very important. Particularly, for some companies in the electronic shopping mall class, due to the huge usage amount of information interaction, query statistical analysis needs to be performed on the order and the distribution link data of the user. At present, most of companies of this type use currently popular distributed full-text search Engines (ES), and developers inside the companies use ES clients to perform processing queries with different dimensions on index data of the developers respectively. Because the dimensions of each index related to each project are greatly different, the modification difficulty is increased, the risk is high, and how to smoothly upgrade the ES client on the premise of not modifying the dimensions of the index and the service logic processing is a problem to be solved urgently.
In the prior art, the common solutions are as follows: the method comprises the steps of firstly scanning an ES wide table, using corresponding version ES clients to carry out big data query according to different business logic operations, and screening important data, wherein each developer needs to carry out ES query operation on respective development modules. Because an Application Programming Interface (API) of a corresponding version of an ES client used by a developer needs to be modified when the ES client is upgraded, some code development time increases development time for the developer to modify the ES client, thereby affecting subsequent development progress. Moreover, the project developed and completed by using the low-version ES client is already on line and passes, the upgraded code needs to be pre-published and on line, and various approval processes are required to be complicated.
Therefore, a new method and apparatus for search engine upgrade is needed.
The above information disclosed in this background section is only for enhancement of understanding of the background of the invention and therefore it may contain information that does not constitute prior art that is already known to a person of ordinary skill in the art.
Disclosure of Invention
In view of this, the present invention provides a method and an apparatus for upgrading a search engine, which can reduce the development amount of codes and save the development time.
Additional features and advantages of the invention will be set forth in the detailed description which follows, or may be learned by practice of the invention.
According to an aspect of the present invention, a method for search engine upgrade is provided, the method comprising: rewriting the project file through the version number of the first search engine source code; and issuing the second search engine source code to be uploaded to be on-line.
In an exemplary embodiment of the present disclosure, the dependency relationship is provided for the second source code to be uploaded through the project file.
In an exemplary embodiment of the present disclosure, further comprising: the project file is initialized.
In an exemplary embodiment of the present disclosure, initializing a project file includes: an querier helper class is instantiated that contains address, port, index, and type information.
In an exemplary embodiment of the present disclosure, initializing the project file further includes: customizing a converter interface in an inquirer assistant class; adding a query template; and a rewrite query method.
In an exemplary embodiment of the present disclosure, further comprising: and compiling and installing the open source project management tool for the first search engine source code.
In an exemplary embodiment of the present disclosure, includes: and obtaining a jar packet to be used, wherein the jar packet comprises a first search engine source code.
In an exemplary embodiment of the present disclosure, a search engine source code includes: distributed search engine source code.
According to an aspect of the present invention, there is provided an apparatus for search engine upgrade, the apparatus comprising: the rewriting module is used for rewriting the project file through the version number of the first search engine source code; and the release module is used for releasing the second search engine source code to be uploaded to be on-line.
In an exemplary embodiment of the present disclosure, the publishing module provides the dependency relationship for the source code to be uploaded through the project file.
According to an aspect of the present invention, there is provided an electronic apparatus, including: one or more processors; storage means for storing one or more programs; when executed by one or more processors, cause the one or more processors to implement a method as above.
According to an aspect of the invention, a computer-readable medium is proposed, on which a computer program is stored, characterized in that the program, when executed by a processor, implements a method as in the above.
According to the method and the device for upgrading the search engine, the development amount of codes can be reduced, and the development time is saved.
It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the invention as claimed.
Drawings
The above and other objects, features and advantages of the present invention will become more apparent by describing in detail exemplary embodiments thereof with reference to the attached drawings. The drawings described below are only some embodiments of the invention and other drawings may be derived by those skilled in the art without inventive effort.
FIG. 1 is a system architecture illustrating a method for search engine upgrade, according to an exemplary embodiment.
FIG. 2 is a flow diagram illustrating a method for search engine upgrade, according to an example embodiment.
FIG. 3 is an illustrative diagram showing a method for search engine upgrade in accordance with another exemplary embodiment.
FIG. 4 is a block diagram illustrating an apparatus for search engine upgrade, according to another example embodiment.
FIG. 5 is a block diagram of an electronic device shown in accordance with an example embodiment.
FIG. 6 is a schematic diagram illustrating a computer readable medium according to an example embodiment.
DETAILED DESCRIPTION OF EMBODIMENT (S) OF INVENTION
Example embodiments will now be described more fully with reference to the accompanying drawings. Example embodiments may, however, be embodied in many different forms and should not be construed as limited to the embodiments set forth herein; rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the concept of example embodiments to those skilled in the art. The same reference numerals in the drawings denote the same or similar parts, and a repetitive description thereof will be omitted.
Furthermore, the described features, structures, or characteristics may be combined in any suitable manner in one or more embodiments. In the following description, numerous specific details are provided to provide a thorough understanding of embodiments of the invention. One skilled in the relevant art will recognize, however, that the invention may be practiced without one or more of the specific details, or with other methods, components, devices, steps, and so forth. In other instances, well-known methods, devices, implementations or operations have not been shown or described in detail to avoid obscuring aspects of the invention.
The block diagrams shown in the figures are functional entities only and do not necessarily correspond to physically separate entities. I.e. these functional entities may be implemented in the form of software, or in one or more hardware modules or integrated circuits, or in different networks and/or processor means and/or microcontroller means.
The flow charts shown in the drawings are merely illustrative and do not necessarily include all of the contents and operations/steps, nor do they necessarily have to be performed in the order described. For example, some operations/steps may be decomposed, and some operations/steps may be combined or partially combined, so that the actual execution sequence may be changed according to the actual situation.
It will be understood that, although the terms first, second, third, etc. may be used herein to describe various components, these components should not be limited by these terms. These terms are used to distinguish one element from another. Thus, a first component discussed below could be termed a second component without departing from the teachings of the disclosed concepts. As used herein, the term "and/or" includes any and all combinations of one or more of the associated listed items.
It will be appreciated by those skilled in the art that the drawings are merely schematic representations of exemplary embodiments, and that the blocks or flow charts in the drawings are not necessarily required to practice the present invention and are, therefore, not intended to limit the scope of the present invention.
FIG. 1 is a system architecture illustrating a method for search engine upgrade, according to an exemplary embodiment.
As shown in fig. 1, the system architecture 100 may include terminal devices 101, 102, 103, a network 104, and a server 105. Network 104 is the medium used to provide communication links between terminal devices 101, 102, 103 and server 105. Network 104 may include various connection types, such as wired, wireless communication links, or fiber optic cables, to name a few.
The user may use the terminal devices 101, 102, 103 to interact with the server 105 via the network 104 to receive or send messages or the like. Various communication client applications, such as shopping applications, web browser applications, search applications, instant messaging tools, mailbox clients, social platform software, etc., may be installed on the terminal devices 101, 102, 103.
The terminal devices 101, 102, 103 may be various electronic devices having a display screen and supporting computer operations, including but not limited to smart phones, tablet computers, laptop portable computers, desktop computers, and the like.
The server 105 may be a server that provides various services, such as a background management server that provides support for websites browsed by users using the terminal devices 101, 102, 103. The background management server can analyze and process the received data such as the product information inquiry request and feed back the processing result to the terminal equipment.
It should be noted that the method for upgrading the search engine provided by the embodiment of the present application is executed by the server 105 and the terminal device 101.
It should be understood that the number of terminal devices, networks, and servers in fig. 1 is merely illustrative. There may be any number of terminal devices, networks, and servers, as desired for implementation.
The following detailed description of exemplary embodiments of the disclosure refers to the accompanying drawings.
FIG. 2 is a flow diagram illustrating a method for search engine upgrade, according to an exemplary embodiment.
As shown in fig. 2, in S202, the item file is rewritten by the version number of the first search engine source code. As described in the background introduction, when developing a working environment, a distributed full-text search Engine (ES) is required, and the search engine source code in this embodiment includes: elasticsearch engine source code. ElasticSearch is a Lucene-based search server. It provides a distributed multi-user capable full-text search engine based on RESTful web interface. Relevant developers respectively use the ES client to perform different-dimension processing query on own index data, and in the embodiment of the invention, the search engine source code used by the ES client can be, for example, a lower-version ES search engine source code. The first search engine source code may be, for example, a higher version of the search engine source code. The Project file may be, for example, a (Project Object Model, POM) file that manages: source code, configuration files, information and roles of developers, problem tracking systems, organizational information, project authorization, Uniform Resource Locator (URL) of a project, dependencies of a project, and so forth. POM represents the project object model. It is the basic unit that works in Maven. Maven is a powerful Java project building tool. Other tools may be used to construct a project, and the invention is not limited in this regard. But since Maven is developed in Java, Maven is more used in Java projects. POM is a document referred to as eXtensible Markup Language (XML), which is always stored in the item base directory. In this embodiment, for example, the higher version number of the search engine source code may be written into the POM file.
In S204, the second search engine source code to be uploaded is released and on-line processed. As described above, the developer uses other versions of ES source code to perform the editing process at the ES client, and the other versions of ES source code may be, for example, the second search engine source code. And when the source codes need to be on-line in development work, directly carrying out on-line processing on the source codes of the second search engine.
According to the method for upgrading the search engine, the POM file is rewritten by using the version number of the search engine source code of the higher version, and then the search engine source code of the lower version is online, so that the development amount of codes can be reduced, and the development time can be saved.
It should be clearly understood that the present disclosure describes how to make and use particular examples, but the principles of the present disclosure are not limited to any details of these examples. Rather, these principles can be applied to many other embodiments based on the teachings of the present disclosure.
In an exemplary embodiment of the disclosure, a dependency relationship is provided for the second source code to be uploaded through the project file. POM stands for project object model. It is the basic unit that works in Maven. This is an XML file. Xml files in the project basic directory are always saved, and corresponding source code package dependence is provided for developers to call related interfaces. POM also contains targets and plug-ins. When executing a task or target, Maven will use the POM in the current directory. It reads the POM, gets the required configuration information, and then executes the target.
In an exemplary embodiment of the present disclosure, further comprising: initializing the project file. When the project file is used for the first time, the project file needs to be initialized, and the initializing of the project file comprises the following steps: by inheriting the query filter of the high-version ES, a querier helper class is instantiated that contains address, port, index, and type information. The inside of the class provides initialization information of the context environment, such as IP, port, index, type, and the like, required by the ES client.
In an exemplary embodiment of the present disclosure, initializing the project file further includes: customizing a translator interface in the querier assistant class; adding a query template; and a rewrite query method. The original interface is reserved in the inquiry helper class so as not to influence the normal online use of the previous function while upgrading the ES. A custom converter interface is added in the query assistant class, an Elasticisserchtemplate query template is added, the function of custom conversion conditions is added in the rewriting query method, the new version of ES source codes is called through the project file, so that a program written by the lower version of ES source codes realizes the functions brought by the new version of ES source codes, and the problem that a large amount of data is exported and paged data is inaccurate can be optimized.
According to the method for upgrading the search engine, the ES is upgraded and the packaging optimization is carried out at the same time, so that more efficient access interfaces of developers are provided, the query performance is improved, and the data accuracy is improved.
In an exemplary embodiment of the present disclosure, the obtaining the class package to be used includes: and obtaining jar packets to be used. The Jar package may, for example, contain the source code for a new version of the ES. In an exemplary embodiment of the present disclosure, further comprising: and compiling and installing the open-source project management tool on the first search engine source code. For example, the high version after ES upgrading is Maven compiled and installed, and the locally compiled source code and Jar package are uploaded to a predetermined server.
FIG. 3 is an illustrative diagram showing a method for search engine upgrade in accordance with another exemplary embodiment.
In this embodiment, a querier helper class is instantiated by inheriting the query filter of a high-version ES, as shown in FIG. 3, which provides initialization information for the context, such as IP, port, index, type, etc., required by the ES client. The original interface is reserved in the inquiry helper class so as not to influence the normal online use of the previous function while upgrading the ES. A user-defined converter interface is added in the query assistant class, an ElasticischTemplate query template is added, the function of adding a user-defined conversion condition in the query method is rewritten, and the problem that a large amount of data is inaccurate in exporting paginated data is optimized. And carrying out Maven compiling and installing on the high version after ES upgrading, and uploading the locally compiled source codes and Jar packages to a preset server. A developer introduces a high-version ES on a preset server into project engineering through a local POM file, replaces an interface provided in the new version, and then only needs to introduce the POM file again during each upgrading without modifying codes, so that the test is directly pre-issued, and the POM is issued and on-line.
The jar package with the ES high version can be uploaded to a preset server, for example, developers needing to use the corresponding ES high version for ES machine cluster upgrading can download the high version jar from the preset server, and the POM file is added with the corresponding jar version number in the development project engineering. For example, when a high-version interface needs to be used for the first time, initialization setting needs to be performed, and when the ES is subsequently upgraded, developers do not need to change codes and only need to modify the version number in the POM file. But also for example. The upgrade code is maintained by a specially-assigned person, so that the code amount of developers can be saved, and rich functions of high versions can be used.
Those skilled in the art will appreciate that all or part of the steps implementing the above embodiments are implemented as computer programs executed by a CPU. When executed by the CPU, performs the functions defined by the method provided by the present invention. The program may be stored in a computer readable storage medium, which may be a read-only memory, a magnetic or optical disk, or the like.
Furthermore, it should be noted that the above-mentioned figures are only schematic illustrations of the processes involved in the method according to exemplary embodiments of the invention, and are not intended to be limiting. It will be readily understood that the processes shown in the above figures are not intended to indicate or limit the chronological order of the processes. In addition, it is also readily understood that these processes may be performed, for example, synchronously or asynchronously in multiple modules.
The following are embodiments of the apparatus of the present invention that may be used to perform embodiments of the method of the present invention. For details which are not disclosed in the embodiments of the apparatus of the present invention, reference is made to the embodiments of the method of the present invention.
FIG. 4 is a block diagram illustrating an apparatus for search engine upgrade, according to another example embodiment.
The rewriting module 402 is configured to rewrite the item file according to the version number of the first search engine source code;
the publishing module 404 is configured to publish the second search engine source code to be uploaded and perform online processing.
In an exemplary embodiment of the disclosure, the publishing module provides a dependency relationship for the source code to be uploaded through the project file.
According to the device for upgrading the search engine, the POM file is rewritten by using the version number of the search engine source code of the higher version, and then the search engine source code of the lower version is online, so that the development amount of the code can be reduced, and the development time can be saved.
FIG. 5 is a block diagram illustrating an electronic device in accordance with an example embodiment.
As will be appreciated by one skilled in the art, aspects of the present invention may be embodied as a system, method or program product. Accordingly, various aspects of the present invention may be embodied in the form of: an entirely hardware embodiment, an entirely software embodiment (including firmware, microcode, etc.) or an embodiment combining hardware and software aspects that may all generally be referred to herein as a "circuit," module "or" system.
An electronic device 500 according to this embodiment of the invention is described below with reference to fig. 5. The electronic device 500 shown in fig. 5 is only an example and should not bring any limitation to the functions and the scope of use of the embodiments of the present invention.
As shown in fig. 5, the electronic device 500 is embodied in the form of a general purpose computing device. The components of the electronic device 500 may include, but are not limited to: at least one processing unit 510, at least one memory unit 520, a bus 530 that couples various system components including the memory unit 520 and the processing unit 510, a display unit 540, and the like.
Wherein the storage unit stores program code, which can be executed by the processing unit 510, to cause the processing unit 510 to execute the steps according to various exemplary embodiments of the present invention described in the electronic prescription flow processing method section described above in this specification. For example, the processing unit 510 may perform the steps as shown in fig. 1.
The memory unit 520 may include a readable medium in the form of a volatile memory unit, such as a random access memory unit (RAM)5201 and/or a cache memory unit 5202, and may further include a read only memory unit (ROM) 5203.
The memory unit 520 may also include a program/utility 5204 having a set (at least one) of program modules 5205, such program modules 5205 including, but not limited to: an operating system, one or more application programs, other program modules, and program data, each of which, or some combination thereof, may comprise an implementation of a network environment.
Bus 530 may be a local bus representing one or more of several types of bus structures, including a memory unit bus or memory unit controller, a peripheral bus, an accelerated graphics port, a processing unit, or any of a variety of bus architectures.
The electronic device 500 may also communicate with one or more external devices 600 (e.g., keyboard, pointing device, bluetooth device, etc.), with one or more devices that enable a user to interact with the electronic device 500, and/or with any devices (e.g., router, modem, etc.) that enable the electronic device 500 to communicate with one or more other computing devices. Such communication may occur via input/output (I/O) interfaces 550. Also, the electronic device 500 may communicate with one or more networks (e.g., a Local Area Network (LAN), a Wide Area Network (WAN), and/or a public network, such as the internet) via the network adapter 560. The network adapter 560 may communicate with other modules of the electronic device 500 via the bus 530. It should be appreciated that although not shown in the figures, other hardware and/or software modules may be used in conjunction with the electronic device 500, including but not limited to: microcode, device drivers, redundant processing units, external disk drive arrays, RAID systems, tape drives, and data backup storage systems, among others.
Through the above description of the embodiments, those skilled in the art will readily understand that the exemplary embodiments described herein may be implemented by software, or by software in combination with necessary hardware. Therefore, the technical solution according to the embodiment of the present disclosure may be embodied in the form of a software product, which may be stored in a non-volatile storage medium (which may be a CD-ROM, a usb disk, a mobile hard disk, or the like) or on a network, and includes several instructions to enable a computing device (which may be a personal computer, a server, or a network device, or the like) to execute the above-mentioned electronic prescription flow processing method according to the embodiment of the present disclosure.
FIG. 6 is a diagram illustrating a computer readable medium according to an example embodiment.
Referring to fig. 6, a program product 700 for implementing the above method according to an embodiment of the present invention is described, which may employ a portable compact disc read only memory (CD-ROM) and include program code, and may be run on a terminal device, such as a personal computer. However, the program product of the present invention is not limited in this regard and, in the present document, a readable storage medium may be any tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device.
The program product may employ any combination of one or more readable media. The readable medium may be a readable signal medium or a readable storage medium. A readable storage medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination of the foregoing. More specific examples (a non-exhaustive list) of the readable storage medium include: an electrical connection having one or more wires, a portable disk, a hard disk, a Random Access Memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
The computer readable storage medium may include a propagated data signal with readable program code embodied therein, for example, in baseband or as part of a carrier wave. Such a propagated data signal may take many forms, including, but not limited to, electro-magnetic, optical, or any suitable combination thereof. A readable storage medium may also be any readable medium that is not a readable storage medium and that can communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device. Program code embodied on a readable storage medium may be transmitted using any appropriate medium, including but not limited to wireless, wireline, optical fiber cable, RF, etc., or any suitable combination of the foregoing.
Program code for carrying out operations for aspects of the present invention may be written in any combination of one or more programming languages, including an object oriented programming language such as Java, C + + or the like and conventional procedural programming languages, such as the "C" programming language or similar programming languages. The program code may execute entirely on the user's computing device, partly on the user's device, as a stand-alone software package, partly on the user's computing device and partly on a remote computing device, or entirely on the remote computing device or server. In the case of a remote computing device, the remote computing device may be connected to the user computing device through any kind of network, including a Local Area Network (LAN) or a Wide Area Network (WAN), or may be connected to an external computing device (e.g., through the internet using an internet service provider).
Those skilled in the art will appreciate that the modules described above may be distributed in the apparatus according to the description of the embodiments, or may be modified accordingly in one or more apparatuses unique from the embodiments. The modules of the above embodiments may be combined into one module, or further split into multiple sub-modules.
Through the above description of the embodiments, those skilled in the art will readily understand that the exemplary embodiments described herein may be implemented by software, or by software in combination with necessary hardware. Therefore, the technical solution according to the embodiment of the present invention can be embodied in the form of a software product, which can be stored in a non-volatile storage medium (which can be a CD-ROM, a usb disk, a removable hard disk, etc.) or on a network, and includes several instructions to enable a computing device (which can be a personal computer, a server, a mobile terminal, or a network device, etc.) to execute the method according to the embodiment of the present invention.
From the above detailed description, those skilled in the art can easily understand that the method and apparatus for search engine upgrade according to the embodiment of the present invention have the following advantages.
According to some embodiments, the method for upgrading the search engine of the present invention rewrites the POM file with the version number of the search engine source code of the higher version, and then performs the online mode of the search engine source code of the lower version, so as to reduce the development amount of the code and save the development time.
According to other embodiments, by the method and the device for upgrading the search engine, developers can smoothly upgrade the ES client only by introducing the upgrade version package without modifying the business logic code, the time cost of the developers is saved through the upgrade of the ES client, the use query efficiency is doubled, and the accuracy of querying paging data is improved.
According to other embodiments, the method for upgrading the search engine can solve the problem that developers do not need to perform too many code operations and various approval processes of online while upgrading the ES client.
Exemplary embodiments of the present invention are specifically illustrated and described above. It is to be understood that the invention is not limited to the precise construction, arrangements, or instrumentalities described herein; on the contrary, the invention is intended to cover various modifications and equivalent arrangements included within the spirit and scope of the appended claims.
In addition, the structures, the proportions, the sizes, and the like shown in the drawings of the present specification are only used for matching with the contents disclosed in the specification, so as to be understood and read by those skilled in the art, and are not used for limiting the limit conditions which the present disclosure can implement, so that the present disclosure has no technical essence, and any modification of the structures, the change of the proportion relation, or the adjustment of the sizes, should still fall within the scope which the technical contents disclosed in the present disclosure can cover without affecting the technical effects which the present disclosure can produce and the purposes which can be achieved. In addition, the terms "above", "first", "second" and "first" used in the present specification are used for the sake of clarity only, and are not intended to limit the scope of the present disclosure, and changes or modifications of the relative relationship thereof may be regarded as the scope of the present invention without substantial technical changes.

Claims (8)

1. A method for search engine upgrade, comprising:
rewriting the project file through the version number of the source code of the first distributed search engine; writing the version number of a high-version search engine source code into a POM file;
initializing the project file, the initializing the project file comprising: instantiating an inquirer helper class, the inquirer helper class including address, port, index and type information; reserving an original interface in the querier assistant class and customizing a converter interface; adding a query template; and rewriting the query method; so as to ensure that the user-defined conversion condition function is added while the normal use is not influenced; calling a new version of search engine source codes through the project file so that an executable file written by the low version of search engine source codes realizes functions brought by the new version of search engine source codes; compiling and installing the upgraded search engine source code of the high version, and uploading the locally compiled source code and the Jar package to a predetermined server; introducing the high-version search engine source code on the predetermined server into the project through a local POM file, and replacing the interface;
and releasing the second distributed search engine source code to be uploaded and carrying out online processing.
2. The method of claim 1, wherein a dependency is provided for the second source code to be uploaded via the project file.
3. The method of claim 1, further comprising:
and compiling and installing the open source project management tool on the first distributed search engine source code.
4. The method of claim 1, further comprising:
and obtaining a jar class package to be used, wherein the jar class package comprises a first distributed search engine source code.
5. An apparatus for search engine upgrade, comprising:
the rewriting module is used for rewriting the project file through the version number of the source code of the first distributed search engine; writing the version number of a high-version search engine source code into a POM file; initializing the project file, the initializing the project file comprising: instantiating a querier helper class, the querier helper class containing address, port, index and type information; reserving an original interface in the querier assistant class and customizing a converter interface; adding a query template; and rewriting the query method; so as to ensure that the user-defined conversion condition function is added while the normal use is not influenced; calling the search engine source code of the new version through the project file so as to enable the executable file compiled by the search engine source code of the low version to realize the function brought by the search engine source code of the new version; compiling and installing the upgraded search engine source code of the high version, and uploading the locally compiled source code and the Jar package to a preset server; introducing the high-version search engine source code on the predetermined server into the project through a local POM file, and replacing the interface;
and the release module is used for releasing the second distributed search engine source code to be uploaded for online processing.
6. The apparatus of claim 5, wherein the publishing module provides a dependency for the source code to be uploaded via the project file.
7. An electronic device, comprising:
one or more processors;
storage means for storing one or more programs;
when executed by the one or more processors, cause the one or more processors to implement the method of any one of claims 1-4.
8. A computer-readable medium, on which a computer program is stored which, when being executed by a processor, carries out the method according to any one of claims 1-4.
CN201710586233.8A 2017-07-18 2017-07-18 Method and device for upgrading search engine Active CN109271182B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710586233.8A CN109271182B (en) 2017-07-18 2017-07-18 Method and device for upgrading search engine

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710586233.8A CN109271182B (en) 2017-07-18 2017-07-18 Method and device for upgrading search engine

Publications (2)

Publication Number Publication Date
CN109271182A CN109271182A (en) 2019-01-25
CN109271182B true CN109271182B (en) 2022-09-06

Family

ID=65147937

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710586233.8A Active CN109271182B (en) 2017-07-18 2017-07-18 Method and device for upgrading search engine

Country Status (1)

Country Link
CN (1) CN109271182B (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110244967A (en) * 2019-06-18 2019-09-17 政采云有限公司 Method for updating edition and device

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7127707B1 (en) * 2002-10-10 2006-10-24 Microsoft Corporation Intellisense in project upgrade
CN106020882A (en) * 2016-05-18 2016-10-12 青岛海信电器股份有限公司 Application upgrading method, intelligent terminal and upgrading system
CN106155724A (en) * 2015-04-14 2016-11-23 阿里巴巴集团控股有限公司 A kind of upgrade method and device
CN106528797A (en) * 2016-11-10 2017-03-22 上海轻维软件有限公司 DSL query method based on Elasticsearch
CN106802814A (en) * 2016-12-14 2017-06-06 智车优行科技(北京)有限公司 For the method and device of software release upgrade

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7127707B1 (en) * 2002-10-10 2006-10-24 Microsoft Corporation Intellisense in project upgrade
CN106155724A (en) * 2015-04-14 2016-11-23 阿里巴巴集团控股有限公司 A kind of upgrade method and device
CN106020882A (en) * 2016-05-18 2016-10-12 青岛海信电器股份有限公司 Application upgrading method, intelligent terminal and upgrading system
CN106528797A (en) * 2016-11-10 2017-03-22 上海轻维软件有限公司 DSL query method based on Elasticsearch
CN106802814A (en) * 2016-12-14 2017-06-06 智车优行科技(北京)有限公司 For the method and device of software release upgrade

Also Published As

Publication number Publication date
CN109271182A (en) 2019-01-25

Similar Documents

Publication Publication Date Title
US11762634B2 (en) Systems and methods for seamlessly integrating multiple products by using a common visual modeler
US9916137B2 (en) Rest service source code generation
US8200710B2 (en) System and method for runtime rendering of web-based user interfaces for master data management
US20110276939A1 (en) Techniques to enhance software production
TW201308209A (en) Runtime system
CN110795649A (en) Target page display method, device and system and electronic equipment
CN110895471A (en) Installation package generation method, device, medium and electronic equipment
CN110716720A (en) Method and device for realizing application hot deployment
CN110795181A (en) Application program interface display method and device based on skip protocol and electronic equipment
US10725795B2 (en) Systems, methods, and apparatuses for dynamic creation of an external code segment within a cloud based computing environment
US20210089336A1 (en) System and method for programmatically converting interface specification to generic plug-in code
KR20110066520A (en) Workflow customization method in saas(software as a service) environment
US20220284371A1 (en) Method, device and medium for a business function page
CN110888794B (en) Interface testing method and device
US20160239275A1 (en) Generating an integrated service
CN111125064A (en) Method and device for generating database mode definition statement
CN115686606A (en) Method, device, system and medium for displaying item dependency tree
CN108845864B (en) Spring frame-based JVM garbage recycling method and device
CN111597059A (en) Interface calling request processing method and device and electronic equipment
US9135001B2 (en) Dynamically configuring an integrated development environment
CN113805877A (en) Project engineering construction method and device based on IDEA plug-in
CN109271182B (en) Method and device for upgrading search engine
CN115857914A (en) Method, equipment and storage medium for automatically generating codes
CN112104544B (en) Method and device for sending dynamic mail based on Freemarker
CN114546410A (en) Code optimization method based on design mode and related equipment

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