Data query method, device and system based on distributed database system
By introducing a query mechanism for scheduling devices into the distributed database system, the broadcast method is avoided, and the data to be queried is directly obtained and output. This solves the problem of high resource consumption in join table queries and achieves more efficient and flexible data querying.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- BEIJING BAIDU NETCOM SCI & TECH CO LTD
- Filing Date
- 2021-12-23
- Publication Date
- 2026-05-12
AI Technical Summary
In distributed database systems, using dynamic partitioning and pruning methods for join queries results in high resource consumption and limited applicability due to its narrow scope.
The scheduling device sends a query task to the first working device storing the first table to obtain the associated value, and then sends a query task to the second working device storing the second table based on the associated value. This avoids the broadcast method, allowing the second working device to directly query and return the data. The scheduling device then outputs the data to be queried.
It reduced resource consumption, improved resource utilization, expanded the scope of data query applications, and enhanced the efficiency and reliability of data queries.
Smart Images

Figure CN114297238B_ABST
Abstract
Description
Technical Field
[0001] This disclosure relates to the fields of big data and cloud services in the field of artificial intelligence technology, and in particular to a data query method, apparatus and system based on a distributed database system. Background Technology
[0002] In database technology, such as in distributed database systems, join queries (also known as join queries, union queries, etc.) are usually one of the most resource-intensive operations.
[0003] In distributed database systems, join queries typically involve two tables: a left table and a right table. Usually, the right table is queried first, followed by the left table. Currently, dynamic filtering (also known as dynamic partitioning and pruning) is commonly used for join queries. However, when using dynamic partitioning and pruning, the right table is broadcast to the working device that stores the left table, so that the left table can be queried based on the working device that stores the left table, thereby obtaining the corresponding data.
[0004] However, when using the dynamic partitioning and pruning method for join queries, broadcasting is required, which consumes more resources. Summary of the Invention
[0005] This disclosure provides a data query method, apparatus, and system based on a distributed database system for reducing resource consumption.
[0006] According to a first aspect of this disclosure, a data query method based on a distributed database system is provided, comprising:
[0007] In response to receiving a data query request, a first query task is sent to a first working device storing a first table; wherein the data query request is used to obtain data to be queried, and the first query task is used to instruct the query of the associated value in the first table corresponding to the data query request, and there is a data association relationship between the first table and the second table;
[0008] The system receives the association value fed back by the first working device and sends a second query task to the second working device storing the second table based on the association value; wherein the second query task is used to instruct the system to query the feedback data corresponding to the association value in the second table;
[0009] Receive feedback data sent by the second working device, determine and output the data to be queried based on the feedback data.
[0010] According to a second aspect of this disclosure, a data query method for a distributed database system is provided, comprising:
[0011] The system receives a first query task sent by a scheduling device, wherein the first query task is determined based on a data query request, the query request is used to obtain data to be queried, and the first query task is used to instruct the query of the associated value in a first table corresponding to the data query request, and there is a data association relationship between the first table and the second table.
[0012] The first query task is used to query the first table in the working device to obtain and feed back the association value to the scheduling device. The association value is used to generate a second query task, which is used to obtain and output the data to be queried.
[0013] According to a third aspect of this disclosure, a data query apparatus based on a distributed database system is provided, comprising:
[0014] The first sending unit is configured to send a first query task to a first working device storing a first table in response to receiving a data query request; wherein the data query request is used to obtain data to be queried, and the first query task is used to instruct the query of the associated value in the first table corresponding to the data query request, and the first table and the second table have a data association relationship.
[0015] The first receiving unit is used to receive the associated value fed back by the first working device;
[0016] The second sending unit is configured to send a second query task to a second working device storing the second table based on the association value; wherein the second query task is configured to instruct the querying of feedback data corresponding to the association value in the second table;
[0017] The second receiving unit is used to receive feedback data sent by the second working device;
[0018] A determining unit is used to determine the data to be queried based on the feedback data;
[0019] The output unit is used to output the data to be queried.
[0020] According to a fourth aspect of this disclosure, a data query apparatus for a distributed database system is provided, comprising:
[0021] The third receiving unit is used to receive a first query task sent by the scheduling device, wherein the first query task is determined according to a data query request, the query request is used to obtain data to be queried, and the first query task is used to instruct the query of the associated value in the first table corresponding to the data query request, and there is a data association relationship between the first table and the second table.
[0022] The first query unit is used to perform query processing on the first table in the working device according to the first query task to obtain the association value, wherein the association value is used to generate the second query task, and the second query task is used to obtain and output the data to be queried;
[0023] A feedback unit is used to feed back the associated value to the scheduling device.
[0024] According to a fifth aspect of this disclosure, an electronic device is provided, comprising:
[0025] At least one processor; and
[0026] A memory communicatively connected to the at least one processor; wherein,
[0027] The memory stores instructions executable by the at least one processor, which, when executed by the at least one processor, enable the at least one processor to perform the method described in the first aspect; or, enable the at least one processor to perform the method described in the second aspect.
[0028] According to a sixth aspect of this disclosure, a non-transitory computer-readable storage medium is provided storing computer instructions, wherein the computer instructions are configured to cause the computer to perform the method according to the first aspect; or, the computer instructions are configured to cause the computer to perform the method according to the second aspect.
[0029] According to a seventh aspect of this disclosure, a computer program product is provided, the computer program product comprising: a computer program stored in a readable storage medium, at least one processor of an electronic device being able to read the computer program from the readable storage medium, the at least one processor executing the computer program causing the electronic device to perform the method described in the first aspect or the second aspect.
[0030] According to an eighth aspect of this disclosure, a distributed database system is provided, comprising: a scheduling device and at least one working device, wherein,
[0031] The scheduling equipment includes the apparatus as described in the third aspect;
[0032] The working equipment includes the apparatus as described in the fourth aspect.
[0033] It should be understood that the description in this section is not intended to identify key or essential features of the embodiments of this disclosure, nor is it intended to limit the scope of this disclosure. Other features of this disclosure will become readily apparent from the following description. Attached Figure Description
[0034] The accompanying drawings are provided to better understand this solution and do not constitute a limitation of this disclosure. Wherein:
[0035] Figure 1 This is a schematic diagram based on the first embodiment of the present disclosure;
[0036] Figure 2 This is a schematic diagram based on an embodiment of the present disclosure;
[0037] Figure 3 This is a schematic diagram according to the second embodiment of the present disclosure;
[0038] Figure 4 This is a schematic diagram according to the third embodiment of the present disclosure;
[0039] Figure 5 This is a schematic diagram according to the fourth embodiment of the present disclosure;
[0040] Figure 6 This is a schematic diagram according to the fifth embodiment of the present disclosure;
[0041] Figure 7 This is a schematic diagram according to the sixth embodiment of the present disclosure;
[0042] Figure 8 This is a schematic diagram according to the seventh embodiment of the present disclosure;
[0043] Figure 9 This is a schematic diagram according to the eighth embodiment of the present disclosure;
[0044] Figure 10 This is a schematic diagram according to the ninth embodiment of the present disclosure;
[0045] Figure 11 This is a block diagram of an electronic device used to implement the data query method based on a distributed database system according to the embodiments of this disclosure. Detailed Implementation
[0046] The exemplary embodiments of this disclosure are described below with reference to the accompanying drawings, including various details of the embodiments to aid understanding, and should be considered merely exemplary. Therefore, those skilled in the art will recognize that various changes and modifications can be made to the embodiments described herein without departing from the scope and spirit of this disclosure. Similarly, for clarity and brevity, descriptions of well-known functions and structures are omitted in the following description.
[0047] In database technology, join queries are one of the most important techniques. The two tables used in a join query are called the left table and the right table. Typically, the right table is much smaller than the left table, and the right table is usually broadcast to a work unit that contains the left table so that the work unit containing the left table can perform the join operation to retrieve the data.
[0048] However, adopting the above scheme has two drawbacks. First, it requires broadcasting to query the data, which is less flexible and consumes more signaling resources. Second, the right table needs to be much smaller than the left table, resulting in a limited range of applicable scenarios and a lack of universal applicability.
[0049] To avoid at least one of the aforementioned technical problems, the inventors of the present disclosure have, through creative labor, arrived at the inventive concept of the present disclosure: the scheduling device sends a query task to the first working device storing the first table according to the data query request, so that the first working device can obtain the associated value; the scheduling device sends a query task to the second working device storing the second table according to the associated value, so that the second working device can query and return the data; accordingly, the scheduling device outputs the data to be queried in response to the query request according to the feedback data.
[0050] Based on the above-mentioned inventive concept, this disclosure provides a data query method, apparatus and system based on a distributed database system, which is applied to the fields of big data and cloud services in the field of artificial intelligence technology, so as to achieve the technical effect of reducing resource consumption and improving resource utilization.
[0051] Figure 1 This is a schematic diagram based on the first embodiment of the present disclosure, wherein the present disclosure provides a data query method based on a distributed database system. This method can be applied to a scheduling device in a distributed database system, and the distributed database system further includes at least one working device. For example... Figure 1 As shown, the method includes:
[0052] S101: In response to receiving a data query request, a first query task is sent to the first working device storing the first table. The data query request is used to obtain data to be queried, and the first query task is used to instruct the query of the associated value in the first table corresponding to the data query request. The first table and the second table have a data association relationship.
[0053] For example, the execution subject in this embodiment can be a scheduling device, which can be a server (such as a cloud server or a local server), a terminal device, a computer, a processor, a chip, etc. This embodiment does not limit the scope of the implementation.
[0054] In some embodiments, combined with Figure 2 It can be seen that a distributed database system includes: a scheduling device and N working devices (such as...). Figure 2 Working equipment 1, working equipment 2, and so on up to working equipment N.
[0055] The first table can be stored on one or more of the N working devices, and the second table can also be stored on one or more of the N working devices.
[0056] like Figure 2 As shown, the scheduling device can be connected to the user equipment to receive data query requests initiated by the user based on the user equipment.
[0057] After receiving a data query request, the scheduling device can determine which of the N working devices stores the first table used for join queries.
[0058] For example, if the scheduling device determines that among N working devices, working device 1 and working device N store a first table, then the scheduling device sends a first query task to working device 1 and working device N respectively, so that working device 1 can query the first table to obtain the associated value corresponding to the data query request, and working device N can query the first table to obtain the associated value corresponding to the data query request.
[0059] In this context, a correlation value refers to a value that represents the data relationship between the first table and the second table. For example, if the first table includes names and identifiers (ID), and the second table includes identifiers and scores, then the identifier is the correlation value.
[0060] S102: Receive the correlation value fed back by the first working device, and send a second query task to the second working device storing the second table based on the correlation value. The second query task is used to instruct the querying of the feedback data corresponding to the correlation value in the second table.
[0061] Combining the above examples and Figure 2 The scheduling device sends a second query task to the second working device based on the correlation values returned by working device 1 and working device 2 respectively.
[0062] For example, if the scheduling device determines that a second table is stored in working devices 1, 2, and N, then the scheduling device sends a second query task to each of these devices. This allows working device 1 to retrieve the feedback data corresponding to the associated value from the second table, as do working device 2 and working device N. For instance, the associated value might be an identifier, and the feedback data might be a score.
[0063] S103: Receive feedback data sent by the second working device, determine and output the data to be queried based on the feedback data.
[0064] For example, combining the above examples and Figure 2The scheduling device receives feedback data sent by working device 1, working device 2, and working device N, and determines the data to be queried based on the feedback data.
[0065] Based on the above analysis, this disclosure provides a data query method based on a distributed database system, comprising: in response to receiving a data query request, sending a first query task to a first working device storing a first table, wherein the data query request is used to obtain data to be queried, the first query task is used to instruct the query of the association value corresponding to the data query request in the first table, the first table and the second table have a data association relationship, receiving the association value fed back by the first working device, and sending a second query task to a second working device storing a second table according to the association value, wherein the second query task is used to instruct the query of the feedback data corresponding to the association value in the second table. The system receives feedback data sent by the second working device, determines and outputs the data to be queried based on the feedback data. In this embodiment, the following technical features are introduced: the scheduling device determines the first working device to trigger the working device to query the first table to obtain the associated value, triggers the second working device to query the feedback data based on the associated value, and provides feedback on the data query request based on the feedback data, that is, outputs the data to be queried. This avoids the drawback of consuming signaling resources due to "broadcasting" in related technologies, improves the efficiency of data query, and has no size requirements for the first and second tables, expanding the scope of application of data query and improving the effectiveness and reliability of data query.
[0066] Figure 3 This is a schematic diagram based on the second embodiment of the present disclosure, as shown below. Figure 3 As shown, the data query method based on a distributed database system disclosed herein includes:
[0067] S301: In response to receiving a data query request, the scheduling device determines the first working device that stores the first table corresponding to the query request.
[0068] Among them, the data query request is used to obtain the data to be queried.
[0069] It is worth noting that the technical features that are the same as those in the above embodiments will not be repeated in this embodiment.
[0070] In some embodiments, the first table is the right table and the second table is the left table. Of course, in other embodiments, the first table is the left table and the second table is the right table.
[0071] In some embodiments, if the first table is the right table and the second table is the left table, the content of the first table can be greater than or equal to the content of the second table. Of course, in other embodiments, the content of the first table can also be less than the content of the second table.
[0072] In other words, in this embodiment, there are no limitations on the type (i.e., left table or right table) of the first table and the second table, nor on the size of the first table and the second table. They can be adaptively adjusted and selected based on specific application scenarios to improve the technical effect of increasing the flexibility and diversity of data query applications.
[0073] S302: The scheduling device sends the first query task to the first working device.
[0074] The first query task is used to instruct the query of the associated value in the first table corresponding to the data query request. The first table and the second table have a data association relationship.
[0075] In some embodiments, the method for a scheduling device to generate a first query task may include: determining a join key and a predicate between a first table and a second table, and generating a first query task based on the join key and the predicate. The first query task carries the join key and the predicate.
[0076] The join key, also known as the join function, refers to the join function between the left and right tables in a join query. In this embodiment, it is the join function between the first table (or the second table) and the second table (or the first table).
[0077] Similarly, a predicate refers to a predicate function, which is a function that returns the actual value in a join query.
[0078] It is worth noting that in this embodiment, by combining the join key and the predicate to determine the first query task, and obtaining the associated value based on the first query task, the associated value can be made highly relevant to the data query request, thereby improving the technical effect of improving the reliability and effectiveness of the data query.
[0079] In some embodiments, after receiving a data query request, the scheduling device may create a filter collection thread to obtain associated values through that thread.
[0080] S303: The working device queries the first table based on the first query task and obtains the associated value.
[0081] Combining the above examples and Figure 2 Work device 1 queries its first table to obtain the associated value. Similarly, work device N queries its first table to obtain the associated value. To distinguish the associated value obtained by work device 1 from the associated value obtained by work device N, the associated value obtained by work device 1 is labeled as the first associated value, and the associated value obtained by work device N is labeled as the second associated value.
[0082] For example, if the data query request is "student A with a score of 90 or above", then the associated value can be the identifier of student A. Here, student A refers to a student with characteristic A, such as gender or age, etc., which will not be listed here.
[0083] In some embodiments, the working device may create a scanning thread to query the first table to obtain associated values.
[0084] S304: The working device sends the associated value to the scheduling device.
[0085] Combining the above examples and Figure 2 Work device 1 sends the first associated value to the scheduling device, and work device N sends the second associated value to the scheduling device.
[0086] Accordingly, the scheduling device receives the first association value and the second association value.
[0087] For example, when multiple working devices report associated values to the scheduling device, the scheduling device can summarize the associated values to obtain a set including the associated values. This set can be understood as a filter, that is, the data stored in the second table is filtered based on the filter to obtain the data to be queried.
[0088] Combining the above examples and Figure 2 For example, if working device 1 feeds back a first associated value to the scheduling device, and working device 2 feeds back a second associated value to the scheduling device, the scheduling device will perform summary processing on the first and second associated values. Specifically, it can perform deduplication and integration processing on the first and second associated values to obtain a filter.
[0089] For example, if the first association value includes the identifier of student A, and the second association value includes the identifier of student A, then the scheduling device determines the identifier of student A fed back by working device 1 and the identifier of student A that is the same as the identifier of student A fed back by working device N, and performs deduplication processing on the identifier of the same student A, and integrates the identifiers of each student A after deduplication processing to obtain a filter.
[0090] It is worth noting that in this embodiment, when there are multiple first working devices, and the scheduling device receives multiple key values fed back by the first working devices, it performs deduplication and integration processing on each key value to obtain a set (filter). This avoids the drawback of key value overlap caused by the "broadcast" method in related technologies, which leads to repeated queries. This improves the efficiency of data query and enhances the effectiveness and reliability of data query.
[0091] S305: The scheduling device generates a second query task based on the associated value.
[0092] The second query task is used to instruct the query to retrieve the feedback data corresponding to the associated value in the second table.
[0093] In some embodiments, the method for scheduling devices to generate a second query task may include: predicting a predicate corresponding to an association value based on the association value, and generating a second query task based on the association value and the predicate corresponding to the association value.
[0094] In other words, in this embodiment, prediction can be made based on the association value to obtain the corresponding predicate, so as to improve the query performance of the second working device and improve the efficiency of data query when the second working device queries the second table.
[0095] In some embodiments, if there are multiple associated values, then the predicate corresponding to the associated values is predicted based on the associated values, including: predicting the common features of the data in the second table corresponding to each associated value, and determining the predicate corresponding to the associated values based on the common features.
[0096] Combining the above examples and Figure 2 The associated values include a first associated value and a second associated value. The scheduling device predicts the common features of the data in the second table corresponding to the first associated value and the second associated value. For example, if the common feature is that the score corresponding to the identifier of student A is relatively high, almost all of which are 90 points or above, then the score greater than or equal to 90 points can be identified as a common feature, and the predicate corresponding to the associated value can be determined based on this common feature.
[0097] It is worth noting that in this embodiment, by determining common features and then determining the predicate corresponding to the associated value based on these common features, the prediction can have higher accuracy and reliability. Thus, when data is queried based on the predicate corresponding to the associated value, the accuracy and reliability of the data query can be improved.
[0098] In some embodiments, generating a second query task based on the associated value may include the following steps:
[0099] The first step is to perform syntax parsing and semantic analysis on the data query request to obtain the processed data query request.
[0100] This step can be understood as follows: after receiving a data query request, the scheduling device performs syntax parsing and semantic analysis on the data query request to determine the data query intent of the data query request, such as determining the data to be queried that the user hopes to obtain based on the data query request.
[0101] The second step is to generate execution logic information based on the processed data query request. This execution logic information is used to generate information related to the logic of executing the data query.
[0102] For example, execution logic information is used to instruct work nodes to query data corresponding to the associated value based on the associated value, and to connect (or concatenate) the associated value and the data corresponding to the associated value obtained from the query to obtain feedback data.
[0103] The third step: Generate a second query task that includes associated values and execution logic information.
[0104] It is worth noting that in this embodiment, by combining the associated value and the execution logic to generate the second query task, the second query task can have richer indication information, thereby improving the technical effect of data query diversity and flexibility.
[0105] It should be understood that the above-mentioned generation of a second query task including execution logic information and generation of a second query task including predicates corresponding to the associated values can be two independent embodiments or can be combined into one embodiment, that is, the second query task is generated based on the associated values, the predicates corresponding to the associated values, and execution logic information. This embodiment does not limit this.
[0106] S306: The scheduling device sends a second query task to the working device.
[0107] Combining the above examples and Figure 2 The scheduling device sends the second query task to working device 1, working device 2, and working device N.
[0108] In some embodiments, the scheduling device may send the second query task to the working device using a columnar storage format (such as Optimized Row Columnar, ORC, or Parquet) to further improve the filtering performance in data queries.
[0109] Based on the above analysis, the associated values can be included in the set, and there can be multiple working devices. Therefore, the associated values carried by the scheduling device in the second query task sent to different working devices may be different. For example, if working device 1 stores data corresponding to some of the associated values in the set, then the second query task sent to working device 1 carries that part of the associated values. Accordingly, working device 1 can perform data query in the second table based on that part of the associated values, thereby avoiding querying non-existent data and improving the efficiency and effectiveness of data query.
[0110] S307: The working device queries the second table stored internally according to the second query task and obtains feedback data.
[0111] Combining the above examples and Figure 2Work device 1 retrieves student A's score of 90 or above from its stored second table based on student A's identifier, and receives feedback data from work device 1; similarly, work device 2 retrieves student A's score of 90 or above from its stored second table based on student A's identifier, and receives feedback data from work device 2; similarly, work device N retrieves student A's score of 90 or above from its stored second table based on student A's identifier, and receives feedback data from work device N.
[0112] To differentiate the feedback data from different working devices, the feedback data from working device 1 can be labeled as the first feedback data, the feedback data from working device 2 as the second feedback data, and the feedback data from working device N as the Nth feedback data.
[0113] Based on the above analysis, it is clear that in this embodiment, there is no need to use a "broadcast" method for data querying, and the scheduling device summarizes the correlation values returned by the first working device. Therefore, relatively speaking, the workload and data volume for querying the second table are greatly reduced in this embodiment. Thus, this embodiment does not need to partition the second table for storage; that is, even without partitioned storage, this embodiment can still achieve fast data querying, thereby expanding the applicable scenarios and meeting different scenario requirements. Of course, partitioning the second table for querying using a "partitioning + filtering" method can further improve the efficiency, reliability, and effectiveness of data querying.
[0114] In some embodiments, the working device can create a scanning thread to query a second table through the scanning thread, thereby obtaining feedback data. The scanning thread of the working device can operate normally before receiving the second query task to avoid blocking and waiting, thus improving the efficiency of data querying.
[0115] S308: The working equipment sends feedback data to the scheduling equipment.
[0116] Combining the above examples and Figure 2 Working device 1 sends first feedback data to the scheduling device, working device 2 sends second feedback data to the scheduling device, and working device N sends Nth feedback data to the scheduling device. Correspondingly, the scheduling device receives the first feedback data, the second feedback data, and the Nth feedback data.
[0117] S309: The scheduling equipment determines and outputs the data to be queried based on the feedback data.
[0118] In some embodiments, if there are multiple second working devices, then S309 includes the following steps:
[0119] The first step is to summarize and process the feedback data sent by each of the second working devices to obtain the summarized data.
[0120] The second step is to identify the summarized data as the data to be queried and output the data to be queried.
[0121] Combining the above examples and Figure 2 The scheduling device receives the first feedback data, the second feedback data, and the Nth feedback data, and performs deduplication and integration processing on the first feedback data, the second feedback data, and the Nth feedback data to obtain the summarized data. The summarized data is then identified as the data to be queried in order to respond to the query request.
[0122] In this embodiment, by deduplicating and integrating the feedback data from each working device to determine the data to be queried, data redundancy can be avoided, and the accuracy and reliability of the determined data to be queried can be improved.
[0123] Figure 4 This is a schematic diagram according to the third embodiment of the present disclosure, wherein the present disclosure provides a data query method based on a distributed database system. This method can be applied to working devices within a distributed database system, which also includes a scheduling device. Figure 1 As shown, the method includes:
[0124] S401: Receive the first query task sent by the scheduling device. The first query task is determined based on a data query request. The query request is used to obtain the data to be queried, and the first query task is used to instruct the query of the associated value in the first table corresponding to the data query request. The first table and the second table have a data association relationship.
[0125] S402: Based on the first query task, perform query processing on the first table in the working device, obtain and feed back the associated value to the scheduling device. The associated value is used to generate a second query task, which is used to obtain and output the data to be queried.
[0126] The implementation principle of this embodiment can be found in the description of the above embodiments, and will not be repeated here.
[0127] In some embodiments, the second query task is generated based on the association value and the predicate corresponding to the association value, wherein the predicate corresponding to the association value is predicted based on the association value.
[0128] In some embodiments, the predicate corresponding to the associated value is determined based on the common characteristics of the data in the second table corresponding to each associated value.
[0129] Figure 5This is a schematic diagram according to the fourth embodiment of the present disclosure, wherein the present disclosure provides a data query method based on a distributed database system. This method can be applied to working devices within a distributed database system, which also includes a scheduling device. Figure 5 As shown, the method includes:
[0130] S501: Receive the second query task sent by the scheduling device. The second query task is generated based on the associated values obtained from querying the first table using the first task. The second query task is used to obtain and output the data to be queried. The first query task is determined based on a data query request, which is used to obtain the data to be queried. The first query task instructs the query of the associated values in the first table corresponding to the data query request. There is a data association relationship between the first table and the second table.
[0131] S502: The second table in the working device is queried according to the second query task, and feedback data is obtained and sent to the scheduling device. The feedback data is used to determine the data to be queried.
[0132] Similarly, the implementation principle of this embodiment can be found in the description of the above embodiments, and will not be repeated here.
[0133] In some embodiments, the second query task is generated based on the associated value and execution logic information. The execution logic information is generated by performing syntax parsing and semantic analysis on the data query request to obtain the processed data query request, and is used to execute the execution logic related to the data query.
[0134] In some embodiments, the first query task is to determine the join key and predicate between the first table and the second table, and to generate a query based on the join key and predicate.
[0135] In some embodiments, the first table is the left table and the second table is the right table.
[0136] In some embodiments, the first table is the right table, the second table is the left table, and the content of the right table is greater than or equal to the content of the left table.
[0137] It is worth noting that the third and fourth embodiments can be independent embodiments as described above. In other embodiments, the third and fourth embodiments can also be combined to obtain a single embodiment.
[0138] For example, if the first working device and the second working device are different working devices, then the third embodiment and the fourth embodiment can be two independent embodiments. If the first working device and the second working device are the same working device, then the third embodiment and the fourth embodiment can be combined to obtain one embodiment.
[0139] The implementation principles of the independent or combined embodiments can be found in the above embodiments, and will not be repeated here.
[0140] Figure 6 This is a schematic diagram according to the fifth embodiment of the present disclosure, wherein the present disclosure provides a data query device based on a distributed database system. This device can be applied to a scheduling device within the distributed database system, which further includes at least one working device, such as... Figure 6 As shown, the device 600 includes:
[0141] The first sending unit 601 is configured to send a first query task to a first working device storing a first table in response to receiving a data query request. The data query request is used to obtain data to be queried, and the first query task is used to instruct the query of the associated value in the first table corresponding to the data query request. The first table and the second table have a data association relationship.
[0142] The first receiving unit 602 is used to receive the correlation value fed back by the first working device.
[0143] The second sending unit 603 is used to send a second query task to a second working device storing a second table based on the associated value. The second query task instructs the querying of feedback data corresponding to the associated value in the second table.
[0144] The second receiving unit 604 is used to receive feedback data sent by the second working device.
[0145] The determination unit 605 is used to determine the data to be queried based on the feedback data.
[0146] Output unit 606 is used to output the data to be queried.
[0147] Figure 7 This is a schematic diagram according to the sixth embodiment of the present disclosure, wherein the present disclosure provides a data query device based on a distributed database system. This device can be applied to a scheduling device within the distributed database system, which further includes at least one working device, such as... Figure 7 As shown, the device 700 includes:
[0148] The first sending unit 701 is configured to send a first query task to a first working device storing a first table in response to receiving a data query request. The data query request is used to obtain data to be queried, and the first query task is used to instruct the query of the associated value in the first table corresponding to the data query request. The first table and the second table have a data association relationship.
[0149] In some embodiments, the first table is the left table and the second table is the right table.
[0150] In some embodiments, the first table is the right table, the second table is the left table, and the content of the right table is greater than or equal to the content of the left table.
[0151] Combination Figure 7 In some embodiments, the first transmitting unit 701 includes:
[0152] The second determining subunit 7011 is used to determine the connection key and predicate between the first table and the second table.
[0153] The fourth generation subunit 7012 is used to generate the first query task based on the join key and the predicate.
[0154] The third sending subunit 7013 is used to send the first query task to the first working device.
[0155] The first receiving unit 702 is used to receive the correlation value fed back by the first working device.
[0156] The second sending unit 703 is used to send a second query task to a second working device storing a second table based on the associated value. The second query task instructs the user to query the feedback data corresponding to the associated value in the second table.
[0157] In some embodiments, the number of first working devices is multiple, and the key value in the second query task is the value in the set obtained by summarizing the key values fed back by each first working device.
[0158] Combination Figure 7 In some embodiments, the second transmitting unit 703 includes:
[0159] The prediction subunit 7031 is used to predict the predicate corresponding to the association value based on the association value.
[0160] In some embodiments, the prediction subunit 7031 includes:
[0161] The prediction module is used to predict the common characteristics of each associated value corresponding to the data in the second table.
[0162] The determination module is used to determine the predicates corresponding to the associated values based on common features.
[0163] The first generation subunit 7032 is used to generate the second query task based on the association value and the predicate corresponding to the association value.
[0164] The first sending subunit 7033 is used to send the second query task to the second working device.
[0165] Combination Figure 7 In some embodiments, the second transmitting unit 703 further includes:
[0166] The processing subunit 7034 is used to perform syntax parsing and semantic analysis on the data query request to obtain the processed data query request.
[0167] The second generation subunit 7035 is used to generate execution logic information based on the processed data query request. The execution logic information is used to generate information related to the execution logic of the data query.
[0168] The third generation subunit 7036 is used to generate a second query task including the associated value and the execution logic information.
[0169] The second sending subunit 7037 is used to send the second query task to the working device storing the second table.
[0170] The second receiving unit 704 is used to receive feedback data sent by the second working device.
[0171] The determination unit 705 is used to determine the data to be queried based on the feedback data.
[0172] In some embodiments, there are multiple second working devices; combined Figure 7 Unit 705 is defined as including:
[0173] The summarization subunit 7051 is used to summarize and process the feedback data sent by each of the second working devices to obtain the summarized data.
[0174] The first determining subunit 7052 is used to determine the summarized data as the data to be queried.
[0175] Output unit 706 is used to output the data to be queried.
[0176] Figure 8 This is a schematic diagram according to the seventh embodiment of the present disclosure, wherein the present disclosure provides a data query device based on a distributed database system. This device can be applied to working devices within the distributed database system, which also includes a scheduling device, such as... Figure 8 As shown, the device 800 includes:
[0177] The third receiving unit 801 is used to receive a first query task sent by the scheduling device. The first query task is determined based on a data query request. The query request is used to obtain the data to be queried. The first query task is used to instruct the query of the associated value in the first table corresponding to the data query request. There is a data association relationship between the first table and the second table.
[0178] The first query unit 802 is used to perform query processing on the first table in the working device according to the first query task to obtain the associated value, wherein the associated value is used to generate the second query task, and the second query task is used to obtain and output the data to be queried.
[0179] Feedback unit 803 is used to feed back associated values to the scheduling equipment.
[0180] In some embodiments, the second query task is generated based on the association value and the predicate corresponding to the association value, wherein the predicate corresponding to the association value is predicted based on the association value.
[0181] In some embodiments, the predicate corresponding to the associated value is determined based on the common characteristics of the data in the second table corresponding to each associated value.
[0182] Figure 9 This is a schematic diagram according to the eighth embodiment of the present disclosure, wherein the present disclosure provides a data query device based on a distributed database system. This device can be applied to working devices within the distributed database system, which also includes a scheduling device, such as... Figure 9 As shown, the device 900 includes:
[0183] The fourth receiving unit 901 is used to receive a second query task sent by the scheduling device. The second query task is generated based on the associated values obtained from querying the first table using the first task. The second query task is used to acquire and output the data to be queried. The first query task is determined based on a data query request, which is used to acquire the data to be queried. The first query task instructs the query to retrieve the associated values in the first table corresponding to the data query request. There is a data association relationship between the first table and the second table.
[0184] The second query unit 902 is used to perform query processing on the second table in the working device according to the second query task and obtain feedback data, wherein the feedback data is used to determine the data to be queried.
[0185] The third sending unit 903 is used to send feedback data to the scheduling equipment.
[0186] In some embodiments, the second query task is generated based on the associated value and execution logic information. The execution logic information is generated by performing syntax parsing and semantic analysis on the data query request to obtain the processed data query request, and is used to execute the execution logic related to the data query.
[0187] In some embodiments, the first query task is to determine the join key and predicate between the first table and the second table, and to generate a query based on the join key and predicate.
[0188] In some embodiments, the first table is the left table and the second table is the right table.
[0189] In some embodiments, the first table is the right table, the second table is the left table, and the content of the right table is greater than or equal to the content of the left table.
[0190] According to another aspect of the present disclosure, a distributed database system is provided, comprising: a scheduling device and at least one working device, wherein...
[0191] The scheduling device includes the apparatus described in the fifth or sixth embodiment;
[0192] The working equipment includes the apparatus described in the seventh and / or eighth embodiments.
[0193] For example, in combination Figure 2 It can be seen that a distributed database system can include a scheduling device and multiple working devices, such as... Figure 2 The working devices shown are 1, 2, and so on up to N.
[0194] The scheduling device may include the apparatus described in the fifth or sixth embodiment above, to perform the method described in the first embodiment above;
[0195] The working device may include the apparatus described in the seventh embodiment above to perform the method described in the third embodiment above, or it may include the apparatus described in the eighth embodiment above to perform the method described in the fourth embodiment above.
[0196] Correspondingly, the implementation principle of the distributed database system can be found in the method described in the second embodiment above, and will not be repeated here.
[0197] The collection, storage, use, processing, transmission, provision, and disclosure of user personal information (such as student grades) in this technical solution comply with relevant laws and regulations and do not violate public order and good morals.
[0198] Figure 10 This is a schematic diagram based on the ninth embodiment of the present disclosure, as shown below. Figure 10 As shown, the electronic device 1000 in this disclosure may include a processor 1001 and a memory 1002.
[0199] Memory 1002 is used to store programs. Memory 1002 may include volatile memory, such as random-access memory (RAM), such as static random-access memory (SRAM), double data rate synchronous dynamic random-access memory (DDR SDRAM), etc.; memory may also include non-volatile memory, such as flash memory. Memory 1002 is used to store computer programs (such as application programs, functional modules, etc. that implement the above methods), computer instructions, etc. The computer programs, computer instructions, etc., can be partitioned and stored in one or more memories 1002. Furthermore, the computer programs, computer instructions, data, etc., can be accessed by processor 1001.
[0200] The aforementioned computer programs and instructions can be stored in one or more partitions of memory 1002. Furthermore, the aforementioned computer programs and instructions can be invoked by processor 1001.
[0201] The processor 1001 is configured to execute the computer program stored in the memory 1002 to implement the various steps in the methods described in the above embodiments.
[0202] For details, please refer to the relevant descriptions in the preceding method embodiments.
[0203] The processor 1001 and the memory 1002 can be independent structures or integrated structures. When the processor 1001 and the memory 1002 are independent structures, the memory 1002 and the processor 1001 can be coupled together via the bus 1003.
[0204] The electronic device in this embodiment can execute the technical solution in the above method. Its specific implementation process and technical principle are the same, and will not be repeated here.
[0205] According to embodiments of this disclosure, this disclosure also provides an electronic device, a readable storage medium, and a computer program product.
[0206] According to embodiments of this disclosure, this disclosure also provides a computer program product comprising: a computer program stored in a readable storage medium, at least one processor of an electronic device being able to read the computer program from the readable storage medium, and the at least one processor executing the computer program causing the electronic device to perform the scheme provided in any of the above embodiments.
[0207] Figure 11 A schematic block diagram of an example electronic device 1100 that can be used to implement embodiments of the present disclosure is shown. The electronic device is intended to represent various forms of digital computers, such as laptop computers, desktop computers, workstations, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. The electronic device may also represent various forms of mobile devices, such as personal digital processors, cellular phones, smartphones, wearable devices, and other similar computing devices. The components shown herein, their connections and relationships, and their functions are merely illustrative and are not intended to limit the implementation of the present disclosure described and / or claimed herein.
[0208] like Figure 11 As shown, device 1100 includes a computing unit 1101, which can perform various appropriate actions and processes according to a computer program stored in read-only memory (ROM) 1102 or a computer program loaded from storage unit 1108 into random access memory (RAM) 1103. The RAM 1103 may also store various programs and data required for the operation of device 1100. The computing unit 1101, ROM 1102, and RAM 1103 are interconnected via bus 1104. Input / output (I / O) interface 1105 is also connected to bus 1104.
[0209] Multiple components in device 1100 are connected to I / O interface 1105, including: input unit 1106, such as keyboard, mouse, etc.; output unit 1107, such as various types of monitors, speakers, etc.; storage unit 1108, such as disk, optical disk, etc.; and communication unit 1109, such as network card, modem, wireless transceiver, etc. Communication unit 1109 allows device 1100 to exchange information / data with other devices through computer networks such as the Internet and / or various telecommunications networks.
[0210] The computing unit 1101 can be various general-purpose and / or special-purpose processing components with processing and computing capabilities. Some examples of the computing unit 1101 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various special-purpose artificial intelligence (AI) computing chips, various computing units running machine learning model algorithms, a digital signal processor (DSP), and any suitable processor, controller, microcontroller, etc. The computing unit 1101 performs the various methods and processes described above, such as a data query method based on a distributed database system. For example, in some embodiments, the data query method based on a distributed database system can be implemented as a computer software program tangibly contained in a machine-readable medium, such as storage unit 1108. In some embodiments, part or all of the computer program can be loaded and / or installed on device 1100 via ROM 1102 and / or communication unit 1109. When the computer program is loaded into RAM 1103 and executed by the computing unit 1101, one or more steps of the data query method based on a distributed database system described above can be performed. Alternatively, in other embodiments, computing unit 1101 may be configured in any other suitable manner (e.g., by means of firmware) to perform a data query method based on a distributed database system.
[0211] Various embodiments of the systems and techniques described above herein can be implemented in digital electronic circuit systems, integrated circuit systems, field-programmable gate arrays (FPGAs), application-specific integrated circuits (ASICs), application-specific standard products (ASSPs), systems-on-a-chip (SoCs), payload-programmable logic devices (CPLDs), computer hardware, firmware, software, and / or combinations thereof. These various embodiments may include implementations in one or more computer programs that can be executed and / or interpreted on a programmable system including at least one programmable processor, which may be a dedicated or general-purpose programmable processor, capable of receiving data and instructions from a storage system, at least one input device, and at least one output device, and transmitting data and instructions to the storage system, the at least one input device, and the at least one output device.
[0212] The program code used to implement the methods of this disclosure may be written in any combination of one or more programming languages. This program code may be provided to a processor or controller of a general-purpose computer, special-purpose computer, or other programmable data processing apparatus, such that when executed by the processor or controller, the program code causes the functions / operations specified in the flowcharts and / or block diagrams to be implemented. The program code may be executed entirely on a machine, partially on a machine, as a standalone software package partially on a machine and partially on a remote machine, or entirely on a remote machine or server.
[0213] In the context of this disclosure, a machine-readable medium can be a tangible medium that may contain or store a program for use by or in conjunction with an instruction execution system, apparatus, or device. A machine-readable medium can be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium can be, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatus, or devices, or any suitable combination of the foregoing. More specific examples of machine-readable storage media include electrical connections based on one or more wires, portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination of the foregoing.
[0214] To provide interaction with a user, the systems and techniques described herein can be implemented on a computer having: a display device for displaying information to the user (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor); and a keyboard and pointing device (e.g., a mouse or trackball) through which the user provides input to the computer. Other types of devices can also be used to provide interaction with the user; for example, feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form (including sound input, voice input, or tactile input).
[0215] The systems and technologies described herein can be implemented in computing systems that include backend components (e.g., as a data server), or computing systems that include middleware components (e.g., an application server), or computing systems that include frontend components (e.g., a user computer with a graphical user interface or web browser through which a user can interact with embodiments of the systems and technologies described herein), or any combination of such backend, middleware, or frontend components. The components of the system can be interconnected via digital data communication of any form or medium (e.g., a communication network). Examples of communication networks include local area networks (LANs), wide area networks (WANs), and the Internet.
[0216] Computer systems can include clients and servers. Clients and servers are generally geographically separated and typically interact via communication networks. The client-server relationship is created by computer programs running on the respective computers and having a client-server relationship with each other. A server can be a cloud server, also known as a cloud computing server or cloud host, a hosting product within the cloud computing service ecosystem, addressing the shortcomings of traditional physical hosts and VPS (Virtual Private Server, or simply "VPS") services, such as high management difficulty and weak business scalability. Servers can also be servers for distributed systems or servers incorporating blockchain technology.
[0217] It should be understood that the various forms of processes shown above can be used to rearrange, add, or delete steps. For example, the steps described in this disclosure can be executed in parallel, sequentially, or in different orders, as long as the desired result of the technical solution disclosed in this disclosure can be achieved, and this is not limited herein.
[0218] The specific embodiments described above do not constitute a limitation on the scope of protection of this disclosure. Those skilled in the art should understand that various modifications, combinations, sub-combinations, and substitutions can be made according to design requirements and other factors. Any modifications, equivalent substitutions, and improvements made within the spirit and principles of this disclosure should be included within the scope of protection of this disclosure.
Claims
1. A data query method based on a distributed database system, the method comprising: In response to receiving a data query request, a first working device storing the first table is determined, and a first query task is sent to the first working device; wherein, the data query request is used to obtain data to be queried, and the first query task is used to instruct the query of the associated value in the first table corresponding to the data query request, and there is a data association relationship between the first table and the second table; The system receives the association values fed back by the first working device. If there are multiple first working devices, the system performs deduplication and integration processing on the association values fed back by each first working device to obtain a set of association values. The system then sends a second query task to the second working device storing the second table based on the association values or the set of association values. The second query task is used to instruct the second working device to query the feedback data in the second table that corresponds to the association values or the set of association values. Receive feedback data sent by the second working device. If there are multiple second working devices, perform deduplication and integration processing on the feedback data sent by each second working device to obtain the summarized data. Determine the summarized data as the data to be queried and output the data to be queried. Based on the associated value, a second query task is sent to the second working device storing the second table, including: The predicate corresponding to the association value is predicted based on the association value; The second query task is generated based on the association value and the predicate corresponding to the association value, and then sent to the second working device. The number of association values is multiple; the predicates corresponding to the association values are predicted based on the association values, including: Predict the common characteristics of each associated value corresponding to the data in the second table; The predicate corresponding to the association value is determined based on the common features.
2. The method according to claim 1, wherein, Based on the associated value, a second query task is sent to the second working device storing the second table, including: The data query request is subjected to syntax parsing and semantic analysis to obtain the processed data query request; Execution logic information is generated based on the processed data query request. The execution logic information is used to generate information related to the execution logic of the data query. A second query task is generated, including the associated value and the execution logic information, and then sent to the second working device.
3. The method according to claim 1, wherein, In response to receiving a data query request, a first query task is sent to the first working device storing the first table, including: Determine the join key and predicate between the first table and the second table, generate the first query task based on the join key and the predicate, and send the first query task to the first working device.
4. The method according to claim 1, wherein, The first table is the left table, and the second table is the right table.
5. The method according to claim 1, wherein, The first table is the right table, and the second table is the left table. The content of the right table is greater than or equal to the content of the left table.
6. A data query method for a distributed database system, comprising: The system receives a first query task sent by a scheduling device, wherein the first query task is determined based on a data query request, the query request is used to obtain data to be queried, and the first query task is used to instruct the query of the associated value in a first table corresponding to the data query request, and there is a data association relationship between the first table and the second table. The first table in the working device is queried according to the first query task to obtain the association value. If the working device is one of multiple first working devices, the association value is fed back to the scheduling device so that the scheduling device can perform deduplication and integration processing on the association values fed back by each first working device to obtain a set of association values. The association value or the set of association values is used to generate a second query task, and the second query task is used to obtain and output the data to be queried. The second query task is generated based on the association value and the predicate corresponding to the association value, and the predicate corresponding to the association value is predicted based on the association value; The number of associated values is multiple, and the predicate corresponding to each associated value is determined based on the common characteristics of the data in the second table corresponding to each associated value.
7. The method according to claim 6, further comprising: Receive the second query task sent by the scheduling device; The second table in the working device is queried according to the second query task, and feedback data is obtained and sent to the scheduling device, wherein the feedback data is used to determine the data to be queried.
8. The method according to claim 7, wherein, The second query task is generated based on the associated value and execution logic information. The execution logic information is generated by performing syntax parsing and semantic analysis on the data query request to obtain a processed data query request, and is used to execute information related to the execution logic of the data query.
9. The method according to claim 6, wherein, The first query task is to determine the join key and predicate between the first table and the second table, and to generate the query based on the join key and the predicate.
10. The method according to claim 6, wherein, The first table is the left table, and the second table is the right table.
11. The method according to claim 6, wherein, The first table is the right table, and the second table is the left table. The content of the right table is greater than or equal to the content of the left table.
12. A data query device based on a distributed database system, comprising: The first sending unit is configured to, in response to receiving a data query request, determine a first working device storing a first table, and send a first query task to the first working device; wherein, the data query request is used to obtain data to be queried, and the first query task is used to instruct the query of the associated value in the first table corresponding to the data query request, and there is a data association relationship between the first table and the second table; The first receiving unit is used to receive the association values fed back by the first working device. If there are multiple first working devices, the association values fed back by each first working device are deduplicated and integrated to obtain a set of association values. The second sending unit is configured to send a second query task to a second working device storing the second table based on the associated value or the set of associated values; wherein the second query task is configured to instruct the second working device to query feedback data in the second table corresponding to the associated value or the set of associated values; The second receiving unit is used to receive feedback data sent by the second working device; A determining unit is used to determine the data to be queried based on the feedback data; Output unit, used to output the data to be queried; The second working device comprises multiple devices; the determining unit includes: The summarization subunit is used to summarize and process the feedback data sent by each of the second working devices to obtain the summarized data. The first determining subunit is used to determine the summarized data as the data to be queried. The second transmitting unit includes: A prediction subunit is used to predict the predicate corresponding to the association value based on the association value; The first generation subunit is used to generate the second query task based on the association value and the predicate corresponding to the association value; The first sending subunit is used to send the second query task to the second working device; The number of associated values is multiple; the prediction subunit includes: The prediction module is used to predict the common characteristics of each associated value corresponding to the data in the second table; The determination module is used to determine the predicate corresponding to the association value based on the common features.
13. The apparatus according to claim 12, wherein, The second transmitting unit includes: The processing subunit is used to perform syntax parsing and semantic analysis on the data query request to obtain the processed data query request. The second generation subunit is used to generate execution logic information based on the processed data query request. The execution logic information is used to generate information related to the execution logic of the data query. The third generation subunit is used to generate a second query task including the associated value and the execution logic information; The second sending subunit is used to send the second query task to the second working device.
14. The apparatus according to claim 12, wherein, The first transmitting unit includes: The second determining subunit is used to determine the join key and predicate between the first table and the second table; The fourth generation subunit is used to generate the first query task based on the join key and the predicate; The third sending subunit is used to send the first query task to the first working device.
15. The apparatus according to claim 12, wherein, The first table is the left table, and the second table is the right table.
16. The apparatus according to claim 12, wherein, The first table is the right table, and the second table is the left table. The content of the right table is greater than or equal to the content of the left table.
17. A data query device for a distributed database system, comprising: The third receiving unit is used to receive a first query task sent by the scheduling device, wherein the first query task is determined according to a data query request, the query request is used to obtain data to be queried, and the first query task is used to instruct the query of the associated value in the first table corresponding to the data query request, and there is a data association relationship between the first table and the second table. The first query unit is used to perform query processing on the first table in the working device according to the first query task to obtain the association value, wherein the association value is used to generate the second query task, and the second query task is used to obtain and output the data to be queried; Feedback unit, used to feed back the associated value to the scheduling device; The feedback unit is further configured to, if the working device is one of a plurality of first working devices, feed back the association value to the scheduling device so that the scheduling device can perform deduplication and integration processing on the association values fed back by each of the first working devices to obtain an association value set, the association value set being used to generate a second query task; The second query task is generated based on the association value and the predicate corresponding to the association value, and the predicate corresponding to the association value is predicted based on the association value; The number of associated values is multiple, and the predicate corresponding to each associated value is determined based on the common characteristics of the data in the second table corresponding to each associated value.
18. The apparatus of claim 17, further comprising: The fourth receiving unit is used to receive the second query task sent by the scheduling device; The second query unit is used to perform query processing on the second table in the working device according to the second query task to obtain feedback data, wherein the feedback data is used to determine the data to be queried; The third sending unit is used to send the feedback data to the scheduling device.
19. The apparatus according to claim 18, wherein, The second query task is generated based on the associated value and execution logic information. The execution logic information is generated by performing syntax parsing and semantic analysis on the data query request to obtain a processed data query request, and is used to execute information related to the execution logic of the data query.
20. The apparatus according to claim 17, wherein, The first query task is to determine the join key and predicate between the first table and the second table, and to generate the query based on the join key and the predicate.
21. The apparatus according to claim 17, wherein, The first table is the left table, and the second table is the right table.
22. The apparatus according to claim 17, wherein, The first table is the right table, and the second table is the left table. The content of the right table is greater than or equal to the content of the left table.
23. An electronic device, comprising: At least one processor; as well as A memory communicatively connected to the at least one processor; wherein, The memory stores instructions executable by the at least one processor, which, when executed by the at least one processor, enable the at least one processor to perform the method of any one of claims 1-5; or enable the at least one processor to perform the method of any one of claims 6-11.
24. A non-transitory computer-readable storage medium storing computer instructions, wherein, The computer instructions are used to cause the computer to perform the method according to any one of claims 1-5; or, the computer instructions are used to cause the computer to perform the method according to any one of claims 6-11.
25. A computer program product comprising a computer program that, when executed by a processor, implements the steps of the method according to any one of claims 1-5; or, when executed by a processor, the computer program implements the steps of the method according to any one of claims 6-11.
26. A distributed database system, comprising: A scheduling device and at least one working device, wherein, The scheduling device includes the apparatus as described in any one of claims 12-16; The working equipment includes the apparatus as described in any one of claims 17-22.