WO2017201970A1 - Système de bases de données à base de ramifications et son procédé de routage - Google Patents

Système de bases de données à base de ramifications et son procédé de routage Download PDF

Info

Publication number
WO2017201970A1
WO2017201970A1 PCT/CN2016/104282 CN2016104282W WO2017201970A1 WO 2017201970 A1 WO2017201970 A1 WO 2017201970A1 CN 2016104282 W CN2016104282 W CN 2016104282W WO 2017201970 A1 WO2017201970 A1 WO 2017201970A1
Authority
WO
WIPO (PCT)
Prior art keywords
database
operation request
sub
query condition
target fragment
Prior art date
Application number
PCT/CN2016/104282
Other languages
English (en)
Chinese (zh)
Inventor
李秋伟
Original Assignee
乐视控股(北京)有限公司
乐视电子商务(北京)有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 乐视控股(北京)有限公司, 乐视电子商务(北京)有限公司 filed Critical 乐视控股(北京)有限公司
Publication of WO2017201970A1 publication Critical patent/WO2017201970A1/fr

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor

Definitions

  • the patent application relates to the field of database technology, and in particular relates to a database database system and a routing method thereof.
  • the traditional sub-division scheme is generally to set a fragmentation field in a database table, and configure the fragmentation strategy of the sub-library. When used, the calculation is based on the value of the application and the fragmentation strategy.
  • the fragmentation node ie, the target fragmentation database
  • the primary key field is the conditional field that is frequently operated by this database table. When the primary key field is used for querying, updating, etc., the database system will set the value of the primary key field.
  • the key value pair is stored in the local cache of the database server, and the corresponding target fragment database can be directly obtained from the local cache when used next time.
  • the routing method of the traditional sub-database database is described, which includes the following steps:
  • Step 101 Parse the query condition from the request from the client.
  • the parsed query condition includes a fragmentation field and/or a primary key field.
  • Step 102 Determine whether to hit the target fragment database in the local cache according to the parsed query condition. If the target is hit in the local cache, step 105 is performed; otherwise, if the corresponding data is not cached in the local cache (ie, the correspondence between the query condition and the target fragment database), step 103 is performed.
  • Step 103 Calculate the target fragment database according to the parsed query condition.
  • the target fragment database may be calculated according to the incoming value of the fragmentation field and the fragmentation strategy of the database database system, or may be executed in the entire database according to the primary key field, and the target fragmentation database is obtained.
  • Step 104 Save the correspondence between the target fragment database and the request to the local cache, so that the target fragment database can be directly hit in the local cache when the next operation request is performed.
  • Step 105 Send an operation request to the target shard database.
  • a clustering method is generally used to deploy a sub-database, and then a sub-database database system includes a plurality of sub-library servers, and each sub-library The server is respectively configured to calculate the target fragment database according to the query condition parsed in the operation request sent from the client. If the system's multiple sub-library servers are highly available, that is, each sub-library server is performing the routing task of the target fragmentation database at the same time, there will inevitably be multiple calculations or execution problems of the target fragmentation database, resulting in valuable CPU. Waste, reducing the effective utilization of hardware resources.
  • the purpose of some embodiments of the present invention is to provide a database database system and a routing method thereof, which can improve the processing efficiency of the database database system by reducing the repeated calculation of the target fragment database, thereby improving the system hardware usage efficiency.
  • an embodiment of the present invention provides a routing method of a database database system, where
  • the sub-database database system includes: L fragment databases and N sub-database servers, wherein the L and N are natural numbers greater than 1, and the method includes the following steps: the sub-database servers receive the client-side When the operation request is performed, the query condition carried by the operation request is obtained; when the target fragment database is to be calculated, the fragment database corresponding to the operation request is calculated according to the query condition; wherein each of the sub-database servers is stored Corresponding relationship between the query condition and the target fragment database, and synchronously updating the correspondence to at least one of the database servers in the database database that does not process the operation request; sending the operation request to the target Fragment database.
  • the embodiment of the present invention provides a sub-database database system, including: L fragment databases and N sub-database servers, wherein the L and N are natural numbers greater than 1;
  • the sub-library server includes parsing a module, a calculation module, a saving module, a synchronization module, and a sending module;
  • the parsing module is configured to parse the query condition carried by the operation request when the sub-database server receives an operation request from the client;
  • the saving module is configured to use the query condition and the target calculated by the calculation module
  • Corresponding relationship of the fragmentation database is saved to the local cache of the sub-database server;
  • the synchronization module is configured to synchronously update the correspondence relationship to at least one sub-database server in the sub-database database system that does not process the operation request;
  • the sending module is configured to send the operation request to the target fragment database.
  • an embodiment of the present invention provides a computer program, which is applied to a sub-database database system, where the computer program is configured to: when each sub-library server receives an operation request from a client, parsing the The query condition carried by the operation request; when the target fragment database needs to be calculated, the target fragment database corresponding to the operation request is calculated according to the query condition; and each of the database servers saves the query condition and the target fragment database Corresponding the relationship, and synchronously updating the corresponding relationship to at least one of the sub-database database systems that does not process the operation request; and sending the operation request to the target fragment database.
  • an embodiment of the present invention provides a non-volatile computer storage medium, where Computer executable instructions, the computer executable instructions being applied to a library database system, the computer executable instructions being configured to: when each of the database servers receives an operation request from a client, parse the operation request to carry a query condition; when the target fragment database is to be calculated, the target fragment database corresponding to the operation request is calculated according to the query condition; and each of the database servers stores a correspondence between the query condition and the target fragment database. And updating the corresponding relationship to at least one of the sub-database database systems that does not process the operation request; and sending the operation request to the target fragment database.
  • an embodiment of the present invention provides a database server system, including: L fragment databases and N database servers, wherein the L and N are natural numbers greater than 1;
  • the library server includes: a first communication component, at least one first processor communicatively coupled to the first communication component; and a first memory communicatively coupled to the at least one first processor; wherein the first memory is a first instruction executed by the at least one first processor, the first instruction being executed by the at least one first processor to enable the at least one first processor to: pass the first communication
  • the component receives the operation request from the client, the query obtains the query condition carried by the operation request; when the target fragment database needs to be calculated, the target fragment database corresponding to the operation request is calculated according to the query condition; Querying a correspondence between the condition and the target fragmentation database, and transmitting the correspondence by the first communication component to synchronously update the correspondence to At least one sub-library server that does not process the operation request in the sub-database database system in which the library server is located; the operation request is sent by
  • the sub-database database system and the routing method thereof provided by the embodiments of the present invention are provided according to requirements
  • the operation request of the client is calculated and processed to be routed to the target shard database, and the corresponding relationship between the calculated operation request and the target shard database is locally saved, and simultaneously updated to at least one unprocessed operation in the database system.
  • the requested sub-library server reduces the double counting of the same operation request by means of data synchronization between the plurality of sub-database servers in the sub-database database system, which helps to improve the processing efficiency of the sub-database database system.
  • the corresponding relationship is synchronously updated to the at least one of the sub-database servers in the sub-database database system that does not process the operation request, and the corresponding relationship is synchronously updated to the sub-database database system. All sub-library servers for this operation request are not processed. Thereby the system has higher operating efficiency.
  • updating the corresponding relationship to the at least one of the sub-databases in the sub-database database system that does not process the operation request specifically: the sub-library server synchronously updates the corresponding relationship to the centralized a cache server; the centralized cache server synchronously updates the updated correspondence to at least one of the sub-library database systems that does not process the operation request.
  • Data update relaying through the centralized cache server is beneficial to reduce the burden on each database server, and on the other hand, it is beneficial to save the calculation results for a long time.
  • the centralized cache server synchronously updates the updated correspondence to at least one of the sub-database database systems that does not process the operation request, and specifically includes: the centralized cache The server issues an update message about the corresponding relationship; at least one of the database servers in the database database that has not processed the operation request performs synchronous update when listening to the update message issued by the centralized cache server. This allows data updates between the various library servers to be quickly synchronized.
  • FIG. 1 is a flow chart of a routing method of a database system according to the prior art
  • FIG. 2 is a flow chart of a routing method of a database database system according to an embodiment of the present invention
  • FIG. 3 is a flow chart of a routing method of a binary database system according to an embodiment of the present invention.
  • FIG. 4 is a schematic structural diagram of a three-part database system according to an embodiment of the present invention.
  • FIG. 5 is a schematic structural diagram of each of the sub-database servers of the three-part database system according to an embodiment of the present invention.
  • FIG. 6 is a schematic structural diagram of a four-base database system according to an embodiment of the present invention.
  • FIG. 7 is a schematic structural diagram of a four-branch server according to an embodiment of the present invention.
  • FIG. 8 is a schematic structural diagram of a five-pack library server according to an embodiment of the present invention.
  • FIG. 9 is a block diagram showing the structure of a five-slice database according to an embodiment of the present invention.
  • Embodiment 1 of the present invention relates to a routing method of a database database system.
  • the routing method of the database database system can be applied to applications of e-commerce, finance, telecommunications, and the like.
  • the sub-database database system includes: L fragment databases and N branch servers, and L and N are natural numbers greater than 1.
  • the N sub-database servers adopt the cluster deployment mode to route the target fragmentation database to the received operation request.
  • the routing method of the database database system includes the following steps:
  • Step 201 When receiving the operation request from the client, each of the database servers parses the query condition carried by the operation request.
  • the operation request may carry an operation value for indicating an operation, a query condition for routing the fragmentation database, and a value corresponding to the query condition, etc.
  • the operational request may carry an operation value for indicating an operation, a query condition for routing the fragmentation database, and a value corresponding to the query condition, etc.
  • the operational request may carry an operation value for indicating an operation, a query condition for routing the fragmentation database, and a value corresponding to the query condition, etc.
  • Step 202 Locating the target fragment database in the local cache of the branch server according to the query condition.
  • Step 203 Determine whether the target fragment database is hit in the local cache.
  • the local cache of the database server for example, a key value pair in which the value of the primary key field and the corresponding relationship of the fragment are stored, when the value passed in is the primary key value and the corresponding target fragment database is available, Hit the target fragment database corresponding to the operation request in the local cache.
  • step 204 if the target fragment database is not hit in the local cache of the database server according to the query condition, step 204 is performed; if the target fragment database is hit in the local cache of the database server according to the query condition, step 209 is performed. .
  • Step 204 Determine whether the query condition includes a primary key field. If the query condition includes the primary key field, step 206 is performed. In this embodiment, if the query condition does not include the primary key field, and the default query condition includes the segmentation route, step 205 is performed.
  • Step 205 Calculate the target fragment database according to the field value of the fragmentation route and the fragmentation policy supported by the database server.
  • Step 206 Calculate a target fragment database corresponding to the query condition according to the input value of the primary key field.
  • Step 207 Each sub-database server saves the correspondence between the query condition and the fragment database.
  • each of the database servers saves the correspondence between the query condition and the target fragment database to the local cache. That is, the correspondence between the query condition and the target fragment database is saved according to the calculation result of step 205 or step 206.
  • Step 208 Synchronously update the correspondence to at least one of the sub-database servers in the sub-database database system that does not process the operation request.
  • the correspondence is synchronously updated to all the sub-database servers in the sub-database database system that have not processed the operation request.
  • the correspondence is updated synchronously to the L-1 database servers that have not processed the operation request.
  • the more sub-database servers the stronger the routing capability of the database system and the faster the response.
  • the number of repeated calculations when the system processes the same request can be reduced, which is equivalent to the synchronization to improve other sub-libraries.
  • the processing speed of the server when processing the same request thereby improving the processing speed of the system, and effectively saving valuable CPU resources and increasing the utilization rate of hardware resources in the case of high concurrent access.
  • Step 209 Send the operation request to the target shard database. That is, according to the operation request, the corresponding operations of adding, deleting, checking, changing, etc. are performed in the corresponding target fragment database (ie, a database in which the data tables are actually stored in the L fragment databases).
  • the corresponding target fragment database ie, a database in which the data tables are actually stored in the L fragment databases.
  • the client request may be forwarded by the load balancer to the branch server, so that the processing tasks of each branch server are better coordinated in a high concurrent scenario.
  • the routing method of the database database system further includes the following steps: dynamically cleaning the local cache of the database server according to the frequency of use of the updated correspondence in the database server. Due to the limited storage capacity of the local cache of each sub-database server, and the local cache of a sub-database server is also synchronized with the calculation results of other sub-library servers, the amount of data stored in the sub-library server will increase rapidly, when the data in the local cache is cached. When the data is accumulated to a certain extent, the update cannot be synchronized. Therefore, the data in the local cache needs to be cleaned up in time. In this embodiment, the data is cleaned according to the frequency of use of the data in the local cache, and other local caches are known to those skilled in the art. Cleanup strategy, no longer repeat here.
  • the calculation is performed according to the query condition parsed by the operation request, thereby obtaining the target fragment database corresponding to the query condition.
  • the calculation result can be locally cached, but also the calculation result can be synchronously updated to other sub-database servers, so that in the case of high concurrency, the same operation request can be performed once, which greatly reduces the amount of repetitive calculation.
  • the task volume of each sub-database server is reduced, thereby facilitating the processing efficiency of the sub-database database system.
  • Embodiment 2 of the present invention relates to a routing method of a database database system.
  • the second embodiment is substantially the same as the first embodiment.
  • the main difference is that in the first embodiment, the synchronization between the query condition and the target server is directly updated between the database servers.
  • the usage is centralized.
  • the cache server updates the correspondence between the request and the fragment database to other sub-library servers.
  • steps 301 to 307 are the same as steps 201 to 207 in the first embodiment, and step 309 is the same as step 209 in the second embodiment.
  • step 308 in the step of synchronously updating the correspondence to at least one of the sub-database servers in the sub-database system that does not process the operation request, the following sub-steps are included:
  • Sub-step 3080 Each of the library servers synchronizes the correspondence to the centralized cache server.
  • Sub-step 3081 Synchronously update the correspondence of the centralized cache server update to at least one of the sub-library database systems that does not process the operation request.
  • each of the library servers may save the correspondence to the centralized cache server in real time, and in sub-step 3081, the centralized cache server issues an update message regarding the corresponding relationship, which is not processed in the database system. All the sub-library servers of the operation request synchronize updates when they listen to the update message issued by the centralized cache server.
  • the centralized cache server is added in this embodiment, the newly added correspondence in the local cache of each branch server can be conveniently updated to the concentrator cache server, and the centralized cache server is responsible for synchronizing the correspondence to Other sub-library servers that have not processed the operation request, thereby freeing each sub-library server from the burden of data synchronization between other sub-library servers in real time, reducing the sub-library services The complexity of server data synchronization.
  • the data (the corresponding relationship of the storage) in the centralized cache server is increased, which results in a large amount of disk space. Therefore, in this embodiment, the centralized The corresponding relationship saved by the cache server is cleaned up.
  • the following preset conditions may be adopted, such as: reaching a preset cleaning period or reaching a preset amount of saved data.
  • the preset cleaning setting can be set to 1 month, so that the data in the centralized cache server is cleaned every month, when the preset condition is the preset save.
  • the preset amount of data is, for example, 500 GB, so that the amount of data in the centralized cache server is prevented from being excessive.
  • the centralized cache server saves the calculation result of each sub-database server, and then releases the update message to other sub-library servers, and the other sub-library servers can update the local cache when they are relatively idle, thereby making each Work can be done more harmoniously between the library servers.
  • the correspondence between the fragment database and the fragmentation field in a certain sub-database server may be changed when the entire sub-database database system performs sub-database and sub-table expansion. You can synchronize changes in one sub-library server to other sub-library servers through a centralized caching server.
  • a third embodiment of the present invention relates to a sub-database database system, comprising: L fragment databases 1 and N branch servers 2, wherein L and N are natural numbers greater than one.
  • the branch server 2 includes a parsing module 20, a computing module 21, a saving module 22, a synchronizing module 23, a transmitting module 24, and a local cache 25.
  • the parsing module is configured to parse the query condition carried by the operation request when the sub-database server receives the operation request from the client.
  • the calculation module is configured to calculate a target fragment database, in this embodiment, the calculation module is configured to calculate a target corresponding to the operation request according to the query condition when the database server does not hit the target fragment database in the local cache. Fragment database.
  • the saving module is configured to save the correspondence between the query condition and the target fragment database calculated by the calculation module to the local cache 25 of the branch server.
  • the synchronization module is configured to synchronously update the correspondence to at least one of the sub-library database systems that does not process the operation request. In this embodiment, the synchronization module is configured to synchronously update the corresponding relationship to all the sub-database servers in the sub-database database system that have not processed the operation request.
  • the sending module is used to send an operation request to the target shard database.
  • the embodiment is a system embodiment corresponding to the first embodiment, and the embodiment can be implemented in cooperation with the first embodiment.
  • the related technical details mentioned in the first embodiment are still valid in this embodiment, and are not described herein again in order to reduce the repetition.
  • the related technical details mentioned in this embodiment can also be applied in the first embodiment.
  • each module involved in this embodiment is a logic module.
  • a logical unit may be a physical unit, a part of a physical unit, or multiple physical entities. A combination of units is implemented.
  • the unit which is not closely related to solving the technical problem proposed by the present invention is not introduced in this embodiment, but this does not mean that there are no other units in this embodiment.
  • Embodiment 4 of the present invention relates to a sub-database database system.
  • the fourth embodiment is substantially the same as the third embodiment.
  • the database servers directly synchronize with each other.
  • the database database system further includes Centralized cache server 3.
  • the synchronization module of each sub-database server 2 is configured to synchronously update the correspondence between the query condition and the target fragmentation database 1 to the centralized cache server 3, and synchronously update the corresponding relationship of the centralized cache server 3 update to the sub-database database system. All sub-library servers 2 for this operation request are not processed.
  • the embodiment can be matched with the second embodiment.
  • the technical details mentioned in the second embodiment are still effective in this embodiment, and the technical effects that can be achieved in the second embodiment can also be implemented in the embodiment. To reduce the repetition, details are not described herein again.
  • the related technical details mentioned in this embodiment can also be applied in the second embodiment.
  • the branch server may include: a processor, a memory, and a transceiver, and the memory and the transceiver are both connected to the processor.
  • the processor parses the query condition from the operation request, and accesses the memory to determine whether the target fragment database corresponding to the query condition is stored in the memory, and is not checked in the memory.
  • the processor calculates the target fragment database according to the query condition. For example, the processor calculates the target fragment according to the incoming value of the fragment field in the query condition and the fragmentation strategy.
  • the database or the target fragment database is calculated according to the incoming value of the primary key field in the query condition, and the processor sends the operation request to the corresponding target fragment database through the transceiver.
  • the processor saves the correspondence between the query condition and the calculated target fragment database into the memory, and sends the correspondence to the centralized cache server through the transceiver, and the processor sends the correspondence to the centralized cache. server.
  • the centralized cache server stores the corresponding relationship and issues a message about the storage event to the other database server in the database database system that does not process the operation request, and the database server that listens to the message storing the event is centralized.
  • the corresponding relationship is obtained in the cache server, and the corresponding relationship is stored in the local storage.
  • a fifth embodiment of the present invention relates to a library server system, comprising: L fragment databases and N database servers, wherein L and N are natural numbers greater than one.
  • the branch server 800 includes: a first communication component 801, at least one first processor 802 communicatively coupled to the first communication component 801; and a first communication connection with the at least one first processor 801 Memory 803.
  • One processor 802 is taken as an example in FIG.
  • the processor 802, the memory 803, and the first communication component 801 may be connected by a bus or other means, and the bus connection is taken as an example in FIG.
  • the first memory 803 stores a first instruction that can be executed by one less first processor 802, and the first instruction is executed by the at least one first processor 802, so that the at least one first processor 802 can: pass the
  • the communication component 801 receives the operation request from the client, it parses the query condition carried by the operation request.
  • the target fragment database needs to be calculated, the target fragment database corresponding to the operation request is calculated according to the query condition.
  • the corresponding relationship between the query condition and the target fragment database is saved, and the corresponding relationship is sent by the first communication component 801 to synchronously update the correspondence relationship, and at least one of the sub-database database systems in which the sub-database server is located does not process the operation request. .
  • An operation request is sent by the first communication component to process the operation request by the target shard database.
  • the first memory 803 is used as a non-volatile computer readable storage medium, and can be used for storing a non-volatile software program, a non-volatile computer executable program, and a module, as in the routing method in the embodiment of the present invention.
  • Corresponding program instructions/modules for example, parsing module 20, computing module 21, saving module 22, synchronization module 23, and transmitting module 24 shown in FIG. 5.
  • the processor 802 executes various functional applications and data processing of the library server by running the non-volatile software programs, instructions, and modules stored in the first memory 803, that is, the processing method of the routing method of the foregoing method embodiment.
  • the first memory 803 may include a storage program area and an storage data area, wherein the storage program area may store an operating system, an application required for at least one function; the storage data area may store data created by a processing method for the routing method, and the like.
  • the first memory 803 may include a high speed random access memory, and may also include a nonvolatile memory such as at least one magnetic disk storage device, flash memory device, or other nonvolatile solid state storage device.
  • the first communication component includes a high speed local area network.
  • the one or more modules are stored in the first memory 803, and when executed by the one or more first processors 802, perform a processing method of the routing method in any of the above method embodiments.
  • the fragment database 900 includes: a second communication component 901, at least one second processor 903 communicatively coupled to the second communication component 902; and, with at least one second processor 902 is communicatively coupled to the second memory 903.
  • the second memory 903 stores a second instruction executable by the at least one second processor 902, and the second instruction is executed by the at least one second processor 902 to enable the at least one second processor 902 to: pass the second
  • the communication component receives and processes the operation request.
  • the one or more second processors 902 and the second memory 903 are exemplified by a second processor 902 in FIG.
  • the second processor 902, the second memory 903, and the second communication component 901 may be connected by a bus or other means, as exemplified by a bus connection in FIG.
  • the above product can perform the method provided by the embodiment of the present invention, and has the corresponding functional modules and beneficial effects of the execution method.
  • the above product can perform the method provided by the embodiment of the present invention, and has the corresponding functional modules and beneficial effects of the execution method.
  • the query condition parsed according to the operation request is calculated, thereby obtaining the target fragment database corresponding to the query condition.
  • the calculation result not only can the calculation result be locally cached, but also the calculation result can be synchronously updated to other sub-database servers, so that in the case of high concurrency, the same operation request can be performed once, which greatly reduces the amount of repetitive calculation.
  • the task volume of each sub-database server is reduced, thereby facilitating the processing efficiency of the sub-database database system.
  • a ninth embodiment of the present invention is directed to a nonvolatile computer storage medium storing computer executable instructions that can execute the processing method of the routing method in any of the above method embodiments.
  • the calculation result can be locally cached, but also the calculation result can be synchronously updated to other sub-database servers, so that in the case of high concurrency, the same operation request can be performed once, which greatly reduces the amount of repetitive calculation.
  • the task volume of each sub-database server is reduced, thereby facilitating the processing efficiency of the sub-database database system.
  • a tenth embodiment of the present invention relates to a computer program capable of executing the routing method in any of the above method embodiments.
  • This embodiment can not only locally cache the calculation result, but also update the calculation result to other sub-library servers synchronously, so that in the case of high concurrency, the same operation request is performed once.
  • the calculation can be done, which greatly reduces the amount of repetitive calculation, thereby reducing the task amount of each sub-database server, thereby facilitating the processing efficiency of the sub-database database system.
  • the device embodiments described above are merely illustrative, wherein the units described as separate components may or may not be physically separate, and the components displayed as units may or may not be physical units, ie may be located A place, or it can be distributed to multiple network units. Some or all of the modules may be selected according to actual needs to achieve the purpose of the solution of the embodiment.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

