A paging parallel query method and system under heterogeneous platforms
By performing lexical analysis and parameter parsing on SQL queries, combined with thread pool scheduling, efficient parallel queries on heterogeneous platforms are achieved, solving the problems of performance degradation and load balancing in data-distributed queries, and improving query efficiency.
Patent Information
- Application Number
- CN202111501754.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-12-09
- Publication Date
- 2025-09-12
- Estimated Expiration
- 2041-12-09
AI Technical Summary
Existing technologies cannot efficiently solve complex query problems in heterogeneous platforms where data is scattered across different platform systems, resulting in degraded query performance and load balancing problems.
By performing lexical analysis on SQL query statements, generating sorting objects at the programming language level, parsing parameter objects, traversing the task list, modifying paging information, establishing query tasks, and merging sorting results through thread pool scheduling, it realizes local queries, RPC internal calls and cross-platform RPC queries, and integrates multiple technical means to perform cross-platform parallel queries.
Under the reasonable control of computer resources, high-performance cross-platform parallel query is achieved, solving the query performance bottleneck and load balancing problems under heterogeneous platforms.
Smart Images

Figure CN114168634B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of cross-database query, and in particular to a paging parallel query method and system under a heterogeneous platform. Background Art
[0002] Currently, the ARM architecture, with its proprietary intellectual property, continues to gain popularity. Considering the stability of the ARM architecture, methods such as grayscale releases, whitelisting, and hybrid deployment are widely used to mitigate system risks. Hybrid heterogeneous systems not only face inherent query performance and system high availability challenges due to data scale, but also face the unavoidable challenge of complex query performance when data is distributed across different architectures.
[0003] In existing technology, for large-scale queries on relational databases, sharding is generally used. Based on the sharding key, the database and table number of the record are first determined, and then the query is performed in the specified table. When the sharding key cannot be determined, or when the query involves multiple sharding keys, there are two common parallel query solutions:
[0004] One approach is to delegate the query to the database middleware. With the help of the middleware, the middleware intelligently analyzes SQL statements, determining which SQL statements can be directly issued, which SQL statements require optimization, the optimization methods, and which instance nodes to route them to for execution. This fully utilizes the capabilities of the database instance, reduces the amount of data transmitted across the network, and ultimately aggregates and calculates the small amount of results processed by different instances and returns them to the application caller.
[0005] Another approach is for the application to directly analyze the databases and tables involved in the query, establish multiple connections to different databases in parallel, and run multiple queries or connection queries on multiple tables on each connection. Using paging, the application asynchronously retrieves all results and then processes and returns them.
[0006] The two parallel query solutions mentioned above have their own limitations. First, whether using database middleware or direct application query access, they both target homogeneous databases, requiring identical architectures across multiple database tables. Second, both parallel query approaches concentrate query load on a single point of completion, which can easily lead to load balancing issues and hinder high system availability. Summary of the Invention
[0007] To address the deficiencies of the prior art, the present invention proposes a paging parallel query method and system under heterogeneous platforms, which can efficiently solve complex query problems where data is scattered across different platform systems.
[0008] To achieve the above objectives, the technical solutions adopted by the present invention include:
[0009] A paging parallel query method on a heterogeneous platform, characterized by comprising the following steps:
[0010] Step S1: perform lexical analysis on the SQL query statement to generate a sorting object at the programming language level;
[0011] Step S2: Analyze the parameter objects required for SQL query binding;
[0012] Step S3: traverse the task list, modify the paging information to establish a query task, including determining the relationship between the database platform to which the application AP server currently receiving the request belongs and the database platform corresponding to the task;
[0013] Step S4: Establish a globally unified thread pool at the application level, import the query task into the thread pool to complete the scheduling, and merge the sorting results.
[0014] Furthermore, the step S2 includes parsing the parameter object to determine the database platform, database number, and database table number.
[0015] Furthermore, the step S2 further includes:
[0016] When the SQL query involves multiple sharding keys, all sharding keys are traversed, and the database platform corresponding to each sharding key, as well as the database number and database table number under the database platform, are calculated. The database platform, database number, and database table number are deduplicated and saved as a task list to generate subquery tasks.
[0017] When the split key involved in the SQL query cannot be confirmed, integrate the full database platform, database number, and database table number data and save them as a task list to generate a subquery task.
[0018] Furthermore, in step S3, modifying the paging information to establish the query task includes modifying n rows of paging information starting from row start to start+n rows starting from row 0.
[0019] Furthermore, in step S3, determining the relationship between the platform to which the application AP server currently receiving the request belongs and the platform to which the task belongs includes:
[0020] If the database platform of the application AP server currently receiving the request is consistent with the database platform corresponding to the task, and the application AP server number is consistent with the task database number, a local query task is generated and the query results are accessed through SQL;
[0021] If the database platform of the application AP server currently receiving the request is consistent with the database platform corresponding to the task, but the application AP server number is inconsistent with the task database number, an RPC internal call query task of this database platform is generated, calling other AP servers in this database platform to obtain the query results;
[0022] If the database platform of the application AP server currently receiving the request is inconsistent with the database platform corresponding to the task, a cross-platform RPC query task is generated to obtain the query results in the heterogeneous database platform.
[0023] Furthermore, the generating of the cross-platform RPC query task and obtaining the query result in the heterogeneous database platform includes connecting to the application AP server under the heterogeneous database platform and performing cross-database platform conversion on the SQL access query.
[0024] Furthermore, the step S4 further includes:
[0025] Put the subquery results of any thread into the queue;
[0026] When the queue length is greater than or equal to 2, randomly select two subquery results from the queue, sort and merge them using the sort object, and push the intermediate results back into the merged result queue;
[0027] The process of sequentially taking any two sub-query results from the queue, sorting and merging them through the sorting object, and pushing them into the merged result queue, until only one result remains in the queue, which is the paging query result.
[0028] The present invention also relates to a paging parallel query system on a heterogeneous platform, characterized by comprising:
[0029] The sorting module is used to perform lexical analysis on SQL query statements and generate sorting objects at the programming language level;
[0030] Analysis module, used to analyze the parameter objects required for SQL query binding;
[0031] Modify the paging module, which is used to traverse the task list, modify the paging information to establish the query task, including determining the relationship between the database platform of the application AP server currently receiving the request and the database platform corresponding to the task;
[0032] The result generation module is used to establish a globally unified thread pool at the application level, import query tasks into the thread pool to complete scheduling, and merge sorting results.
[0033] The present invention also relates to a computer-readable storage medium, characterized in that a computer program is stored on the storage medium, and the computer program implements the above method when executed by a processor.
[0034] The present invention also relates to an electronic device, characterized in that it comprises a processor and a memory;
[0035] The memory is used to store operation instructions;
[0036] The processor is used to execute the above method by calling the operation instruction.
[0037] The present invention also relates to a computer program product, comprising a computer program and / or instructions, characterized in that the computer program and / or instructions implement the steps of the above method when executed by a processor.
[0038] The beneficial effects of the present invention are:
[0039] The paging parallel query method and system under heterogeneous platforms described in the present invention are adopted. This technical solution integrates multiple technical means such as local query, RPC internal call, SQL syntax mapping conversion, paging information segmentation processing, intermediate result discarding and merging, etc., to build a complete heterogeneous platform supporting paging parallel query solution. Under the premise of reasonable control of computer resources, it is convenient to complete cross-platform parallel query with high performance. BRIEF DESCRIPTION OF THE DRAWINGS
[0040] Figure 1 The figure is a flow chart of the paging parallel query method under heterogeneous platforms of the present invention.
[0041] Figure 2 This is a schematic diagram of the structure of the paging parallel query system under the heterogeneous platform of the present invention. DETAILED DESCRIPTION
[0042] In the present invention, a heterogeneous platform refers to a computing unit with different types of instruction sets and system architectures. The heterogeneous platform described in this article mainly refers to a mixed deployment and collaborative work of software and hardware platforms with different instruction set architectures, such as ARM and X86, to jointly form an application system to provide external services.
[0043] Sharding: Relational databases are inherently prone to becoming system bottlenecks, with limited single-server storage capacity, connections, and processing power. When a single table reaches 10 million or 100 GB of data, performance can degrade significantly with many operations, even with the addition of replicas and optimized indexes, due to the high number of query dimensions. Sharding is about data partitioning. This involves distributing data across multiple tables in multiple databases, reducing the amount of data in a single database. By expanding the number of hosts, performance issues with a single database can be mitigated, thereby improving database performance.
[0044] Split key: When splitting a database into different tables, select one or more fields in the database table record, perform a hash operation to obtain a specific value, and then calculate the database number and table number to which the record belongs based on this value.
[0045] Parallel query: This feature exploits idle database server resources to perform paging processing on high-load, large data volumes. It allows a single SQL query to be broken down into multiple smaller queries, each running concurrently. The results of each query are then combined to provide a final result. This feature is commonly used for full table scans, large table scans and joins, creating large indexes, partitioned index scans, and batch inserts, updates, and deletes.
[0046] RPC: RPC (Remote Procedure Call Protocol) is a protocol for requesting services from remote computer programs over a network, without requiring knowledge of the underlying network technology. It's an application layer protocol, but compared to HTTP / HTTPS, RPC prioritizes functionality over performance. The RPC framework is a high-performance network communication framework.
[0047] In order to more clearly understand the content of the present invention, it will be described in detail with reference to the accompanying drawings and embodiments.
[0048] The first aspect of the present invention relates to a process of steps as follows Figure 1 The paging parallel query method on the heterogeneous platform shown includes:
[0049] Step S1: perform lexical analysis on the SQL query statement to generate a sorting object at the programming language level.
[0050] For example, the query statement is select * from A where xx order by field1 desc, field2 asc; when implementing the sorting object, the sorting part is parsed to obtain
[0051] field1 desc
[0052] field2 asc;
[0053] For example, for the o1 and o2 objects in the sorting interface, such as Java
[0054] public int compare(Object o1,Object o2)
[0055] Traverse the parsed content above and perform the following operations for each line:
[0056] a. Calculate the attribute values v1 and v2 of the current field of objects o1 and o2 through reflection;
[0057] b. If either v1 or v2 is empty or the type does not match, continue traversing the next attribute;
[0058] c. If v1 and v2 are equal, continue to traverse the next attribute;
[0059] d. When the flag is asc, return v1-v2;
[0060] e. When the flag is desc, return v2 - v1.
[0061] Step S2: Analyze the parameter objects required for SQL query binding.
[0062] Optionally, step S2 includes parsing the parameter object to determine the database platform, database number, and database table number.
[0063] Optionally, when the SQL query involves multiple sharding keys, all sharding keys are traversed, the database platform corresponding to each sharding key and the database ID and database table ID under the database platform are calculated, the database platform, database ID, and database table ID are deduplicated and saved as a task list to generate a subquery task;
[0064] When the split key involved in the SQL query cannot be confirmed, integrate the full database platform, database number, and database table number data and save them as a task list to generate a subquery task.
[0065] For example, if the query contains a customer list, all customer lists are traversed, and the request is first routed to the application AP server corresponding to any customer in the customer list (hereinafter referred to as A server in this embodiment); if the query does not contain a customer list, the request is first randomly routed to any application AP server.
[0066] After receiving the request, Server A parses the customer list to determine the database platform, database number, and database table number corresponding to each customer. Because multiple customers may be in the same database platform, database, or database table, the database platform, database number, and database table number are deduplicated and saved as a task list to generate a subquery task. If the request does not include a customer list, the full set of database platform, database number, and database table number data is integrated and saved as a task list to generate a subquery task.
[0067] The application AP server is preferably an x86 or arm server.
[0068] Step S3: traverse the task list, modify the paging information and establish a query task, including determining the relationship between the database platform to which the application AP server currently receiving the request belongs and the database platform corresponding to the task.
[0069] Optionally, modifying the paging information to establish the query task includes modifying n rows of paging information starting from row start to start+n rows starting from row 0.
[0070] Optionally, determining the relationship between the platform of the application AP server currently receiving the request and the platform of the task includes:
[0071] If the database platform of the application AP server currently receiving the request is consistent with the database platform corresponding to the task, and the application AP server number is consistent with the task database number, a local query task is generated and the query results are accessed through SQL;
[0072] If the database platform of the application AP server currently receiving the request is consistent with the database platform corresponding to the task, but the application AP server number is inconsistent with the task database number, an RPC internal call query task of this database platform is generated, calling other AP servers in this database platform to obtain the query results;
[0073] If the database platform of the application AP server currently receiving the request is inconsistent with the database platform corresponding to the task, a cross-platform RPC query task is generated to obtain the query results in the heterogeneous database platform.
[0074] The generating of the cross-platform RPC query task and obtaining the query result in the heterogeneous database platform includes connecting to the application AP server under the heterogeneous database platform and performing cross-database platform conversion on the SQL access query.
[0075] For example, if the database platform of the server A currently receiving the request is consistent with the database platform corresponding to the task, and the server A number is consistent with the task database number, a local query task is generated and the query results are accessed through SQL;
[0076] If the database platform of the A server currently receiving the request is consistent with the database platform corresponding to the task, but the A server number is inconsistent with the task database number, an RPC internal call query task is generated in this database platform, calling other AP servers in this database platform to obtain the query results;
[0077] If the database platform of server A currently receiving the request is inconsistent with the database platform corresponding to the task, a cross-platform RPC query task is generated to obtain the query results in the heterogeneous database platform.
[0078] All results are combined to obtain the final result.
[0079] Step S4: Establish a globally unified thread pool at the application level, import the query task into the thread pool to complete the scheduling, and merge the sorting results.
[0080] For example, a query task is divided into a group of sub-query tasks, generating a group of sub-query results such as rs1, rs2...rsN.
[0081] If the original paging query range is from row a to row b (a <= b), after dividing into subqueries, the first row of the subquery result may be row a of the overall query result, but the b+1 row of the subquery result cannot be row b of the overall query result. Therefore, each subquery result takes rows 1 to b.
[0082] If all query results are collected before processing, Nb rows will be required in memory. When the system has a high concurrent query pressure of this type, the memory pressure will be very high. Therefore, in this embodiment, the following method can be used for processing:
[0083] When any thread completes the query task, the subquery result is immediately put into the queue;
[0084] When the queue length is greater than or equal to 2, randomly select two subquery results from the queue and sort and merge them using the sort object. Because the sorted b+1 row cannot be the bth row of the overall query result, each subquery result is taken from row 1 to row b, and the intermediate results are pushed back into the merged result queue.
[0085] The process of sequentially taking any two sub-query results from the queue, sorting and merging them through the sorting object, and pushing them into the merged result queue, until only one result is left in the queue. The final result is taken from row a to row b, which is the paging query result.
[0086] The paging parallel query method and system under heterogeneous platforms described in the present invention are adopted. This technical solution integrates multiple technical means such as local query, RPC internal call, SQL syntax mapping conversion, paging information segmentation processing, intermediate result discarding and merging, etc., to build a complete heterogeneous platform supporting paging parallel query solution. Under the premise of reasonable control of computer resources, it is convenient to complete cross-platform parallel query with high performance.
[0087] Another aspect of the present invention relates to a paging parallel query system under a heterogeneous platform, the structure of which is as follows: Figure 2 Shown, including:
[0088] The sorting module is used to perform lexical analysis on SQL query statements and generate sorting objects at the programming language level;
[0089] Analysis module, used to analyze the parameter objects required for SQL query binding;
[0090] Modify the paging module, which is used to traverse the task list, modify the paging information to establish the query task, including determining the relationship between the database platform of the application AP server currently receiving the request and the database platform corresponding to the task;
[0091] The result generation module is used to establish a globally unified thread pool at the application level, import query tasks into the thread pool to complete scheduling, and merge sorting results.
[0092] By using this system, the above-mentioned calculation and processing method can be executed and the corresponding technical effects can be achieved.
[0093] An embodiment of the present invention also provides a computer-readable storage medium capable of implementing all steps of the method in the above embodiment. The computer-readable storage medium stores a computer program that implements all steps of the method in the above embodiment when executed by a processor.
[0094] An embodiment of the present invention also provides an electronic device for executing the above-mentioned method. As an implementation device of the method, the electronic device has at least a processor and a memory, and in particular, the memory stores the data and related computer programs required for executing the method, such as etc., and the processor calls the data and programs in the memory to execute all the steps of the implementation method and obtains the corresponding technical effect.
[0095] Preferably, the electronic device may include a bus architecture, which may include any number of interconnected buses and bridges, and the bus will include various circuits linked together by one or more processors and memories. The bus may also link together various other circuits such as peripheral devices, voltage regulators, and power management circuits, which are all well known in the art and, therefore, will not be described further herein. The bus interface provides an interface between the bus and the receiver and transmitter. The receiver and transmitter can be the same component, namely a transceiver, which provides a unit for communicating with various other systems over a transmission medium. The processor is responsible for managing the bus and general processing, while the memory can be used to store data used by the processor when performing operations.
[0096] Additionally, the electronic device may further include components such as a communication module, an input unit, an audio processor, a display, and a power supply. The processor (or controller, operating control) employed may include a microprocessor or other processor device and / or logic device, which receives input and controls the operation of various components of the electronic device. The memory may be one or more of a cache, flash memory, a hard drive, removable media, volatile memory, non-volatile memory, or other suitable devices, and may store the aforementioned data and information. It may also store programs for executing the relevant information, and the processor may execute the programs stored in the memory to implement information storage or processing. The input unit is used to provide input to the processor, and may, for example, be a keypad or touch input device. The power supply is used to provide power to the electronic device. The display is used to display objects such as images and text, and may, for example, be an LCD display. The communication module is a transmitter / receiver that sends and receives signals via an antenna. The communication module (transmitter / receiver) is coupled to the processor to provide input signals and receive output signals, similar to the case of a conventional mobile communication terminal. Based on different communication technologies, multiple communication modules can be provided in the same electronic device, such as a cellular network module, a Bluetooth module, and / or a wireless local area network module. The communication module (transmitter / receiver) is also coupled to a speaker and a microphone via an audio processor to provide audio output via the speaker and receive audio input from the microphone, thereby implementing common telecommunications functions. The audio processor may include any suitable buffer, decoder, amplifier, etc. In addition, the audio processor is also coupled to a central processing unit, enabling local recording via the microphone and playback of stored audio via the speaker.
[0097] It will be understood by those skilled in the art that embodiments of the present invention may be provided as methods, systems, or computer program products. Thus, the present invention may take the form of an entirely hardware embodiment, an entirely software embodiment, or an embodiment combining software and hardware. Furthermore, the present invention may take the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to magnetic disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.
[0098] The present invention is described with reference to flowcharts and / or block diagrams of methods, devices (systems), and computer program products according to embodiments of the present invention. It should be understood that each process and / or block in the flowcharts and / or block diagrams, as well as combinations of processes and / or blocks in the flowcharts and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing device to produce a machine, so that the instructions executed by the processor of the computer or other programmable data processing device generate instructions for implementing the processes in the flowcharts and / or block diagrams. Figure 1 a process or multiple processes and / or boxes Figure 1 A system that specifies the functions of a box or boxes.
[0099] These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing device to work in a specific manner, so that the instructions stored in the computer-readable memory produce an article of manufacture including an instruction system that is implemented in the process. Figure 1 a process or multiple processes and / or boxes Figure 1 The function specified in one or more boxes.
[0100] These computer program instructions can also be loaded onto a computer or other programmable data processing device so that a series of operational steps are executed on the computer or other programmable device to produce a computer-implemented process, thereby providing the instructions executed on the computer or other programmable device for implementing the process. Figure 1 a process or multiple processes and / or boxes Figure 1 The present invention is described in detail below. ...
[0101] The above description is merely a preferred embodiment of the present invention, but the scope of protection of the present invention is not limited thereto. Any changes or substitutions that can be easily conceived by a person skilled in the art within the technical scope disclosed in the present invention are intended to be covered by the scope of protection of the present invention. Therefore, the scope of protection of the present invention should be based on the scope of protection of the claims.
Claims
1. A paging parallel query method under a heterogeneous platform, characterized in that: The following steps are involved: Step S1: perform lexical analysis on the SQL query statement to generate a sorting object at the programming language level; Step S2: Analyze the parameter objects required for SQL query binding; Step S3: traverse the task list, modify the paging information to establish a query task, including determining the relationship between the database platform to which the application AP server currently receiving the request belongs and the database platform corresponding to the task; Step S4: Establish a globally unified thread pool at the application level, import the query tasks into the thread pool to complete the scheduling, and merge the sorting results; The determination of the relationship between the database platform to which the application AP server currently receiving the request belongs and the database platform corresponding to the task includes: If the database platform of the application AP server currently receiving the request is consistent with the database platform corresponding to the task, and the application AP server number is consistent with the task database number, a local query task is generated and the query results are accessed through SQL; If the database platform of the application AP server currently receiving the request is consistent with the database platform corresponding to the task, but the application AP server number is inconsistent with the task database number, an internal query task in this database platform is generated, and other AP servers in this database platform are called to obtain the query results; If the database platform of the application AP server currently receiving the request is inconsistent with the database platform corresponding to the task, a cross-platform query task is generated to obtain the query results in the heterogeneous database platform; The process of establishing a globally unified thread pool at the application level, importing query tasks into the thread pool to complete scheduling, and merging sorting results also includes: Divide a query task into a group of subquery tasks and generate a group of subquery results. The original paging query range is from row a to row b, where a≤b. Each subquery result takes rows 1 to b. Put the subquery results of any thread into the queue. When the queue length is greater than or equal to 2, randomly select two subquery results from the queue, sort and merge them using the sort object, and push the intermediate results back into the merged result queue; The process of sequentially taking any two sub-query results from the queue, sorting and merging them through the sorting object, and pushing them into the merged result queue, until only one result is left in the queue. Then, rows a to b of the result are taken, which are the paginated query results.
2. The method according to claim 1, wherein The step S2 includes parsing the parameter object to determine the database platform, database number, and database table number.
3. The method according to claim 2, wherein The step S2 further includes: When the SQL query involves multiple sharding keys, all sharding keys are traversed, and the database platform corresponding to each sharding key, as well as the database number and database table number under the database platform, are calculated. The database platform, database number, and database table number are deduplicated and saved as a task list to generate subquery tasks. When the split key involved in the SQL query cannot be confirmed, integrate the full database platform, database number, and database table number data and save them as a task list to generate a subquery task.
4. The method according to claim 2, wherein In step S3, modifying the paging information to establish a query task includes modifying n rows of paging information starting from row start to start+n rows starting from row 0.
5. The method according to claim 1, wherein The generating of the cross-platform query task and obtaining the query result in the heterogeneous database platform includes connecting to the application AP server under the heterogeneous database platform and performing cross-database platform conversion on the SQL access query.
6. A paging parallel query system under heterogeneous platforms, characterized by: include: The sorting module is used to perform lexical analysis on SQL query statements and generate sorting objects at the programming language level; Analysis module, used to analyze the parameter objects required for SQL query binding; Modify the paging module, which is used to traverse the task list, modify the paging information to establish the query task, including determining the relationship between the database platform of the application AP server currently receiving the request and the database platform corresponding to the task; The result generation module is used to establish a globally unified thread pool at the application level, import query tasks into the thread pool for scheduling, and merge sorting results. The determination of the relationship between the database platform to which the application AP server currently receiving the request belongs and the database platform corresponding to the task includes: If the database platform of the application AP server currently receiving the request is consistent with the database platform corresponding to the task, and the application AP server number is consistent with the task database number, a local query task is generated and the query results are accessed through SQL; If the database platform of the application AP server currently receiving the request is consistent with the database platform corresponding to the task, but the application AP server number is inconsistent with the task database number, an internal query task in this database platform is generated, and other AP servers in this database platform are called to obtain the query results; If the database platform of the application AP server currently receiving the request is inconsistent with the database platform corresponding to the task, a cross-platform query task is generated to obtain the query results in the heterogeneous database platform; The process of establishing a globally unified thread pool at the application level, importing query tasks into the thread pool to complete scheduling, and merging sorting results also includes: Divide a query task into a group of subquery tasks and generate a group of subquery results. The original paging query range is from row a to row b, where a≤b. Each subquery result takes rows 1 to b. Put the subquery results of any thread into the queue. When the queue length is greater than or equal to 2, randomly select two subquery results from the queue, sort and merge them using the sort object, and push the intermediate results back into the merged result queue; The process of sequentially taking any two sub-query results from the queue, sorting and merging them through the sorting object, and pushing them into the merged result queue, until only one result is left in the queue. Then, rows a to b of the result are taken, which are the paginated query results.
7. A computer-readable storage medium, characterized in that The storage medium stores a computer program, which implements the method according to any one of claims 1 to 5 when executed by a processor.
8. An electronic device, characterized in that: including processor and memory; The memory is used to store operation instructions; The processor is configured to execute the method according to any one of claims 1 to 5 by calling the operation instruction.
9. A computer program product comprising a computer program and / or instructions, characterized in that When the computer program and / or instructions are executed by a processor, the steps of the method according to any one of claims 1 to 5 are implemented.
Citation Information
Patent Citations
Mode multiplexing isomerous database access and integration method under gridding environment
CN101187937A
Database inquiry method and device
CN107622091A