WO2019128978A1 - 一种数据库系统以及查询数据库的方法和装置 - Google Patents
一种数据库系统以及查询数据库的方法和装置 Download PDFInfo
- Publication number
- WO2019128978A1 WO2019128978A1 PCT/CN2018/123437 CN2018123437W WO2019128978A1 WO 2019128978 A1 WO2019128978 A1 WO 2019128978A1 CN 2018123437 W CN2018123437 W CN 2018123437W WO 2019128978 A1 WO2019128978 A1 WO 2019128978A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- query
- database
- request
- result
- slave
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Ceased
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
- G06F16/278—Data partitioning, e.g. horizontal or vertical partitioning
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/2053—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
- G06F11/2056—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring
- G06F11/2069—Management of state, configuration or failover
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/2097—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements maintaining the standby controller/processing unit updated
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3409—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
- G06F11/3433—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment for load management
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
- G06F16/2365—Ensuring data consistency and integrity
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2453—Query optimisation
- G06F16/24534—Query rewriting; Transformation
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
- G06F16/24553—Query execution of query operations
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2458—Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
- G06F16/2471—Distributed queries
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
- G06F16/275—Synchronous replication
Definitions
- the present invention relates to databases, and in particular to a database system.
- the invention also relates to a method for querying a database and an apparatus for querying a database. It also relates to a method of assigning a query task and a device for assigning a query task. It also relates to a method of performing a database query and an apparatus for performing a database query. It also relates to a method of performing a database query and a device for performing a database query.
- Non-distributed databases generally use a master-slave architecture with a primary database plus a secondary database or a primary database plus multiple dependent databases.
- the primary database is externally writable. When the data on the primary database is updated, it is synchronized to the dependent database through the transaction log.
- a primary database will correspond to one or more subordinate databases, and each subordinate database has a complete data that is consistent with the primary database.
- each dependent database can be used as a standby database instead of the primary database, enhancing usability.
- Each subordinate database can execute a query request, which can separate the query burden of the main database.
- a SQL query operation can only be performed in one database, ie a SQL query can only be executed in the primary database or only in one dependent database. This can result in a slave database being busy performing a complex large SQL query operation with heavy load, slow response, and other slave databases being idle.
- the subordinate database in addition to the daily query database, the subordinate database generally performs complex operations such as generating reports and data collation at specific times of the day (such as the early morning). In this case, performing complex large SQL query operations may even result in an inability to provide query services due to overloaded operation.
- the present application provides a database system to solve the above-mentioned problems of the database of the existing master-slave architecture.
- the invention further provides a method for querying a database, a method for allocating a query operation, a method for executing a database query, a method for performing a database query, and a device corresponding to the foregoing method.
- the present application provides a database system, including: a primary database, at least one dependent database and a query processing unit, the primary database and the dependent database have a data connection, the slave database and the query processing unit Have a data connection;
- the query processing unit is configured to split the query request into query operation instructions with no intersection of the query scope, send the split query operation instruction to the same or different slave database to perform the query operation, and feed back the query result.
- the application also provides a method for querying a database, including:
- the result of the query request is provided to the requester of the query request.
- the present application also provides a method for allocating a query operation, including:
- the query request is split into query operations on the dependent database with no intersection of the query scope.
- the application also provides a method for performing a database query, including:
- the result of the query operation is provided to a recipient specified by the query task.
- the application also provides a method for performing a database query, including:
- the consolidated results are provided to the recipient specified by the query task.
- the application also provides an apparatus for querying a database, including:
- An obtaining unit configured to obtain a query request for querying a database
- a splitting unit configured to split the query request into a query operation instruction for a slave database having no intersection of the query scope
- An execution unit configured to execute the query operation instruction for the slave database
- a providing unit configured to provide a request result of the query request to the requester of the request.
- the application also provides an apparatus for allocating a query operation, including:
- An obtaining unit configured to obtain a query request for a database
- a splitting unit configured to split the query request into a query operation on a dependent database whose query scope does not intersect.
- the application also provides an apparatus for performing a database query, including:
- An execution unit configured to execute a query operation instruction specified by the query task
- a providing unit for providing a result of the query operation to a recipient specified by the query task.
- the application also provides an apparatus for performing database query, including:
- a second obtaining unit configured to obtain a query result of another query operation specified by the query task
- one aspect of the database system provided by the present application has the following advantages: by querying the processing unit, splitting the query request into query operation instructions with no intersection of the query scope, and splitting the query operation instruction
- the query operation is sent to the same or different subordinate databases, so that the dependent database resources can be effectively utilized, and the query pressure of one or a single subordinate database is avoided, and the query efficiency can be improved.
- one aspect of the method for querying a database has the following advantages: splitting the query request into a query operation on a dependent database whose query scope has no intersection, thereby distributing the query to The subordinate database plays the role of effectively utilizing the subordinate database resources to achieve the effect of improving query efficiency.
- one aspect of the method for allocating a query operation has the following advantages: splitting the query request into a query operation on a dependent database with no intersection of query scopes, thereby dispersing the query To the subordinate database, the role of the subordinate database resources can be effectively utilized to achieve the effect of improving query efficiency.
- one aspect of the method for performing database query provided by the present application has the following advantages: the result of the query operation specified by the query task can be sent to the designated receiver, and the flexible query and fullness are provided. Use resources to share the burden of the query.
- one aspect of the method for performing database query provided by the present application has the following advantages: the result of the obtained query operation can be integrated, and the integrated result is provided to the receiving specified by the query task. By. Play the role of making full use of resources to share the burden of inquiry.
- FIG. 1 is a schematic structural diagram of a database system according to a first embodiment of the present application.
- FIG. 2 is a schematic flowchart of a method for querying a database according to a second embodiment of the present application
- FIG. 3 is a schematic flowchart of a method for allocating a query operation according to a third embodiment of the present application.
- FIG. 4 is a schematic flowchart of a method for performing a database query according to a fourth embodiment of the present application.
- FIG. 5 is a schematic flowchart of a method for performing database query according to a fifth embodiment of the present application.
- FIG. 6 is a structural block diagram of an apparatus for querying a database according to a sixth embodiment of the present application.
- FIG. 7 is a structural block diagram of an apparatus for allocating a query operation according to a seventh embodiment of the present application.
- FIG. 8 is a structural block diagram of an apparatus for performing a database query according to an eighth embodiment of the present application.
- FIG. 9 is a structural block diagram of an apparatus for performing database query according to a ninth embodiment of the present application.
- the first embodiment of the present application provides a database system.
- the schematic diagram of the structure is as shown in FIG. 1.
- the utility model includes: a primary database U101, a secondary database U102, a secondary database U103, a secondary database U104 and a query processing unit U105, and the primary database.
- U101 has a data connection with the respective slave databases (U102, U103 and U104) and between the respective slave databases (U102, U103 and U104) and the query processing unit U105.
- the data connection includes a hardware connection and a software connection
- the hardware connection may be a wired network connection such as Ethernet, or a wireless network connection such as Bluetooth or a wireless local area network
- the software connection may be various software protocols or program processes. Interface connection between. Data and information can be exchanged through the data connection.
- the primary database U101 receives and performs an update operation on the database from the outside, such as adding a record, modifying a record, deleting a record, and the like. Update database information.
- the slave database U102, the slave database U103 and the slave database U104 (numbered 0, 1, 2, respectively). It is synchronized with the primary database to maintain a database data consistent with the primary database, so that when the primary database fails, the primary database can be used to provide the services provided by the original primary database.
- the slave databases may be synchronized with the master database in a plurality of manners.
- the master database may actively send update information to each slave database when updating, and each slave database is further based on the master database.
- the database data is updated with the update information of the database.
- each of the slave databases may periodically check the update information to the primary database or the unit that stores the update information of the primary database according to its own status, and update its own database data as soon as it is updated.
- the slave databases (U102, U103 and U104) also accept and respond to query operations from the query processing unit U105.
- Each subordinate database maintains the database data consistent with the main database by synchronizing with the main database, and can be used to provide a query function of the database.
- the query processing unit U105 used in this embodiment is configured to send the query request to the corresponding subordinate database, or split the query request into query operation instructions with no intersection of the query scope, and send the split query operation instructions to the same or different.
- the dependent database performs the query operation and feeds back the query result.
- the query processing unit U105 can accept a query request for the database, generate a corresponding query operation instruction according to the query request, and then send the query operation instruction to a certain or specified slave database to execute the slave database.
- the query operation for example, the data query for the query operation instruction is relatively simple, and only a subordinate database can be queried, or the subordinate database specified by the query operation instruction is provided for the query operation; or the query processing unit U105 converts the query request according to the need.
- the query instructions are distributed to the same or different subordinate databases, and different query operations are performed on different databases, thereby realizing the rational use of multiple subordinate databases, which is beneficial to improving efficiency and reducing single subordinates. Data processing pressure for database queries.
- the query processing unit can split the query request and distribute it to different slave databases to perform the query operation.
- the external query request is split into query operation instructions having no intersection of the query scope, and the query operation is performed on the slave databases (U102, U103, and U104).
- the query operation in which the query scope has no intersection means that there is no intersection of the query operations performed on the respective dependent databases, that is, different records are queried for different dependent databases.
- the query request is split into query operations that do not intersect the query scope of each subordinate database.
- the distribution column value corresponding to the query object refers to a value corresponding to each record of the query object that can be used to specify the slave database. This value is called the distribution column value.
- the identifier of the corresponding subordinate database can be obtained.
- the object to be queried is a population data table
- each record of the table includes information such as a city, a population, and the like
- the distribution column value is a column of data of the table, wherein each data corresponds to one row of the population data table.
- the query processing unit U105 After obtaining the external query request for the demographic data table, the query processing unit U105 acquires the distribution column value corresponding to the demographic data table, and converts the query request into the specification of the demographic data table.
- the distributed column value item is queried, and each distribution column value may be hashed and then modulo according to the number of subordinate databases (3 in this embodiment), and the corresponding subordinate database is determined according to the remainder after modulo. Query operation.
- the distribution column values with a remainder of 0 include A0, B0, C0, D0...
- the distribution column values with a remainder of 1 include A1, B1, C1, D1...
- the distribution column values with a remainder of 2 include A2, B2, C2, D2...
- the query operation performed on the slave database U102 with the number 0 is the records corresponding to the distribution column values of A0, B0, C0, D0, etc. with the remainder 0.
- the query operation performed on the slave database U103 numbered 1 is a record corresponding to the distribution column values of A1, B1, C1, and D1 having a remainder of 1.
- the query operation performed on the slave database U104 of number 2 is the record corresponding to the distribution column values of A2, B2, C2, D2, etc. with a remainder of 2.
- the distribution column values corresponding to the query object include the following:
- the distribution column value table corresponding to each query object of the database may be generated in advance, for example, the distribution column value of each row record of each query object of the generated database is edited in advance by the owner of the database.
- the distributed column value table of each query object is generated, stored, and updated synchronously when the database is updated.
- the query processing unit U105 receives the external query request, the distribution column value of the query object corresponding to the current query request is obtained from the distributed column value table corresponding to each of the saved query objects of the database.
- Obtaining the distribution column value from the distributed column of the saved query object can simplify the query and improve the query efficiency. And since the distribution column value is generated by the owner of the database in advance, the query of the record corresponding thereto can be distributed to each subordinate database to the maximum extent.
- the value of any column of the query object corresponding to the query request may also be used as the distribution column value of the query object.
- the value of the column specified by the query request can be used as the distribution column value.
- the city name value of the city column of the population data table may be queried first, and the city name value is used as the distribution column value.
- the value of the column of the query object corresponding to the query request is used as the distribution column value, and the information of the query request can be fully utilized, and the distributed column index table does not need to be generated and maintained in advance, which has the effect of reducing the workload of database maintenance.
- the value of the first column of the query object is used as a distribution column value, and the value of the column that the query object necessarily has is used as the distribution column value in the case that the query request does not specify the column of the query object, thereby simplifying the maintenance work of the database. .
- the value of the column included in the query request may also be used as the distribution column value of the query object.
- the query request specifies the “city”, and may first query all the city name values of the city data column of the population data table, and use the city name value as the distribution column value.
- Using the value of the column specified by the query request as the distribution column value can fully utilize the information of the query request, and does not need to generate and maintain the distributed column index table in advance, thereby reducing the workload of database maintenance.
- the query task of splitting the query request into the dependent database without the intersection of the query scope according to the distribution column value is applicable not only to the case of querying a single query object, but also to the case of querying multiple query objects, and has universal applicability.
- the query request is split into a query operation on the slave database whose query scope does not intersect.
- the unique key refers to the value of the key corresponding to each record of the query object, and the key value of each record is different.
- the value range of the key value may be pre-divided into a plurality of value ranges equal to the number of the dependent databases participating in the query, and each dependent database (according to the unique key index) is selected to access the data of the corresponding value domain.
- c1 is a unique key.
- it is divided into three value ranges [0, 60], [60, 100], and [100, 150], and each of the dependent databases accesses the record data of the corresponding value domain.
- This mode is suitable for querying individual query objects.
- the query request is split into a query operation on the slave database whose query scope does not intersect.
- the number of data pages of the query object may be previously divided into a plurality of ranges equal to the number of dependent databases participating in the query.
- the data page number of the query object is 0-1500
- the subordinate database is three, which can be divided into [0-500], [500, 1000] and [1000-1500] 3 ranges, which are processed by three subordinate databases respectively. .
- This mode is suitable for querying individual query objects.
- the query processing unit respectively performs the query operation on the slave databases (U102, U103 and U104), and the slave databases (U102, U103 and U104) feed back the result of the query operation to the query processing unit U105.
- the dependent database U102 returns the result of the query operation of the distribution column value of the population data table A0, B0, C0, D0, etc. to the query processing unit U105; the dependent database U103 will have a distribution column value for the population data table.
- the result of the query operation of A1, B1, C1, D1, etc. is returned to the query processing unit U105; the dependent database U104 returns the result of the query operation of the distribution column value of the population data table to A2, B2, C2, D2, etc.
- the query processing unit U105 is provided.
- the query processing unit U105 After receiving the execution result of the query operation, the query processing unit U105 provides a query result to the requester of the query request.
- the query processing unit U105 respectively receives the execution result of the query operation for the records of the distribution column values of the population data table, such as A0, B0, C0, D0, fed back by the slave database U102, and the feedback of the slave database U103.
- the distribution column value of the population data table is the execution result of the query operation recorded by A1, B1, C1, D1, etc.
- the distribution column value of the population data table fed back by the slave database U104 is A2, B2, C2, D2, etc.
- the execution result is fed back to the requester of the external query request.
- the database system provided by this embodiment completes a response to an external query request.
- the query processing unit of the database system may further be configured to send a query task, accept the result of the query task and the query operation sent by the other query processing unit, execute a database query operation specified by the accepted query task, and integrate the As a result of the query operation, the result of the dependent database query operation or the consolidated result is provided to the recipient specified by the query task.
- the query result of integrating the query operation includes sorting, merging, and the like of the execution result of the query operation.
- the query processing unit U105 may further dynamically determine the number of the subordinate databases participating in the query according to the statistical information of the data involved in the query, for example, the size of the corresponding table, and send the split query operation instruction to the determined subordinate database.
- the query operation is performed and the query result is fed back.
- the query processing unit may determine how many subordinate databases participate in the query according to the size of the workload involved in the query request or the size of the query object, and the workload is small or the corresponding data table is small, and a small number of subordinates may be allocated.
- the database even participates in the query operation by a subordinate database. On the contrary, it allocates as much as possible to the subordinate database to participate in the query operation, so as to balance or as much as possible the workload of the query operation for each subordinate database, and improve the efficiency.
- the query processing unit may be located on the same physical node as the slave database, that is, each slave database has a slave database and a query processing unit at the same time. This facilitates the ability to take advantage of multiple subordinate databases to handle large and complex query requests to the database.
- the database system may further include respective query processing units corresponding to the respective dependent databases, and the query processing units are respectively located at nodes of the corresponding dependent database. on.
- the external query request accepted by the query processing unit U105 is select c1, count(c2) from t1 group by c1.
- the c1 column of the population data table t1 is the city name, and the c2 column is the population quantity value.
- the query processing unit U105 converts the query tasks to the respective dependent databases (U102, U103 and U104) and distributes them to the query processing units corresponding to the respective dependent databases, and the query tasks may include no intersection of the query ranges of the respective dependent databases. Query operation.
- Each of the query processing units corresponding to the respective subordinate databases accepts the query task, and if the query task does not include a query operation that does not intersect the query scope of each subordinate database, according to the accepted query task and the corresponding subordinate
- the database forms a query operation that does not intersect the query ranges of the respective dependent databases.
- the query tasks formed by the query processing units corresponding to the respective subordinate databases of the database system are as follows:
- the query task corresponding to the query processing unit of the node where the slave database U102 is located is the population quantity data of the city whose query distribution column values are A0, B0, C0, D0, etc., and sends the query result to the node where the slave database U104 is located.
- Query processing unit is the population quantity data of the city whose query distribution column values are A0, B0, C0, D0, etc.
- the query task corresponding to the query processing unit of the node where the slave database U103 is located is the population quantity data of the city in which the query distribution column values are A1, B1, C1, D1, etc., and the query result is sent to the node where the slave database U104 is located.
- Query processing unit is the population quantity data of the city in which the query distribution column values are A1, B1, C1, D1, etc.
- the query task corresponding to the query processing unit of the node where the slave database U104 is located is the population quantity data of the city whose query distribution column values are A2, B2, C2, D2, etc., and is received by the slave database U102 and the slave database U103.
- the population quantity data of the city is calculated, the sum of the populations of the respective cities is calculated, and the result is sent to the query processing unit U105.
- Each of the query processing units located at the same node as the respective slave databases performs a query operation corresponding to the query task of the slave database of the node:
- the query processing unit of the node where the slave database U102 is located performs an operation of querying the population quantity data of the city in which the distribution column values are A0, B0, C0, D0, etc., and sends the execution result of the query operation to the slave database U102.
- the query processing unit of the node where the slave database U103 is located performs an operation of querying the population quantity data of the city in which the distribution column values are A1, B1, C1, D1, etc., and sends the execution result of the query operation to the slave database U103.
- the query processing unit of the node where the slave database U104 is located performs an operation of querying the population quantity data of the city whose query distribution column values are A2, B2, C2, D2, etc., and receives the nodes where the slave databases U102 and U103 are located.
- the population data of each city sent is collected, and the data of the population of each city received is integrated, and the data of the population of each city is obtained, and the data of the population of the integrated cities is sent.
- the query processing unit U105 is given.
- the second embodiment of the present application provides a method for querying a database.
- the schematic flowchart of the application is as shown in FIG. 2, and includes the following steps:
- Step S201 obtaining a query request for the database.
- the query request may typically include information of a query object of the specified database information.
- the information of the query object may include the name of the table to be queried, the value of the column of the table to be queried, and the like.
- Step S202 splitting the query request into query operation instructions for the dependent database that have no intersection of the query scope.
- the query operation on the slave database without the intersection of the query scope means that there is no intersection of the query operations performed on the respective slave databases, that is, different records are queried for different two slave databases.
- the method of splitting the query request into the query database does not intersect the query of the slave database.
- the present embodiment provides the following manner to split the query request into the slave database with no intersection of the query scope. Query operation:
- the query request is split into query operation instructions for the slave database whose query scope does not intersect according to the distribution column value corresponding to the query object.
- the distribution column value corresponding to the query object corresponding to the request includes at least one of the following:
- the query request is split into query operation instructions for the slave database whose query scope does not intersect.
- the query request is split into query operation instructions for the slave database whose query scope does not intersect.
- Step S203 executing the query operation instruction for the slave database.
- the step of integrating the result of the query operation may be further included.
- the related description reference may be made to the related description in the first embodiment of the present application.
- Step S204 providing a result of the query request to a requester of the query request.
- the result of the query database request is fed back to the requester of the request based on the result of the execution of the query operation on the dependent database, or the result of the integration. Thereby completing the query of the database.
- the third embodiment of the present application provides a method for allocating a query operation.
- the schematic flowchart of the present application is as shown in FIG. 3, and includes the following steps:
- Step S301 obtaining a query request for the database.
- Step S302 splitting the query request into query operation instructions for the slave database that have no intersection of the query scope.
- the query operation for splitting the query request into the query database without the intersection of the query scope may be performed in multiple ways.
- the query request is split into the query of the slave database without the intersection of the query scope.
- the query request is split into query operation instructions for the slave database without the intersection of the query scope according to the distribution column value corresponding to the query object.
- the distribution column value corresponding to the query object includes at least one of the following:
- the query request is split into query operation instructions for the slave database whose query scope does not intersect.
- the query request is split into query operation instructions for the slave database whose query scope does not intersect.
- the fourth embodiment of the present application provides a method for performing a database query, and a schematic flowchart thereof is shown in FIG. 4, and includes the following steps:
- Step S401 obtaining a query task.
- Step S402 performing a query operation specified by the query task.
- Step S403 providing a result of the query operation to a receiver specified by the query task.
- a fifth embodiment of the present application provides a method for performing a database query, and a schematic flowchart thereof is shown in FIG. 5, and includes the following steps:
- Step S501 Acquire an execution query task.
- Step S502 obtaining a query result of other query operations specified by the query task.
- Step S503 integrating the query result.
- the step of performing the query operation specified by the query task to obtain the query result may be further included.
- Step S504 providing the integrated result to the recipient specified by the query task.
- the sixth embodiment of the present application provides an apparatus for querying a database.
- the structural block diagram thereof is as shown in FIG. 6, and includes an obtaining unit U601, a splitting unit U602, an executing unit U603, and a providing unit U604.
- the obtaining unit U601 is configured to obtain a query request for querying a database.
- the splitting unit U602 is configured to split the query request into a query operation on a slave database whose query scope does not intersect.
- the splitting unit is specifically configured to: split the query request into a query task for a dependent database whose query scope does not intersect according to a distribution column value corresponding to the query object.
- the distribution column value corresponding to the query object includes at least one of: a pre-stored distribution column value of the query object; a value of an arbitrary column of the query object; a value of a first column of the query object; the query Request the value of the specified column.
- the splitting unit may be further configured to split the query request into a query operation on the slave database whose query scope does not intersect according to the unique key of the record of the query object corresponding to the query request.
- the splitting unit may be further configured to: split the query request into a query operation on the slave database whose query scope does not intersect according to the number of the data page of the query object corresponding to the query request.
- the executing unit U603 is configured to perform the query operation on the slave database.
- the providing unit U604 is configured to provide the requester of the request with the query result of the query request.
- the apparatus provided in this embodiment may further include an integration unit for integrating the result of the query operation.
- the seventh embodiment of the present application provides an apparatus for allocating a query operation, and a structural block diagram thereof is shown in FIG. 7, and includes: an obtaining unit U701 and a splitting unit U702.
- the obtaining unit U701 is configured to obtain a query request for a database
- the splitting unit U702 is configured to split the query request into a query operation on a dependent database whose query scope does not intersect.
- the splitting unit U702 may be specifically configured to split the query request into a query task for a dependent database whose query scope does not intersect according to a distribution column value corresponding to the query object.
- the distribution column value includes at least one of: a pre-stored distribution column value of the query object; a value of the query query object arbitrary column; a value of the first column of the query object; the query request specifies The value of the column.
- the splitting unit U702 may be further configured to split the query request into a query operation on the slave database whose query scope does not intersect according to the unique key of the record of the query object corresponding to the query request.
- the splitting unit U702 may be further configured to split the query request into a query operation on the slave database whose query scope does not intersect according to the number of the data page of the query object corresponding to the query request.
- An eighth embodiment of the present invention provides an apparatus for performing a database query, and a structural block diagram thereof is shown in FIG. 8, and includes: an obtaining unit U801, an executing unit U802, and a providing unit U803.
- the obtaining unit U801 is configured to acquire a query task.
- the executing unit U802 is configured to execute a query operation specified by the query task
- the providing unit U803 is configured to provide a result of the query operation to a receiver specified by the query task.
- the ninth embodiment of the present application provides an apparatus for performing database query, and a structural block diagram thereof is shown in FIG. 9, and includes: an obtaining unit U901, a second obtaining unit U902, an integrating unit U903, and a providing unit U904.
- the obtaining unit U901 is configured to acquire a query task.
- the second obtaining unit U902 is configured to obtain a query result of other query operations specified by the query task
- the integration unit U903 is configured to integrate the query result
- the providing unit U904 is configured to provide the integrated result to the recipient specified by the query task.
- the apparatus for performing database query may further include an execution unit.
- the execution unit is configured to execute a query operation specified by the query task to obtain a query result.
- a computing device includes one or more processors (CPUs), input/output interfaces, network interfaces, and memory.
- processors CPUs
- input/output interfaces network interfaces
- memory volatile and non-volatile memory
- the memory may include non-persistent memory, random access memory (RAM), and/or non-volatile memory in a computer readable medium, such as read only memory (ROM) or flash memory.
- RAM random access memory
- ROM read only memory
- Memory is an example of a computer readable medium.
- Computer readable media including both permanent and non-persistent, removable and non-removable media may be implemented by any method or technology.
- the information can be computer readable instructions, data structures, modules of programs, or other data.
- Examples of computer storage media include, but are not limited to, phase change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read only memory. (ROM), electrically erasable programmable read only memory (EEPROM), flash memory or other memory technology, compact disk read only memory (CD-ROM), digital versatile disk (DVD) or other optical storage, Magnetic tape cartridges, magnetic tape storage or other magnetic storage devices or any other non-transportable media can be used to store information that can be accessed by a computing device.
- computer readable media does not include non-transitory computer readable media, such as modulated data signals and carrier waves.
- embodiments of the present application can be provided as a method, system, or computer program product.
- the application can take the form of an entirely hardware embodiment, an entirely software embodiment or a combination of software and hardware.
- the application can take the form of a computer program product embodied on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) including computer usable program code.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- Quality & Reliability (AREA)
- Computing Systems (AREA)
- Fuzzy Systems (AREA)
- Mathematical Physics (AREA)
- Probability & Statistics with Applications (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
Description
Claims (28)
- 一种数据库系统,其特征在于,包括:主用数据库,至少一个从属数据库和查询处理单元,所述主用数据库与所述从属数据库间具有数据连接,所述从属数据库与所述查询处理单元间具有数据连接;所述查询处理单元,用于将查询请求拆分为查询范围没有交集的查询操作指令,将拆分的查询操作指令发送至相同或不同的从属数据库进行所述查询操作,并反馈查询结果。
- 根据权利要求1所述的数据库系统,其特征在于,所述查询处理单元具体用于接受查询请求,根据所述查询请求对应的查询对象所对应的分布列值,将所述查询请求拆分为查询范围没有交集的查询操作指令,将拆分的查询操作指令发送至相同或不同的从属数据库进行所述查询操作,并反馈查询结果。
- 根据权利要求2所述的数据库系统,其特征在于,所述查询对象所对应的分布列值包括以下至少一项:预先保存的所述查询对象的分布列值;所述查询对象任意列的值;所述查询对象的第一列的值;所述查询请求所指定的列的值。
- 根据权利要求1所述的数据库系统,其特征在于,所述查询处理单元具体用于接受查询请求,根据所述查询请求对应的查询对象的记录的唯一键,将所述查询请求拆分为查询范围没有交集的查询操作指令,将拆分的查询操作指令发送至相同或不同的从属数据库进行所述查询操作,并反馈查询结果。
- 根据权利要求1所述的数据库系统,其特征在于,所述查询处理单元具体用于接受查询请求,根据所述查询请求对应的查询对象的数据页的编号,将所述查询请求拆分为查询范围没有交集的查询操作指令,将拆分的查询操作指令发送至相同或不同的从属数据库进行所述查询操作,并反馈查询结果。
- 根据权利要求1所述的数据库系统,其特征在于,所述查询处理单元还用于发送查询任务,接受其他查询处理单元发送的查询任务和查询操作的结果,执行所接受的查询任务所指定的数据库查询操作,整合所述查询操作的结果,将对所述从属数据库进行查询操作的结果或所述整合后的结果提供给查询任务所指定的接收者。
- 根据权利要求6所述的数据库系统,其特征在于,所述查询处理单元与所述从属数据库位于同一物理节点上。
- 根据权利要求1所述的数据库系统,其特征在于,所述查询处理单元,用于具 体用于将查询请求拆分为查询范围没有交集的查询操作指令,根据查询所涉及的数据的统计信息,动态决定参与查询的从属数据库的数目,将拆分的查询操作指令发送至所决定的从属数据库进行所述查询操作,并反馈查询结果。
- 根据权利要求1所述的数据库系统,其特征在于,所述查询处理单元,还用于将查询请求发送至相应的从属数据库。
- 一种查询数据库的方法,其特征在于,包括:获取对数据库的查询请求;将所述查询请求拆分为查询范围没有交集的对从属数据库的查询操作指令;执行所述对从属数据库的查询操作指令;向所述查询请求的请求者提供所述查询请求的结果。
- 根据权利要求10所述的查询数据库的方法,其特征在于,所述将所述查询请求拆分为查询范围没有交集的对从属数据库的查询操作指令包括:根据查询对象所对应的分布列值将所述查询请求拆分为查询范围没有交集的对从属数据库的查询操作指令。
- 根据权利要求11所述的查询数据库的方法,其特征在于,所述查询对象所对应的分布列值包括一下至少一项:预先保存的所述查询对象的分布列值;所述查询对象的任意列的值;所述查询对象的第一列的值;所述查询请求所指定的列的值。
- 根据权利要求10所述的查询数据库的方法,其特征在于,所述将所述查询请求拆分为查询范围没有交集的对从属数据库的查询操作指令包括:根据所述查询请求对应的查询对象的记录的唯一键,将所述查询请求拆分为查询范围没有交集的对从属数据库的查询操作指令。
- 根据权利要求10所述的查询数据库的方法,其特征在于,所述将所述查询请求拆分为查询范围没有交集的对从属数据库的查询操作指令包括:根据所述查询请求对应的查询对象的数据页的编号,将所述查询请求拆分为查询范围没有交集的对从属数据库的查询操作指令。
- 根据权利要求10所述的查询数据库的方法,其特征在于,所述向所述查询请求的请求者提供所述查询请求的结果的步骤前还包括:整合所述查询操作的结果。
- 根据权利要求10所述的查询数据库的方法,其特征在于,所述执行所述对从属数据库的查询操作指令具体为:根据查询所涉及的数据的统计信息,决定参与查询的从属数据库的数目,对所决定的从属数据库执行所述查询操作指令。
- 一种分配查询操作的方法,其特征在于,包括:获取对数据库的查询请求;将所述查询请求拆分为查询范围没有交集的对从属数据库的查询操作指令。
- 根据权利要求17所述的分配查询操作的方法,其特征在于,所述将所述查询请求拆分为查询范围没有交集的对从属数据库的查询操作指令包括:根据查询对象所对应的分布列值将所述查询请求拆分为查询范围没有交集的对从属数据库的查询操作指令。
- 根据权利要求18所述的分配查询操作的方法,其特征在于,所述查询对象所对应的分布列值包括以下至少一项:预先保存的所述查询对象的分布列值;所述查询对象任意列的值;所述查询对象的第一列的值;所述查询请求所指定的列的值。
- 根据权利要求17所述的分配查询操作的方法,其特征在于,所述将所述查询请求拆分为查询范围没有交集的对从属数据库的查询操作指令包括:根据所述查询请求对应的查询对象的记录的唯一键,将所述查询请求拆分为查询范围没有交集的对从属数据库的查询操作指令。
- 根据权利要求17所述的分配查询操作的方法,其特征在于,所述将所述查询请求拆分为查询范围没有交集的对从属数据库的查询操作指令包括:根据所述查询请求对应的查询对象的数据页的编号,将所述查询请求拆分为查询范围没有交集的对从属数据库的查询操作指令。
- 一种执行数据库查询的方法,其特征在于,包括:获取查询任务;执行所述查询任务所指定的查询操作;将所述查询操作的结果提供给所述查询任务指定的接收者。
- 一种进行数据库查询的方法,其特征在于,包括:获取查询任务;获取所述查询任务所指定的其他查询操作的查询结果;整合所述查询结果;将整合的结果提供给所述查询任务所指定的接收者。
- 根据权利要求23所述的进行数据库查询的方法,其特征在于,所述整合所述查询结果的步骤前还包括:执行所述查询任务所指定的查询操作获得查询结果。
- 一种查询数据库的装置,其特征在于,包括:获取单元,用于获取查询数据库的查询请求;拆分单元,用于将所述查询请求拆分为查询范围没有交集的对从属数据库的查询操作指令;执行单元,用于执行所述对从属数据库的查询操作指令;提供单元,用于向所述请求的请求者提供所述查询请求的查询结果。
- 一种分配查询操作的装置,其特征在于,包括:获取单元,用于获取对数据库的查询请求;拆分单元,用于将所述查询请求拆分为查询范围没有交集的对从属数据库的查询操作。
- 一种执行数据库查询的装置,其特征在于,包括:获取单元,用于获取查询任务;执行单元,用于执行所述查询任务所指定的查询操作指令;提供单元,用于将所述查询操作的结果提供给所述查询任务指定的接收者。
- 一种进行数据库查询的装置,其特征在于,包括:获取单元,用于获取查询任务;第二获取单元,用于获取所述查询任务所指定的其他查询操作的查询结果;整合单元,用于整合所述查询结果;提供单元,用于将整合的结果提供给所述查询任务所指定的接收者。
Priority Applications (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US16/954,286 US11789957B2 (en) | 2017-12-29 | 2018-12-25 | System, method, and apparatus for querying a database |
| EP18895044.8A EP3734476B1 (en) | 2017-12-29 | 2018-12-25 | Database system, and method and device for querying database |
| JP2020533622A JP7440007B2 (ja) | 2017-12-29 | 2018-12-25 | データベースをクエリするためのシステム、方法および装置 |
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201711482536.1A CN110019274B (zh) | 2017-12-29 | 2017-12-29 | 一种数据库系统以及查询数据库的方法和装置 |
| CN201711482536.1 | 2017-12-29 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2019128978A1 true WO2019128978A1 (zh) | 2019-07-04 |
Family
ID=67066574
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/CN2018/123437 Ceased WO2019128978A1 (zh) | 2017-12-29 | 2018-12-25 | 一种数据库系统以及查询数据库的方法和装置 |
Country Status (5)
| Country | Link |
|---|---|
| US (1) | US11789957B2 (zh) |
| EP (1) | EP3734476B1 (zh) |
| JP (1) | JP7440007B2 (zh) |
| CN (1) | CN110019274B (zh) |
| WO (1) | WO2019128978A1 (zh) |
Families Citing this family (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN111159106B (zh) * | 2019-12-30 | 2023-04-07 | 亚信科技(中国)有限公司 | 一种数据查询方法及装置 |
| US11568065B2 (en) * | 2021-01-15 | 2023-01-31 | Bank Of America Corporation | System for securing electronic data by aggregation of distributed electronic database entries |
| CN115048416B (zh) * | 2022-06-20 | 2025-02-11 | 中电科金仓(北京)科技股份有限公司 | 数据查询方法、装置和设备 |
| CN115374157B (zh) * | 2022-08-15 | 2026-03-31 | 北京达佳互联信息技术有限公司 | 数据查询方法、装置、电子设备以及存储介质 |
| US20260154252A1 (en) * | 2024-12-03 | 2026-06-04 | OpenInterX INC. | Ai memory processing method and apparatus, device, and ai memory processing system |
Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN101916280A (zh) * | 2010-08-17 | 2010-12-15 | 上海云数信息科技有限公司 | 并行计算系统及按查询内容进行负载均衡的方法 |
| CN106339432A (zh) * | 2016-08-19 | 2017-01-18 | 上海巨数信息科技有限公司 | 一种按查询内容进行负载均衡的系统及其方法 |
| CN106372177A (zh) * | 2016-08-30 | 2017-02-01 | 东华大学 | 支持混合数据类型的关联查询及模糊分组的查询扩展方法 |
Family Cites Families (44)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5694546A (en) | 1994-05-31 | 1997-12-02 | Reisman; Richard R. | System for automatic unattended electronic information transport between a server and a client by a vendor provided transport software with a manifest list |
| US7181438B1 (en) | 1999-07-21 | 2007-02-20 | Alberti Anemometer, Llc | Database access system |
| US6795819B2 (en) | 2000-08-04 | 2004-09-21 | Infoglide Corporation | System and method for building and maintaining a database |
| US6778977B1 (en) | 2001-04-19 | 2004-08-17 | Microsoft Corporation | Method and system for creating a database table index using multiple processors |
| CA2471940C (en) | 2001-12-28 | 2019-03-05 | Jeffrey James Jonas | Real time data warehousing |
| US8620937B2 (en) | 2002-12-27 | 2013-12-31 | International Business Machines Corporation | Real time data warehousing |
| US7403942B1 (en) | 2003-02-04 | 2008-07-22 | Seisint, Inc. | Method and system for processing data records |
| CA2425045C (en) * | 2003-04-08 | 2013-01-15 | Ibm Canada Limited - Ibm Canada Limitee | Method and system for executing a database query |
| US8200775B2 (en) | 2005-02-01 | 2012-06-12 | Newsilike Media Group, Inc | Enhanced syndication |
| US7490113B2 (en) | 2003-08-27 | 2009-02-10 | International Business Machines Corporation | Database log capture that publishes transactions to multiple targets to handle unavailable targets by separating the publishing of subscriptions and subsequently recombining the publishing |
| US8543566B2 (en) | 2003-09-23 | 2013-09-24 | Salesforce.Com, Inc. | System and methods of improving a multi-tenant database query using contextual knowledge about non-homogeneously distributed tenant data |
| US7707039B2 (en) | 2004-02-15 | 2010-04-27 | Exbiblio B.V. | Automatic modification of web pages |
| US7818349B2 (en) | 2004-02-21 | 2010-10-19 | Datallegro, Inc. | Ultra-shared-nothing parallel database |
| US7499917B2 (en) | 2005-01-28 | 2009-03-03 | International Business Machines Corporation | Processing cross-table non-Boolean term conditions in database queries |
| US7672930B2 (en) * | 2005-04-05 | 2010-03-02 | Wal-Mart Stores, Inc. | System and methods for facilitating a linear grid database with data organization by dimension |
| US7908242B1 (en) | 2005-04-11 | 2011-03-15 | Experian Information Solutions, Inc. | Systems and methods for optimizing database queries |
| US7831620B2 (en) * | 2006-08-31 | 2010-11-09 | International Business Machines Corporation | Managing execution of a query against a partitioned database |
| US8468244B2 (en) | 2007-01-05 | 2013-06-18 | Digital Doors, Inc. | Digital information infrastructure and method for security designated data and with granular data stores |
| WO2009004620A2 (en) * | 2007-07-03 | 2009-01-08 | Xeround Systems Ltd. | Method and system for data storage and management |
| US8489622B2 (en) | 2008-12-12 | 2013-07-16 | Sas Institute Inc. | Computer-implemented systems and methods for providing paginated search results from a database |
| US8078825B2 (en) | 2009-03-11 | 2011-12-13 | Oracle America, Inc. | Composite hash and list partitioning of database tables |
| US8880549B2 (en) * | 2009-11-09 | 2014-11-04 | International Business Machines Corporation | Concurrent database access by production and prototype applications |
| US8655867B2 (en) | 2010-05-13 | 2014-02-18 | Salesforce.Com, Inc. | Method and system for optimizing queries in a multi-tenant database environment |
| US9032017B1 (en) * | 2010-08-10 | 2015-05-12 | Scalarc Inc | Method and system for transparent read-write query routing when load balancing databases |
| US20120331010A1 (en) * | 2011-06-24 | 2012-12-27 | Douglass Adam Christie | Systems And Methods For Performing A Query On A Distributed Database |
| CN102254031A (zh) * | 2011-08-03 | 2011-11-23 | 无锡浙潮科技有限公司 | 基于批处理请求的Microsoft SQL Server数据库集群 |
| KR102031392B1 (ko) | 2011-11-15 | 2019-11-08 | 아브 이니티오 테크놀로지 엘엘시 | 후보 쿼리들에 기반한 데이터 클러스터링 |
| US9110947B1 (en) * | 2011-12-30 | 2015-08-18 | Teradata Us, Inc. | Column-oriented task execution in a row-partitioned database system |
| JP5800720B2 (ja) * | 2012-01-24 | 2015-10-28 | 三菱電機株式会社 | 情報処理装置及び情報処理方法及びプログラム |
| US8892599B2 (en) * | 2012-10-24 | 2014-11-18 | Marklogic Corporation | Apparatus and method for securing preliminary information about database fragments for utilization in mapreduce processing |
| US9928287B2 (en) * | 2013-02-24 | 2018-03-27 | Technion Research & Development Foundation Limited | Processing query to graph database |
| CN103123652A (zh) * | 2013-03-14 | 2013-05-29 | 曙光信息产业(北京)有限公司 | 数据查询方法和集群数据库系统 |
| US9235618B2 (en) * | 2013-04-06 | 2016-01-12 | Citrix Systems, Inc. | Systems and methods for caching of SQL responses using integrated caching |
| JP6107429B2 (ja) * | 2013-05-30 | 2017-04-05 | 富士通株式会社 | データベースシステム、検索方法およびプログラム |
| US9063710B2 (en) | 2013-06-21 | 2015-06-23 | Sap Se | Parallel programming of in memory database utilizing extensible skeletons |
| US9720992B2 (en) * | 2013-11-22 | 2017-08-01 | Sap Se | DML replication with logical log shipping |
| US10394818B2 (en) | 2014-09-26 | 2019-08-27 | Oracle International Corporation | System and method for dynamic database split generation in a massively parallel or distributed database environment |
| US10496642B2 (en) * | 2014-10-03 | 2019-12-03 | The Regents Of The University Of Michigan | Querying input data |
| EP3076308B1 (en) * | 2015-03-31 | 2017-11-29 | Sap Se | Telecommunication method for handling a database query in a telecommunication system |
| CN106326309B (zh) * | 2015-07-03 | 2020-02-21 | 阿里巴巴集团控股有限公司 | 一种数据查询方法和装置 |
| US10642833B2 (en) * | 2015-08-11 | 2020-05-05 | Sybase, Inc. | Accelerating database queries using composite union enumeration |
| US10331634B2 (en) * | 2015-10-07 | 2019-06-25 | Oracle International Corporation | Request routing and query processing in a sharded database |
| US10678792B2 (en) * | 2015-10-23 | 2020-06-09 | Oracle International Corporation | Parallel execution of queries with a recursive clause |
| CN107451154B (zh) * | 2016-05-31 | 2021-03-30 | 华为技术有限公司 | 一种数据表的处理方法、装置及系统 |
-
2017
- 2017-12-29 CN CN201711482536.1A patent/CN110019274B/zh active Active
-
2018
- 2018-12-25 WO PCT/CN2018/123437 patent/WO2019128978A1/zh not_active Ceased
- 2018-12-25 JP JP2020533622A patent/JP7440007B2/ja active Active
- 2018-12-25 EP EP18895044.8A patent/EP3734476B1/en active Active
- 2018-12-25 US US16/954,286 patent/US11789957B2/en active Active
Patent Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN101916280A (zh) * | 2010-08-17 | 2010-12-15 | 上海云数信息科技有限公司 | 并行计算系统及按查询内容进行负载均衡的方法 |
| CN106339432A (zh) * | 2016-08-19 | 2017-01-18 | 上海巨数信息科技有限公司 | 一种按查询内容进行负载均衡的系统及其方法 |
| CN106372177A (zh) * | 2016-08-30 | 2017-02-01 | 东华大学 | 支持混合数据类型的关联查询及模糊分组的查询扩展方法 |
Non-Patent Citations (1)
| Title |
|---|
| See also references of EP3734476A4 * |
Also Published As
| Publication number | Publication date |
|---|---|
| JP2021508867A (ja) | 2021-03-11 |
| CN110019274B (zh) | 2023-09-26 |
| CN110019274A (zh) | 2019-07-16 |
| EP3734476A4 (en) | 2021-09-15 |
| JP7440007B2 (ja) | 2024-02-28 |
| US11789957B2 (en) | 2023-10-17 |
| EP3734476B1 (en) | 2026-02-18 |
| EP3734476A1 (en) | 2020-11-04 |
| US20210097075A1 (en) | 2021-04-01 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US9152669B2 (en) | System and method for distributed SQL join processing in shared-nothing relational database clusters using stationary tables | |
| CN110019274B (zh) | 一种数据库系统以及查询数据库的方法和装置 | |
| CN109726250B (zh) | 数据存储系统、元数据库同步及数据跨域计算方法 | |
| CN102567495B (zh) | 一种海量信息存储系统及实现方法 | |
| US20130031229A1 (en) | Traffic reduction method for distributed key-value store | |
| CN103078941A (zh) | 一种分布式计算系统的任务调度方法及系统 | |
| CN110321214A (zh) | 一种数据查询方法、装置及设备 | |
| CN115374157B (zh) | 数据查询方法、装置、电子设备以及存储介质 | |
| JP2013186890A (ja) | データベースミドルウェアを用いたデータ管理システム及びその方法 | |
| CN103942330B (zh) | 一种大数据的处理方法、系统 | |
| CN106708917A (zh) | 一种数据处理方法、装置以及olap系统 | |
| CN116414801A (zh) | 数据迁移方法、装置、计算机设备和存储介质 | |
| CN111400301B (zh) | 一种数据查询方法、装置及设备 | |
| US11947534B2 (en) | Connection pools for parallel processing applications accessing distributed databases | |
| CN104239529A (zh) | 防止Hive数据倾斜的方法和装置 | |
| Mühlbauer et al. | Scyper: A hybrid oltp&olap distributed main memory database system for scalable real-time analytics | |
| CN110837499B (zh) | 数据访问处理方法、装置、电子设备和存储介质 | |
| CN114443770B (zh) | 数据同步方法、装置、介质及电子设备 | |
| CN108804580A (zh) | 一种在联邦型rdf数据库中查询关键字的方法 | |
| CN112527872A (zh) | 数据查询方法及装置、存储介质及电子设备 | |
| WO2024192872A1 (zh) | 一种集群数据库负载均衡方法及装置 | |
| WO2016092604A1 (ja) | データ処理システムおよびデータアクセス方法 | |
| CN105930354A (zh) | 存储模型转换方法和装置 | |
| WO2016206100A1 (zh) | 一种数据表的分区管理方法及装置 | |
| CN112541038A (zh) | 时序数据管理方法、系统、计算设备及存储介质 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 18895044 Country of ref document: EP Kind code of ref document: A1 |
|
| ENP | Entry into the national phase |
Ref document number: 2020533622 Country of ref document: JP Kind code of ref document: A |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |
|
| ENP | Entry into the national phase |
Ref document number: 2018895044 Country of ref document: EP Effective date: 20200729 |
|
| WWG | Wipo information: grant in national office |
Ref document number: 2018895044 Country of ref document: EP |