L'invention concerne un système de bases de données à base de ramifications et son procédé de routage. Le système de bases de données à base de ramifications comprend L bases de données de fragmentation et N serveurs à base de ramifications, L et N étant tous deux des nombres naturels supérieurs à 1. Le procédé de routage pour le système de bases de données à base de ramifications consiste : lorsqu'une requête d'opération est reçue d'un client, en ce que divers serveurs à base de ramifications analysent et obtiennent une condition de demande portée par la requête d'opération (201, 301) ; lorsqu'une base de données de fragmentation cible doit être calculée, à positionner, en fonction de la condition de demande, la base de données cible dans un cache local (202, 302) ; à sauvegarder dans divers serveurs à base de ramification la corrélation entre la condition de demande et la base de données de fragmentation cible (207, 307), et à procéder à une actualisation synchrone de la corrélation vers au moins un serveur à base de ramifications, qui ne traite pas la requête d'opération, dans le système de bases de données à base de ramifications (208) ; et à envoyer la requête d'opération à la base de données de fragmentation cible (209). Le système de bases de données à base de ramifications et son procédé de routage résolvent le problème de calculs multiples de routage de fragmentation en réduisant le calcul répétitif du routage de fragmentation, améliorant ainsi l'efficacité de traitement du système de bases de données à base de ramifications.
PCT/CN2016/104282 2016-05-21 2016-11-01 Système de bases de données à base de ramifications et son procédé de routage WO2017201970A1 (fr)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201610342340.1A CN106055587A (zh) 2016-05-21 2016-05-21 一种分库数据库系统及其路由方法
CN201610342340.1 2016-05-21

Publications (1)

Publication Number Publication Date
WO2017201970A1 true WO2017201970A1 (fr) 2017-11-30

Family

ID=57176512

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2016/104282 WO2017201970A1 (fr) 2016-05-21 2016-11-01 Système de bases de données à base de ramifications et son procédé de routage

Country Status (2)

Country Link
CN (1) CN106055587A (fr)
WO (1) WO2017201970A1 (fr)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111309810A (zh) * 2020-02-20 2020-06-19 苏宁云计算有限公司 基于小样本key值的分库分表方法及系统
CN112711572A (zh) * 2019-10-25 2021-04-27 北京沃东天骏信息技术有限公司 适用于分库分表的在线扩容方法和装置
CN113204535A (zh) * 2021-05-20 2021-08-03 中国工商银行股份有限公司 路由方法及装置、电子设备和计算机可读存储介质
CN113486023A (zh) * 2021-07-27 2021-10-08 中国银行股份有限公司 数据库分库分表的方法及装置
CN113590609A (zh) * 2021-06-22 2021-11-02 北京旷视科技有限公司 数据分库方法及装置、存储介质及电子设备
CN113645304A (zh) * 2021-08-13 2021-11-12 恒生电子股份有限公司 数据服务处理方法及相关设备
CN113760968A (zh) * 2020-09-24 2021-12-07 北京沃东天骏信息技术有限公司 数据查询方法、装置、系统、电子设备及存储介质
CN113760978A (zh) * 2020-10-27 2021-12-07 北京沃东天骏信息技术有限公司 一种数据容灾方法和装置

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106055587A (zh) * 2016-05-21 2016-10-26 乐视控股(北京)有限公司 一种分库数据库系统及其路由方法
CN108874837B (zh) * 2017-05-16 2021-09-03 北京京东尚科信息技术有限公司 数据库分库方法、装置、中间件及存储介质和电子设备
CN109254880B (zh) * 2017-07-12 2022-07-19 苏宁易购集团股份有限公司 一种处理数据库宕机的方法及装置
CN107729370A (zh) * 2017-09-12 2018-02-23 上海艾融软件股份有限公司 微服务多数据源连接实现方法
CN107943832A (zh) * 2017-10-23 2018-04-20 中国联合网络通信集团有限公司 业务处理方法及装置
CN110851474A (zh) * 2018-07-26 2020-02-28 深圳市优必选科技有限公司 数据查询方法、数据库中间件、数据查询设备及存储介质
CN109460409A (zh) * 2018-11-01 2019-03-12 泰康保险集团股份有限公司 数据访问方法和装置
CN109669951B (zh) * 2018-11-09 2020-12-04 金蝶软件(中国)有限公司 对象查询方法、装置、计算机设备和存储介质
CN110324403A (zh) * 2019-05-23 2019-10-11 平安科技(深圳)有限公司 动态分库路由方法、装置、服务器及存储介质
CN110457342B (zh) * 2019-07-02 2023-01-06 网联清算有限公司 交易处理方法及装置
CN111131040A (zh) * 2019-11-29 2020-05-08 京东数字科技控股有限公司 路由的配置方法、装置及系统、存储介质、电子装置
CN110955664A (zh) * 2019-12-03 2020-04-03 中国建设银行股份有限公司 分库分表消息路由方法及装置
CN111597160A (zh) * 2020-04-21 2020-08-28 中国人民财产保险股份有限公司 分布式数据库系统、分布式数据处理方法和装置
CN111782549B (zh) * 2020-07-31 2024-06-21 北京字节跳动网络技术有限公司 测试方法、装置和电子设备
CN112231501A (zh) * 2020-10-20 2021-01-15 浙江大华技术股份有限公司 人像库的数据存储、检索方法及装置、存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010037065A2 (fr) * 2008-09-26 2010-04-01 Cmi Corporate Marketing D/B/A Prelude Innovations, Inc. Duplication de base de données relationnelle extensible
US7702614B1 (en) * 2007-03-30 2010-04-20 Google Inc. Index updating using segment swapping
CN103207919A (zh) * 2013-04-26 2013-07-17 北京亿赞普网络技术有限公司 一种MongoDB集群快速查询计算的方法及装置
CN103853718A (zh) * 2012-11-28 2014-06-11 纽海信息技术(上海)有限公司 分片数据库访问方法及数据库系统
CN106055587A (zh) * 2016-05-21 2016-10-26 乐视控股(北京)有限公司 一种分库数据库系统及其路由方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8676834B2 (en) * 2011-02-16 2014-03-18 International Business Machines Corporation Set-level comparisons in dynamically formed groups
CN102281330B (zh) * 2011-08-03 2014-04-02 深圳市科迪特信息技术有限公司 用于saas平台的数据存储、通讯访问及控制的方法
CN103473229A (zh) * 2012-06-06 2013-12-25 深圳市世纪光速信息技术有限公司 一种内存检索系统和方法、以及实时检索系统和方法
CN103714097B (zh) * 2012-10-09 2017-08-08 阿里巴巴集团控股有限公司 一种访问数据库的方法和装置
CN103096126B (zh) * 2012-12-28 2015-09-30 中国科学院计算技术研究所 协作式缓存集群中面向视频点播服务的协作式缓存方法及系统

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7702614B1 (en) * 2007-03-30 2010-04-20 Google Inc. Index updating using segment swapping
WO2010037065A2 (fr) * 2008-09-26 2010-04-01 Cmi Corporate Marketing D/B/A Prelude Innovations, Inc. Duplication de base de données relationnelle extensible
CN103853718A (zh) * 2012-11-28 2014-06-11 纽海信息技术(上海)有限公司 分片数据库访问方法及数据库系统
CN103207919A (zh) * 2013-04-26 2013-07-17 北京亿赞普网络技术有限公司 一种MongoDB集群快速查询计算的方法及装置
CN106055587A (zh) * 2016-05-21 2016-10-26 乐视控股(北京)有限公司 一种分库数据库系统及其路由方法

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112711572A (zh) * 2019-10-25 2021-04-27 北京沃东天骏信息技术有限公司 适用于分库分表的在线扩容方法和装置
CN112711572B (zh) * 2019-10-25 2024-04-05 北京沃东天骏信息技术有限公司 适用于分库分表的在线扩容方法和装置
CN111309810A (zh) * 2020-02-20 2020-06-19 苏宁云计算有限公司 基于小样本key值的分库分表方法及系统
CN111309810B (zh) * 2020-02-20 2022-11-18 苏宁云计算有限公司 基于小样本key值的分库分表方法及系统
CN113760968A (zh) * 2020-09-24 2021-12-07 北京沃东天骏信息技术有限公司 数据查询方法、装置、系统、电子设备及存储介质
CN113760978A (zh) * 2020-10-27 2021-12-07 北京沃东天骏信息技术有限公司 一种数据容灾方法和装置
CN113204535A (zh) * 2021-05-20 2021-08-03 中国工商银行股份有限公司 路由方法及装置、电子设备和计算机可读存储介质
CN113204535B (zh) * 2021-05-20 2024-02-02 中国工商银行股份有限公司 路由方法及装置、电子设备和计算机可读存储介质
CN113590609A (zh) * 2021-06-22 2021-11-02 北京旷视科技有限公司 数据分库方法及装置、存储介质及电子设备
CN113486023A (zh) * 2021-07-27 2021-10-08 中国银行股份有限公司 数据库分库分表的方法及装置
CN113645304A (zh) * 2021-08-13 2021-11-12 恒生电子股份有限公司 数据服务处理方法及相关设备
CN113645304B (zh) * 2021-08-13 2023-06-16 恒生电子股份有限公司 数据服务处理方法及相关设备

Also Published As

Publication number Publication date
CN106055587A (zh) 2016-10-26

Similar Documents

Publication Publication Date Title
WO2017201970A1 (fr) Système de bases de données à base de ramifications et son procédé de routage
US11044314B2 (en) System and method for a database proxy
CN111459418B (zh) 一种基于rdma的键值存储系统传输方法
US10212228B2 (en) Implementing synchronization of state information betweeen instances of an application as well as between different applications in an efficient, scalable manner
WO2018184491A1 (fr) Procédé, appareil, et système d'obtention de ressources
WO2017097059A1 (fr) Système de base de données distribuée et procédé d'auto-adaptation associé
CN106104525B (zh) 事件处理系统
WO2017016336A1 (fr) Procédé et appareil permettant une consultation et un traitement de données
JP2007066161A (ja) キャッシュシステム
CN102006330A (zh) 分布式缓存系统、数据的缓存方法及缓存数据的查询方法
US20150142845A1 (en) Smart database caching
GB2510192A (en) Intermediate proxy server caching buffer searched with key (URI hash)
CN113271359A (zh) 刷新缓存数据的方法、装置、电子设备和存储介质
CN106940696B (zh) 一种用于sdn多层控制器的信息查询方法及系统
US10210200B2 (en) Action-based routing of a transaction in an online transaction processing system
CN117539915B (zh) 一种数据处理方法及相关装置
CN111259060A (zh) 数据查询的方法及装置
Zhao et al. Reducing the synchronizing communication overhead for distributed graph-parallel computing
Eldakiky et al. Transkv: A networking support for transaction processing in distributed key-value stores
CN116756177B (zh) 一种mysql数据库的多表索引维护方法和系统
US9710533B2 (en) Efficient buffer pool page pre-fetching for database clusters
WO2013082743A1 (fr) Procédé et dispositif permettant d'améliorer la performance de concurrence d'un système de stockage d'objets distribué
US10187488B2 (en) Methods for managing replacement in a distributed cache environment and devices thereof
Wu et al. Data-driven memory management for stream join
CN117714541A (zh) 基于请求链路拦截的iOS应用网络数据缓存方法、系统

Legal Events

Date Code Title Description
NENP Non-entry into the national phase

Ref country code: DE

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 16902954

Country of ref document: EP

Kind code of ref document: A1

122 Ep: pct application non-entry in european phase

Ref document number: 16902954

Country of ref document: EP

Kind code of ref document: A1