CN116521693A - DDL statement execution method, device, equipment and medium - Google Patents

DDL statement execution method, device, equipment and medium Download PDF

Info

Publication number
CN116521693A
CN116521693A CN202310463344.5A CN202310463344A CN116521693A CN 116521693 A CN116521693 A CN 116521693A CN 202310463344 A CN202310463344 A CN 202310463344A CN 116521693 A CN116521693 A CN 116521693A
Authority
CN
China
Prior art keywords
lock
locking
partition
level
ddl
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.)
Pending
Application number
CN202310463344.5A
Other languages
Chinese (zh)
Inventor
李洪嵚
谢振江
赵裕众
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Oceanbase Technology Co Ltd
Original Assignee
Beijing Oceanbase Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Oceanbase Technology Co Ltd filed Critical Beijing Oceanbase Technology Co Ltd
Priority to CN202310463344.5A priority Critical patent/CN116521693A/en
Publication of CN116521693A publication Critical patent/CN116521693A/en
Pending legal-status Critical Current

Links

Classifications

    • 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/23Updating
    • G06F16/2308Concurrency control
    • G06F16/2336Pessimistic concurrency control approaches, e.g. locking or multiple versions without time stamps
    • G06F16/2343Locking methods, e.g. distributed locking or locking implementation details
    • 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/22Indexing; Data structures therefor; Storage structures
    • G06F16/2282Tablespace storage structures; Management thereof
    • 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/25Integrating or interfacing systems involving database management systems
    • G06F16/252Integrating or interfacing systems involving database management systems between a Database Management System and a front-end application
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

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)
  • Software Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

One or more embodiments of the present specification provide a method, apparatus, device, and medium for executing a DDL statement. According to the method, locking indication information for indicating locking modes when different types of database operations are realized through DDL sentences is preset, so that a unified locking mechanism is provided, when the DDL sentences for operating a target data table are received, based on a first operation to be executed corresponding to the DDL sentences, target locking indication information matched with the first operation to be executed is obtained from the locking indication information, and therefore the target data table is locked according to the target locking indication information, the DDL sentences are executed in a locking state of the target data table, the DDL sentences can be executed correctly, other DDL sentences which are currently being executed cannot be influenced, and the concurrency problem among a plurality of DDL sentences is improved.

Description

DDL statement execution method, device, equipment and medium
Technical Field
One or more embodiments of the present disclosure relate to the field of computer technologies, and in particular, to a method, an apparatus, a device, and a medium for executing a DDL statement.
Background
The data definition language (Data Definition Language, DDL) is a database language for defining data table structures that can be used to create, delete, and modify data table structures. However, when multiple users operate on a data table concurrently, multiple DDL statements may request operation on the same structure of the data table, and if such concurrent operation is not controlled, the data consistency of the database may be destroyed. In order to execute DDL statements correctly and concurrently in a database, a unified lock mechanism is required to cope with concurrency issues between multiple DDL statements.
Disclosure of Invention
In view of this, one or more embodiments of the present disclosure provide a method, apparatus, device, and medium for executing DDL statements.
In order to achieve the above object, one or more embodiments of the present disclosure provide the following technical solutions:
according to a first aspect of one or more embodiments of the present specification, there is provided a method for executing a DDL statement, including:
in response to receiving a target DDL statement for operating a target data table, determining target locking indication information matched with the first to-be-executed operation from preset locking indication information based on the first to-be-executed operation corresponding to the target DDL statement, wherein the locking indication information is used for indicating locking modes when different types of database operations are realized through the DDL statement;
And locking the target data table according to the target locking indication information so as to execute the target DDL statement under the condition that the target data table is in a locking state.
According to a second aspect of one or more embodiments of the present specification, there is provided an execution apparatus of a DDL statement, including:
the determining module is used for responding to the received target DDL statement used for operating the target data table, determining target locking indication information matched with the first operation to be executed from preset locking indication information based on the first operation to be executed corresponding to the target DDL statement, wherein the locking indication information is used for indicating locking modes when different types of database operations are realized through the DDL statement;
and the locking module is used for locking the target data table according to the target locking indication information so as to execute the target DDL statement under the condition that the target data table is in a locking state.
According to a third aspect of one or more embodiments of the present specification, there is provided a computing device comprising:
a processor;
a memory for storing processor-executable instructions;
wherein the processor implements the method as described in any of the first aspects above by executing executable instructions.
According to a fourth aspect of one or more embodiments of the present specification, there is provided a computer readable storage medium having stored thereon computer instructions which, when executed by a processor, implement a method as described in any of the first aspects above.
The locking indication information used for indicating locking modes when different types of database operations are realized through DDL sentences is preset to provide a unified locking mechanism, so that when a target DDL sentence used for operating a target data table is received, the target locking indication information matched with the first operation to be executed is obtained from the locking indication information based on the first operation to be executed corresponding to the target DDL sentence, and the target data table is locked according to the target locking indication information, so that the target DDL sentence is executed in a locking state of the target data table, the target DDL sentence can be executed correctly, other DDL sentences which are currently being executed are not influenced, and the concurrency problem among a plurality of DDL sentences is improved.
Drawings
FIG. 1 is a method of executing a DDL statement, provided by an exemplary embodiment.
FIG. 2 is a schematic block diagram of a computing device provided by an exemplary embodiment.
Fig. 3 is a block diagram of an apparatus for executing DDL statements according to an exemplary embodiment.
Detailed Description
Reference will now be made in detail to exemplary embodiments, examples of which are illustrated in the accompanying drawings. When the following description refers to the accompanying drawings, the same numbers in different drawings refer to the same or similar elements, unless otherwise indicated. The implementations described in the following exemplary embodiments do not represent all implementations consistent with one or more embodiments of the present specification. Rather, they are merely examples of apparatus and methods consistent with aspects of one or more embodiments of the present description as detailed in the accompanying claims.
It should be noted that: in other embodiments, the steps of the corresponding method are not necessarily performed in the order shown and described in this specification. In some other embodiments, the method may include more or fewer steps than described in this specification. Furthermore, individual steps described in this specification, in other embodiments, may be described as being split into multiple steps; while various steps described in this specification may be combined into a single step in other embodiments.
User information (including but not limited to user equipment information, user personal information, etc.) and data (including but not limited to data for analysis, stored data, presented data, etc.) referred to in this specification are both information and data authorized by the user or sufficiently authorized by the parties, and the collection, use and processing of relevant data requires compliance with relevant laws and regulations and standards of the relevant country and region, and is provided with corresponding access to the user's choice of authorization or denial.
To assist in understanding the present specification, technical terms related to the present specification will first be described.
Table and partition: a table in a database consists of one or more partitions.
Table space: the storage locations of the database objects, each partition belonging to a certain user configured tablespace.
Partition movement: a process of moving a partition from one tablespace to another tablespace.
Main table: and establishing an index I for the table A, wherein the main table of the index I is the table A.
Local index and global index: all are indexes commonly used in the data table, except that the global index can have a partition rule different from that of the main table, the local index can only be partitioned according to the partition rule of the main table, and the partitions in the local index and the partitions in the main table are in one-to-one correspondence, and each partition is respectively indexed into the corresponding partition of the main table.
Online DDL and Offline DDL: DDL statements can be classified into Online DDL and Offline DDL according to whether execution of the DDL statement would block execution of the associated data manipulation language (Data Manipulation Language, DML). DMLs cannot be parallel during Offline DDL execution and DMLs can be parallel during Online DDL execution.
And (3) table locking: locks used to protect data on a data table or partition may protect data on a data table through a table level lock and protect data on a partition through a partition level lock.
DDL lock: locks for protecting structures of database objects (tables, indexes, etc.), which mainly relate to Online DDL locks in this specification, are used to protect structures of database objects during execution of Online DDL statements.
Lock mode: the lock modes referred to in this specification mainly include four kinds, namely, row Share (RS) lock, row Exclusive (RX) lock, shared (S) lock, and Exclusive (X) lock. Wherein the mutual exclusion matrix of the four mode locks is shown in table 1 below:
TABLE 1
RS RX S X
RS ×
RX × ×
S × ×
X × × × ×
Taking the S lock and the RX lock in the table lock of the conventional database as examples, the S lock can ensure that the data table added with the lock is only allowed to be read, but not allowed to be modified, and each time a row is modified, a row is deleted and a new row is added, the RX lock needs to be added to the table to be operated, so that the data on the data table can be ensured not to be changed in the process that the data table holds the S lock.
It should be noted that when a partition level RS/RX/S/X lock is added to a data table, a table level RS/RX/S/X lock is automatically added to the data table.
The following describes in detail the execution method of DDL statements provided in this specification.
The present specification provides a method for executing DDL statements, which is used to provide a unified locking mechanism to complete mutual exclusion between an Online DDL and an Offline DDL, so as to execute DDL statements correctly and concurrently in a database.
In general, mutual exclusion between an Online DDL statement and an Offline DDL statement can be achieved by locking as shown in table 2 below:
TABLE 2
Offline DDL Online DDL
Offline DDL Watch lock Watch lock
Online DDL Watch lock Online DDL lock+watch lock
As shown in Table 2 above, only the table lock is needed when only the Offline DDL statement needs to be executed; when only the Online DDL statement needs to be executed, both the table lock and the Online DDL lock need to be added. The table locks are about the mutual exclusion between the Offline DDL statement and the Offline DDL statement; the table lock plays a mutual exclusion role between the Offline DDL statement and the Offline DDL statement; the mutual exclusion between the Online DDL statement and the Online DDL statement is an Online DDL lock and a table lock.
According to the method and the device, the mutual exclusion relation between a plurality of Online DDL sentences and Offline DDL sentences is combed, so that the lock types of the table locks and the Online DDL locks corresponding to different types of database operations are strictly defined according to the mutual exclusion relation obtained by combing, and the aim of controlling concurrency between the DDL sentences by combining the table locks and the Online DDL locks is fulfilled.
Optionally, the DDL statements (including an Online DDL statement and an Offline DDL statement) referred in this specification may be DDL statements corresponding to a create (create) instruction, a modify (alter) instruction, and a delete (drop) instruction, which are respectively used to implement table structure addition, modification, or deletion made on the basis of the current data table structure, and the specific functions implemented by the DDL statements are not limited in this specification.
Alternatively, the execution method of the DDL statement may be executed by a computing device, where the computing device may be a terminal device, such as a desktop computer, a portable computer, a notebook computer, a tablet computer, a smart phone, a smart watch, or the like, or the computing device may be a server, such as one server, multiple servers, a server cluster, a cloud computing platform, or the like, and the device type of the computing device is not limited in this specification.
The foregoing is merely exemplary descriptions about application scenarios of the present specification, and does not limit the application scenarios of the present specification, and in more possible implementations, the solution provided in the present specification may be applied to other more scenarios, and the present specification does not limit specific application scenarios.
After the application scenario of the present specification is described, a description is next given of a specific implementation procedure of the present specification.
Referring to fig. 1, fig. 1 is a method for executing DDL statements according to an exemplary embodiment, as shown in fig. 1, the method may include:
step 101, in response to receiving a target DDL statement for operating a target data table, determining target locking instruction information matched with a first to-be-executed operation from preset locking instruction information based on the first to-be-executed operation corresponding to the target DDL statement, where the locking instruction information is used for indicating locking modes when different types of database operations are implemented through the DDL statement.
It should be noted that the target DDL statement could be used to indicate a target data table to be operated on and a first operation to be performed on the target data table.
Taking a target DDL statement as an example of a DDL statement corresponding to a create instruction for creating a local index for a certain column of a data table, the target DDL statement may be "create index i1 on t1 (c 1) local", where the target DDL statement is used for creating a local index i1 for a c1 column of the table t1, where the table name t1 may indicate a target data table to be operated, and the action indication "create … index on …" may indicate that a first operation to be executed to be performed is to create a local index operation.
Taking the target DDL statement as an DDL statement corresponding to an alter instruction for modifying a table name as an example, the target DDL statement may be "alter table t1 rename to t2", where the target DDL statement is used for modifying a table name of a data table with a current table name of t1 to t2, the table name t1 may indicate a target data table to be operated, and the action indication "alter table … rename to …" may indicate that a first operation to be executed to be performed is to modify the table name.
Taking a target DDL statement as an example of a DDL statement corresponding to a drop instruction for deleting a data table, the target DDL statement may be "drop table t1", where the target DDL statement is used for deleting the data table t1, the table name t1 may indicate a target data table to be operated, and the action indication "drop table …" may indicate that a first operation to be performed is a delete table operation.
The locking indication information used for indicating the locking mode when different types of database operations are realized through the DDL statement is preset, so that when a target DDL statement is received, the target locking indication information matched with the first operation to be executed can be obtained from the locking indication information directly according to the first operation to be executed indicated by the target DDL statement, and after the target data table is locked based on the target indication information, the function to be completed by the target DDL statement can be realized through multiple mutually exclusive DDL statements.
And 102, locking the target data table according to the target locking indication information so as to execute the target DDL statement under the condition that the target data table is in a locking state.
According to the embodiment, the locking indication information for indicating the locking mode when different types of database operations are realized through the DDL statement is preset, so that a unified locking mechanism is provided, when a target DDL statement for operating a target data table is received, the target locking indication information matched with the first operation to be executed is obtained from the locking indication information based on the first operation to be executed corresponding to the target DDL statement, so that the target data table is locked according to the target locking indication information, the target DDL statement is executed in a locking state of the target data table, the target DDL statement can be executed correctly, other DDL statements which are currently executed are not influenced, and the concurrency problem among a plurality of DDL statements is improved.
The foregoing description is merely an introduction to a basic implementation flow of the present specification, and a detailed description of a method for executing DDL statements provided in the present specification is provided below in connection with an alternative embodiment of the present specification.
It should be noted that, locking modes corresponding to multiple types of database operations may be predefined, and lock types corresponding to different types of database operations may be stored in the locking instruction information, so that the locking instruction information may include locking modes corresponding to multiple types of database operations.
The principle and mode of presetting locking indication information are described below.
First, the behavior of adding and deleting partitions on the main table or the global index table can be realized by the following way:
1. the new partition on the main table or global index table has and only has the following way:
(1) Adding a partition;
(2) Splitting and merging new partitions from the original partitions;
(3) Switching from other partitions;
2. deleting partitions on the master table or global index table has and only has the following way:
(1) Puncturing/truncating (Truncate) partitions;
(2) After division and merging are completed, the original partition is cleaned;
(3) And the partitions are exchanged out.
Based on the above convention, for an Online DDL table level lock, it may allow four modes (i.e., RS mode, RX mode, S mode, and X mode) for protecting the behavior of the newly added partition. The protection of the newly added partition may be achieved by adding a lock as shown in the following table 3 to the data table:
TABLE 3 Table 3
Online DDL table level lock Whether the holder can add partitions Whether or not no other person can be guaranteed to add to the partition during lock holding
RS Whether or not Whether or not
RX Is that Whether or not
S Whether or not Is that
X Is that Is that
As can be seen from the above table 3, when the data table is in the locked state of the Online DDL level RS lock, no partition can be added to the data table, and no other partition can be ensured when the data table is in the locked state; when the data table is in the locking state of the Online DDL table level RX lock, the partition can be added in the data table, but no other partition can be added when the data table is in the locking state; when the data table is in the locking state of the Online DDL table level S lock, the partition cannot be added in the data table, but no other person can be ensured to add the partition when the data table is in the locking state; under the locking state that the data table is in the Online DDL table level X lock, the partition can be added in the data table, and no other person can be added in the locking state of the data table.
For the Online DDL partition level lock, only the RX mode and the X mode are allowed, which can be used for protecting the actions of partition splitting/merging, global index partition deleting and the like, and protecting the state of the table space to which the partition belongs. The protection of the above behavior can be achieved by adding a lock as shown in the following table 4 to the data table:
TABLE 4 Table 4
As can be seen from table 4 above, when the data table is in the locked state of the Online DDL partition level RX lock, the partition cannot be split/merged, the global index partition cannot be deleted, and the state of the table space to which the partition belongs holds the read lock, that is, the table space to which the partition belongs does not belong; under the locking state that the data table is in the Online DDL partition level X lock, the partition may be split/merged, the global index partition may be deleted, and the state of the table space to which the partition belongs holds a write lock, that is, the table space to which the partition belongs is allowed to be modified.
As can be seen from the above conventions and analysis of the related behavior, the Online DDL lock can complete protection of the main table and the partition of the global index table and deletion of the global index table partition, while protection of the main table delete partition can be taken care of by the table lock. In addition, for partition level table locks, there are and only partition level X locks that allow the master table to delete/truncate partitions.
It should be noted that, in the execution of an operation, the original operation intention may be realized by not executing the operation alone, but executing the operation (i.e. the exclusive operation) that ensures that other parts of the data table are not modified in parallel during the execution of the operation, so as to ensure the consistency of the database. Through the above behavior definition, the mutual exclusion operation to be executed in parallel in the execution process of each operation can be determined, so that the data table can be locked based on the operation (i.e. the first operation to be executed) and the corresponding mutual exclusion operation (i.e. the second operation to be executed) which are originally required to be executed, thereby ensuring that the locked data table can allow the parallel execution of DDL sentences corresponding to the operation and the corresponding mutual exclusion operation which are originally required to be executed.
Taking the original database operation to be executed as the local index adding/deleting, in order to ensure that the partition of the main table is unchanged, the following mutual exclusion operations need to be executed, and locks corresponding to various mutual exclusion operations can be:
1. the partition is forbidden to be added, and the implementation is realized by adding an Online DDL table level S lock/RX lock to the main table;
2. the original partition splitting and merging are forbidden, and the original partition splitting and merging are realized by adding an Online DDL partition level RX lock to all partitions of a main table;
3. And prohibiting the deletion and exchange of the main table partition, and adding partition-level RS table locks to all the partitions of the main table.
That is, the Online DDL lock corresponding to the add/delete local index operation is a table level S lock/RX lock for locking the main table and a partition level RX lock for locking all partitions of the main table, and the table lock corresponding to the add/delete/reconstruct local index operation is a partition level RS lock for locking all partitions of the main table.
The above is only an example of a locking manner corresponding to a database operation such as adding/deleting a local index operation, and for other database operations, the mutual exclusion operation of the database operation may be determined in a manner similar to the above example, so that the setting of the lock corresponding to the database operation is implemented based on the determined mutual exclusion operation.
It should be noted that, for an Online DDL statement, mutual exclusion between DDL statements may need to be achieved by adding an Online DDL lock and a table lock to the corresponding data table at the same time; for the Offline DDL statement, only a table lock needs to be added for the corresponding data table to realize mutual exclusion between the DDL statements. Therefore, the locking instruction information may include first locking instruction information and second locking instruction information, where the first locking instruction information stores lock types of Online DDL locks and table locks corresponding to different types of database operations, and the second locking instruction information stores lock types of table locks corresponding to different types of database operations.
Wherein the first locking indication information may include at least one of:
the Online DDL lock corresponding to the column adding operation is a table-level RS lock used for locking each data table, and the table lock corresponding to the column adding operation is a partition-level RX lock used for locking all partitions of the main table;
modifying an Online DDL lock corresponding to the non-null constraint operation into a table-level RS lock for locking each data table, and modifying the table lock corresponding to the non-null constraint operation into a partition-level RX lock for locking all partitions of the main table;
setting an Online DDL lock corresponding to a column default operation as a table-level RS lock for locking each data table, and setting a table lock corresponding to the column default operation as a partition-level RX lock for locking all partitions of a main table;
the Online DDL lock corresponding to the renaming column operation is a table-level RS lock used for locking each data table, and the table lock corresponding to the renaming column operation is a partition-level RX lock used for locking all partitions of the main table;
the Online DDL lock corresponding to the renaming table operation is a table-level RS lock used for locking each data table, and the table lock corresponding to the renaming table operation is a partition-level RX lock used for locking all partitions of the main table;
Modifying an Online DDL lock corresponding to the operation of the row format/compression algorithm into a table-level RS lock for locking each data table, and modifying the table lock corresponding to the operation of the row format/compression algorithm into a partition-level RX lock for locking all partitions of the main table;
the Online DDL lock corresponding to the optimized table space operation is a table level RS lock used for locking each data table, and the table lock corresponding to the optimized table space operation is a partition level RX lock used for locking all partitions of the main table;
the Online DDL lock corresponding to the adding/deleting constraint operation is a table-level RS lock used for locking each data table, and the table lock corresponding to the adding/deleting constraint operation is a partition-level RX lock used for locking all partitions of the main table;
the Online DDL lock corresponding to the renaming index operation is a table-level RS lock used for locking each data table, and the table lock corresponding to the renaming index operation is a partition-level RX lock used for locking all partitions of the main table;
the Online DDL lock corresponding to the add/delete/reconstruct local index operation is a table level S lock used for locking a main table and a partition level RX lock used for locking all partitions of the main table, or the Online DDL lock corresponding to the add/delete/reconstruct local index operation is a table level RX lock used for locking the main table and a partition level S lock used for locking all partitions of the main table, and the table lock corresponding to the add/delete/reconstruct local index operation is a partition level RS lock used for locking all partitions of the main table;
The Online DDL lock corresponding to the global index operation is a table level S lock/RX lock used for locking a main table and a table level X lock used for locking an index table, and the table lock corresponding to the local index operation is a partition level RS lock used for locking all partitions of the main table;
the Online DDL lock corresponding to the main table adding partition operation is a table level RX lock/S lock for locking each data table, and the table lock corresponding to the main table adding partition operation is a table level RX lock for locking each data table;
the Online DDL lock corresponding to the main table moving partition operation is a table-level RS lock used for locking each data table and a partition-level X lock used for locking a target partition in each data table, and the table lock corresponding to the main table moving partition operation is a partition-level RS lock used for locking the target partition in each data table;
the Online DDL lock corresponding to the global index partition moving operation is a table-level RS lock for locking the global index table and a partition-level X lock for locking a target partition in the global index table, and the table lock corresponding to the global index partition moving operation is a table-level RS lock for locking the main table;
The Online DDL lock corresponding to the splitting/merging operation of the main table is a table level RS lock for locking each data table and a partition level X lock for locking a source partition and a destination partition, and the table lock corresponding to the splitting/merging operation of the main table is a table level RX lock for locking each data table and a partition level RX lock for locking the source partition and the destination partition;
the Online DDL lock corresponding to the global index partition splitting/merging operation is a table-level RS lock used for locking each data table and a partition-level X lock used for locking a source partition and a destination partition, and the table lock corresponding to the global index partition splitting/merging operation is a table-level RS lock used for locking a main table;
the Online DDL lock corresponding to the global index deleting partition operation is a table level RS lock used for locking an index table and a partition level X lock used for locking a partition of the index table, and the table lock corresponding to the global index deleting partition operation is a table level S lock used for locking a main table;
the Online DDL lock corresponding to the column type operation is a table level X lock used for locking the main table, and the table lock corresponding to the column type operation is a partition level RX lock used for locking all partitions of the main table;
The Online DDL lock corresponding to the deletion operation is a table level X lock for locking the main table, and the table lock corresponding to the deletion operation is a partition level RX lock for locking all partitions of the main table;
the Online DDL lock corresponding to the add/delete/change main key operation is a table level X lock for locking the main table, and the table lock corresponding to the add/delete/change main key operation is a partition level RX lock for locking all partitions of the main table.
Further, the second locking indication information may include at least one of:
the table lock corresponding to the delete/truncate table operation is a table level X lock for locking each data table;
the table lock corresponding to the delete/cut-off main table partition operation is a partition level X lock for locking all partitions in each data table;
the table lock corresponding to the main table partition exchange operation is a partition level X lock for locking the source partition and the destination partition.
For convenience of viewing, the first locking information and the second locking information mentioned above are presented in the form of tables, wherein the content of the first locking information can be seen in the following table 5:
TABLE 5
It should be noted that, the S lock and the RX lock of the Online DDL lock in table 5 may be interchanged, and mutual exclusion of the corresponding DDL statements may still be achieved. In addition, the operations classified as other operations in table 5 are mutually exclusive to all DDL sentences, so that, for some DDL sentences which are difficult to determine whether or not to be concurrent with other DDL sentences, the DDL sentences can be classified into other classifications, so that the corresponding data tables can be locked in a manner corresponding to other operations of the same type.
In addition, the content of the second locking information can be seen in table 6 below:
TABLE 6
By defining the locking indication information shown in the above tables 5 and 6, the preset setting of the lock types corresponding to different types of database operations can be realized, so that when a target DDL statement is received, the corresponding target locking indication information can be directly obtained.
In some embodiments, for step 101, when determining, in response to receiving a target DDL statement for operating on a target data table, target locking instruction information matching a first to-be-performed operation from preset locking instruction information based on the first to-be-performed operation corresponding to the target DDL statement, the method may include the following steps:
step 1011, determining a first operation to be executed corresponding to the target DDL statement in response to receiving the target DDL statement for operating the target data table.
Alternatively, the first operation to be performed corresponding to the target DDL statement may be determined according to the action indication in the target DDL statement.
Step 1012, based on the first operation to be performed, obtaining a lock type corresponding to the first operation to be performed from the locking instruction information as target locking instruction information.
In one possible implementation manner, in the case that the target DDL statement is an Online DDL statement, based on the first operation to be performed, a lock type corresponding to the first operation to be performed is obtained from the first lock instruction information as the target lock instruction information.
In another possible implementation manner, in the case that the target DDL statement is an offset DDL statement, based on the first operation to be performed, a lock type corresponding to the first operation to be performed is obtained from the second lock instruction information as the target lock instruction information.
Optionally, according to the correspondence relationship stored in the locking instruction information, the lock types corresponding to the first operations to be executed of different types may be obtained.
In the target locking instruction information obtained through the above process, the target data table may be locked according to the target locking instruction information through step 102, so as to execute the target DDL statement when the target data table is in the locked state.
In some embodiments, for step 102, when locking the target data table according to the target locking instruction information to execute the target DDL statement with the target data table in the locked state, this may be achieved by:
And adding a lock matched with the lock type corresponding to the first operation to be executed to the target data table according to the target locking indication information so as to execute the target DDL statement under the condition that the target data table is in a locking state.
In the above embodiment, it has been described that, in the execution process of the first operation to be executed, a second operation to be executed exclusive to the first operation to be executed may be further required to be executed, so as to implement the original operation intention and ensure the consistency of the database through the common execution of the first operation to be executed and the second operation to be executed.
Thus, a second operation to be performed that is mutually exclusive to the first operation to be performed may be determined based on the first operation to be performed corresponding to the target DDL statement, so that when the target DDL statement is performed with the target data table in the locked state, the target DDL statement and the DDL statement corresponding to the second operation to be performed may be performed with the target data table in the locked state.
The present specification provides a locking scheme that can support more relaxed DDL concurrency control by strictly defining the semantics of the different lock modes. By the scheme provided by the specification, mutual exclusion can be realized between DDL sentences and DML sentences through a table lock, and concurrency can be realized between the Online DDL sentences (except for the global index deletion partition, namely the Online DDL sentences) and the DML sentences. And, the main table partition moving operation and the add/delete global index operation may be concurrent, the global index partition moving operation and the add/delete local index operation may be concurrent, and the Online partition operation on the main table and the Online partition operation (except for the global index delete partition operation) on the global index table may be concurrent.
Corresponding to the embodiments of the method described above, the present description also provides corresponding device embodiments.
FIG. 2 is a schematic block diagram of a computing device provided by an exemplary embodiment. Referring to FIG. 2, at the hardware level, the computing device includes a processor 202, an internal bus 204, a network interface 206, a memory 208, and a non-volatile storage 210, although other tasks may be performed. One or more embodiments of the present description may be implemented in a software-based manner, such as by the processor 202 reading a corresponding computer program from the non-volatile storage 210 into the memory 208 and then running. Of course, in addition to software implementation, one or more embodiments of the present disclosure do not exclude other implementation manners, such as a logic device or a combination of software and hardware, etc., that is, the execution subject of the following processing flow is not limited to each logic unit, but may also be hardware or a logic device.
The present disclosure further provides an execution apparatus of DDL statements, please refer to fig. 3, fig. 3 is a block diagram of an execution apparatus of DDL statements provided in an exemplary embodiment, where the execution apparatus of DDL statements may be applied to a computing device shown in fig. 2, so as to implement the technical solution of the present disclosure. The execution device of the DDL statement may include:
A determining module 301, configured to determine, in response to receiving a target DDL statement for operating a target data table, target locking instruction information matched with a first to-be-performed operation from preset locking instruction information based on a first to-be-performed operation corresponding to the target DDL statement, where the locking instruction information is used to instruct a locking manner when different types of database operations are implemented by the DDL statement;
and the locking module 302 is configured to lock the target data table according to the target locking instruction information, so as to execute the target DDL statement when the target data table is in a locked state.
In some embodiments, the locking indication information stores lock types corresponding to different types of database operations;
the determining module 301, when determining, in response to receiving a target DDL statement for operating on the target data table, target locking instruction information matched with a first to-be-performed operation from preset locking instruction information based on the first to-be-performed operation corresponding to the target DDL statement, is configured to:
in response to receiving a target DDL statement for operating a target data table, determining a first operation to be executed corresponding to the target DDL statement;
Based on the first operation to be executed, the lock type corresponding to the first operation to be executed is obtained from the locking indication information and is used as target locking indication information.
In some embodiments, the locking instruction information includes a first locking instruction information and a second locking instruction information, where the first locking instruction information stores lock types of Online DDL locks and table locks corresponding to different types of database operations, and the second locking instruction information stores lock types of table locks corresponding to different types of database operations;
the determining module 301 is configured to, when configured to obtain, based on the first operation to be performed, a lock type corresponding to the first operation to be performed from the locking instruction information, as target locking instruction information, be configured to any one of the following:
under the condition that the target DDL statement is an Online DDL statement, acquiring a lock type corresponding to a first operation to be executed from first locking instruction information based on the first operation to be executed, and taking the lock type as target locking instruction information;
and under the condition that the target DDL statement is an offset DDL statement, acquiring a lock type corresponding to the first operation to be executed from the second locking instruction information based on the first operation to be executed, and taking the lock type as the target locking instruction information.
In some embodiments, the first locking indication information includes at least one of:
the Online DDL lock corresponding to the column adding operation is a table-level RS lock used for locking each data table, and the table lock corresponding to the column adding operation is a partition-level RX lock used for locking all partitions of the main table;
modifying an Online DDL lock corresponding to the non-null constraint operation into a table-level RS lock for locking each data table, and modifying the table lock corresponding to the non-null constraint operation into a partition-level RX lock for locking all partitions of the main table;
setting an Online DDL lock corresponding to a column default operation as a table-level RS lock for locking each data table, and setting a table lock corresponding to the column default operation as a partition-level RX lock for locking all partitions of a main table;
the Online DDL lock corresponding to the renaming column operation is a table-level RS lock used for locking each data table, and the table lock corresponding to the renaming column operation is a partition-level RX lock used for locking all partitions of the main table;
the Online DDL lock corresponding to the renaming table operation is a table-level RS lock used for locking each data table, and the table lock corresponding to the renaming table operation is a partition-level RX lock used for locking all partitions of the main table;
Modifying an Online DDL lock corresponding to the operation of the row format/compression algorithm into a table-level RS lock for locking each data table, and modifying the table lock corresponding to the operation of the row format/compression algorithm into a partition-level RX lock for locking all partitions of the main table;
the Online DDL lock corresponding to the optimized table space operation is a table level RS lock used for locking each data table, and the table lock corresponding to the optimized table space operation is a partition level RX lock used for locking all partitions of the main table;
the Online DDL lock corresponding to the adding/deleting constraint operation is a table-level RS lock used for locking each data table, and the table lock corresponding to the adding/deleting constraint operation is a partition-level RX lock used for locking all partitions of the main table;
the Online DDL lock corresponding to the renaming index operation is a table-level RS lock used for locking each data table, and the table lock corresponding to the renaming index operation is a partition-level RX lock used for locking all partitions of the main table;
the Online DDL lock corresponding to the add/delete/reconstruct local index operation is a table level S lock used for locking a main table and a partition level RX lock used for locking all partitions of the main table, or the Online DDL lock corresponding to the add/delete/reconstruct local index operation is a table level RX lock used for locking the main table and a partition level S lock used for locking all partitions of the main table, and the table lock corresponding to the add/delete/reconstruct local index operation is a partition level RS lock used for locking all partitions of the main table;
The Online DDL lock corresponding to the global index operation is a table level S lock/RX lock used for locking a main table and a table level X lock used for locking an index table, and the table lock corresponding to the local index operation is a partition level RS lock used for locking all partitions of the main table;
the Online DDL lock corresponding to the main table adding partition operation is a table level RX lock/S lock for locking each data table, and the table lock corresponding to the main table adding partition operation is a table level RX lock for locking each data table;
the Online DDL lock corresponding to the main table moving partition operation is a table-level RS lock used for locking each data table and a partition-level X lock used for locking a target partition in each data table, and the table lock corresponding to the main table moving partition operation is a partition-level RS lock used for locking the target partition in each data table;
the Online DDL lock corresponding to the global index partition moving operation is a table-level RS lock for locking the global index table and a partition-level X lock for locking a target partition in the global index table, and the table lock corresponding to the global index partition moving operation is a table-level RS lock for locking the main table;
The Online DDL lock corresponding to the splitting/merging operation of the main table is a table-level RS lock for locking each data table and a partition-level X lock for locking a source partition and a destination partition, and the table lock corresponding to the splitting/merging operation of the main table is a partition-level RX lock for locking the source partition and the destination partition;
the Online DDL lock corresponding to the global index partition splitting/merging operation is a table-level RS lock used for locking each data table and a partition-level X lock used for locking a source partition and a destination partition, and the table lock corresponding to the global index partition splitting/merging operation is a table-level RS lock used for locking a main table;
the Online DDL lock corresponding to the global index deleting partition operation is a table level RS lock used for locking an index table and a partition level X lock used for locking a partition of the index table, and the table lock corresponding to the global index deleting partition operation is a table level S lock used for locking a main table;
the Online DDL lock corresponding to the column type operation is a table level X lock used for locking the main table, and the table lock corresponding to the column type operation is a partition level RX lock used for locking all partitions of the main table;
the Online DDL lock corresponding to the deletion operation is a table level X lock for locking the main table, and the table lock corresponding to the deletion operation is a partition level RX lock for locking all partitions of the main table;
The Online DDL lock corresponding to the add/delete/change main key operation is a table level X lock for locking the main table, and the table lock corresponding to the add/delete/change main key operation is a partition level RX lock for locking all partitions of the main table.
In some embodiments, the second locking indication information includes at least one of:
the table lock corresponding to the delete/truncate table operation is a table level X lock for locking each data table;
the table lock corresponding to the delete/cut-off main table partition operation is a partition level X lock for locking all partitions in each data table;
the table lock corresponding to the main table partition exchange operation is a partition level X lock for locking the source partition and the destination partition.
In some embodiments, the locking module 302, when configured to lock the target data table according to the target locking indication information to execute the target DDL statement with the target data table in the locked state, is configured to:
and adding a lock matched with the lock type corresponding to the first operation to be executed to the target data table according to the target locking indication information so as to execute the target DDL statement under the condition that the target data table is in a locking state.
In some embodiments, the determining module 301 is further configured to determine, based on the first operation to be performed corresponding to the target DDL statement, a second operation to be performed mutually exclusive to the first operation to be performed;
The apparatus further comprises:
the execution module is used for executing the target DDL statement under the condition that the target data table is in a locking state;
the execution module, when used for executing the target DDL statement under the condition that the target data table is in the locking state, is used for:
and executing the target DDL statement and the DDL statement corresponding to the second operation to be executed under the condition that the target data table is in the locking state.
The apparatus, module or unit set forth in the above embodiments may be implemented in particular by a computer chip or entity, or by a product having a certain function. A typical implementation device is a computer, which may be in the form of a personal computer, laptop computer, cellular telephone, camera phone, smart phone, personal digital assistant, media player, navigation device, email device, game console, tablet computer, wearable device, or a combination of any of these devices.
In a typical configuration, a computer includes one or more processors (Central Processing Unit, CPU), input/output interfaces, network interfaces, and memory.
The Memory may include non-volatile Memory in a computer readable medium, random access Memory (Random Access Memory, RAM) and/or non-volatile Memory, etc., such as Read-Only Memory (ROM) or flash RAM. Memory is an example of computer-readable media.
Computer readable media, including both non-transitory and non-transitory, removable and non-removable media, may implement information storage by any method or technology. The information may be computer readable instructions, data structures, modules of a program, or other data. Examples of storage media for a computer include, but are not limited to, phase change Memory (Phase Change Random Access Memory, PRAM), static random access Memory (Static Random Access Memory, SRAM), dynamic random access Memory (Dynamic Random Access Memory, DRAM), other types of Random Access Memory (RAM), read Only Memory (ROM), electrically erasable programmable read Only Memory (Electrically Erasable Programmable Read-Only Memory, EEPROM), flash Memory or other Memory technology, read Only optical disk read Only Memory (Compact Disc Read-Only Memory, CD-ROM), digital versatile disks (Digital Video Disc, DVD) or other optical storage, magnetic cassettes, magnetic disk storage, quantum Memory, graphene-based storage media or other magnetic storage devices, or any other non-transmission media, that can be used to store information that can be accessed by a computing device. Computer-readable Media, as defined herein, does not include Transitory computer-readable Media (transmission Media), such as modulated data signals and carrier waves.
It should also be noted that the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or apparatus. Without further limitation, an element defined by the phrase "comprising one … …" does not exclude the presence of other like elements in a process, method, article or apparatus that comprises the element.
The foregoing describes specific embodiments of the present disclosure. Other embodiments are within the scope of the following claims. In some cases, the actions or steps recited in the claims can be performed in a different order than in the embodiments and still achieve desirable results. In addition, the processes depicted in the accompanying figures do not necessarily require the particular order shown, or sequential order, to achieve desirable results. In some embodiments, multitasking and parallel processing are also possible or may be advantageous.
The terminology used in the one or more embodiments of the specification is for the purpose of describing particular embodiments only and is not intended to be limiting of the one or more embodiments of the specification. As used in this specification, one or more embodiments and the appended claims, the singular forms "a," "an," and "the" are intended to include the plural forms as well, unless the context clearly indicates otherwise. It should also be understood that the term "and/or" as used herein refers to and encompasses any or all possible combinations of one or more of the associated listed items.
It should be understood that although the terms first, second, third, etc. may be used in one or more embodiments of the present description to describe various information, these information should not be limited to these terms. These terms are only used to distinguish one type of information from another. For example, first information may also be referred to as second information, and similarly, second information may also be referred to as first information, without departing from the scope of one or more embodiments of the present description. The word "if" as used herein may be interpreted as "at … …" or "at … …" or "responsive to a determination", depending on the context.
The foregoing description of the preferred embodiment(s) is (are) merely intended to illustrate the embodiment(s) of the present invention, and it is not intended to limit the embodiment(s) of the present invention to the particular embodiment(s) described.

Claims (10)

1. A method of execution of DDL statements, comprising:
in response to receiving a target DDL statement for operating a target data table, determining target locking indication information matched with a first operation to be executed from preset locking indication information based on the first operation to be executed corresponding to the target DDL statement, wherein the locking indication information is used for indicating locking modes when different types of database operations are realized through the DDL statement;
and locking the target data table according to the target locking indication information so as to execute the target DDL statement under the condition that the target data table is in a locking state.
2. The method according to claim 1, wherein the locking indication information stores lock types corresponding to different types of database operations;
In response to receiving a target DDL statement for operating a target data table, determining target locking instruction information matched with a first to-be-executed operation from preset locking instruction information based on the first to-be-executed operation corresponding to the target DDL statement, including:
in response to receiving a target DDL statement for operating a target data table, determining a first operation to be executed corresponding to the target DDL statement;
and based on the first operation to be executed, acquiring a lock type corresponding to the first operation to be executed from the locking instruction information as the target locking instruction information.
3. The method of claim 2, wherein the locking indication information includes a first locking indication information and a second locking indication information, the first locking indication information stores lock types of Online DDL locks and table locks corresponding to different types of database operations, and the second locking indication information stores lock types of table locks corresponding to different types of database operations;
based on the first operation to be executed, acquiring a lock type corresponding to the first operation to be executed from the locking instruction information, wherein the lock type is used as the target locking instruction information and comprises any one of the following steps:
Acquiring a lock type corresponding to the first operation to be executed from the first locking instruction information based on the first operation to be executed under the condition that the target DDL statement is an Online DDL statement, and taking the lock type as the target locking instruction information;
and under the condition that the target DDL statement is an offset DDL statement, acquiring a lock type corresponding to the first operation to be executed from the second locking instruction information based on the first operation to be executed, and taking the lock type as the target locking instruction information.
4. A method according to claim 3, the first locking indication information comprising at least one of:
the Online DDL lock corresponding to the column adding operation is a table-level RS lock used for locking each data table, and the table lock corresponding to the column adding operation is a partition-level RX lock used for locking all partitions of the main table;
modifying an Online DDL lock corresponding to the non-null constraint operation into a table-level RS lock for locking each data table, and modifying the table lock corresponding to the non-null constraint operation into a partition-level RX lock for locking all partitions of the main table;
setting an Online DDL lock corresponding to a column default operation as a table-level RS lock for locking each data table, and setting a table lock corresponding to the column default operation as a partition-level RX lock for locking all partitions of a main table;
The Online DDL lock corresponding to the renaming column operation is a table-level RS lock used for locking each data table, and the table lock corresponding to the renaming column operation is a partition-level RX lock used for locking all partitions of the main table;
the Online DDL lock corresponding to the renaming table operation is a table-level RS lock used for locking each data table, and the table lock corresponding to the renaming table operation is a partition-level RX lock used for locking all partitions of the main table;
modifying an Online DDL lock corresponding to the operation of the row format/compression algorithm into a table-level RS lock for locking each data table, and modifying the table lock corresponding to the operation of the row format/compression algorithm into a partition-level RX lock for locking all partitions of the main table;
the Online DDL lock corresponding to the optimized table space operation is a table level RS lock used for locking each data table, and the table lock corresponding to the optimized table space operation is a partition level RX lock used for locking all partitions of the main table;
the Online DDL lock corresponding to the adding/deleting constraint operation is a table-level RS lock used for locking each data table, and the table lock corresponding to the adding/deleting constraint operation is a partition-level RX lock used for locking all partitions of the main table;
the Online DDL lock corresponding to the renaming index operation is a table-level RS lock used for locking each data table, and the table lock corresponding to the renaming index operation is a partition-level RX lock used for locking all partitions of the main table;
The Online DDL lock corresponding to the add/delete/reconstruct local index operation is a table level S lock used for locking a main table and a partition level RX lock used for locking all partitions of the main table, or the Online DDL lock corresponding to the add/delete/reconstruct local index operation is a table level RX lock used for locking the main table and a partition level S lock used for locking all partitions of the main table, and the table lock corresponding to the add/delete/reconstruct local index operation is a partition level RS lock used for locking all partitions of the main table;
the Online DDL lock corresponding to the global index operation is a table level S lock/RX lock used for locking a main table and a table level X lock used for locking an index table, and the table lock corresponding to the local index operation is a partition level RS lock used for locking all partitions of the main table;
the Online DDL lock corresponding to the main table adding partition operation is a table level RX lock/S lock for locking each data table, and the table lock corresponding to the main table adding partition operation is a table level RX lock for locking each data table;
the Online DDL lock corresponding to the main table moving partition operation is a table-level RS lock used for locking each data table and a partition-level X lock used for locking a target partition in each data table, and the table lock corresponding to the main table moving partition operation is a partition-level RS lock used for locking the target partition in each data table;
The Online DDL lock corresponding to the global index partition moving operation is a table-level RS lock for locking the global index table and a partition-level X lock for locking a target partition in the global index table, and the table lock corresponding to the global index partition moving operation is a table-level RS lock for locking the main table;
the Online DDL lock corresponding to the splitting/merging operation of the main table is a table-level RS lock for locking each data table and a partition-level X lock for locking a source partition and a destination partition, and the table lock corresponding to the splitting/merging operation of the main table is a partition-level RX lock for locking the source partition and the destination partition;
the Online DDL lock corresponding to the global index partition splitting/merging operation is a table-level RS lock used for locking each data table and a partition-level X lock used for locking a source partition and a destination partition, and the table lock corresponding to the global index partition splitting/merging operation is a table-level RS lock used for locking a main table;
the Online DDL lock corresponding to the global index deleting partition operation is a table level RS lock used for locking an index table and a partition level X lock used for locking a partition of the index table, and the table lock corresponding to the global index deleting partition operation is a table level S lock used for locking a main table;
The Online DDL lock corresponding to the column type operation is a table level X lock used for locking the main table, and the table lock corresponding to the column type operation is a partition level RX lock used for locking all partitions of the main table;
the Online DDL lock corresponding to the deletion operation is a table level X lock for locking the main table, and the table lock corresponding to the deletion operation is a partition level RX lock for locking all partitions of the main table;
the Online DDL lock corresponding to the add/delete/change main key operation is a table level X lock for locking the main table, and the table lock corresponding to the add/delete/change main key operation is a partition level RX lock for locking all partitions of the main table.
5. A method according to claim 3, the second locking indication information comprising at least one of:
the table lock corresponding to the delete/truncate table operation is a table level X lock for locking each data table;
the table lock corresponding to the delete/cut-off main table partition operation is a partition level X lock for locking all partitions in each data table;
the table lock corresponding to the main table partition exchange operation is a partition level X lock for locking the source partition and the destination partition.
6. The method of claim 2, locking the target data table according to the target locking indication information to execute the target DDL statement with the target data table in a locked state, comprising:
And adding a lock matched with the lock type corresponding to the first operation to be executed for the target data table according to the target locking indication information so as to execute the target DDL statement under the condition that the target data table is in a locking state.
7. The method of claim 6, the method further comprising:
determining a second operation to be executed which is mutually exclusive with the first operation to be executed based on the first operation to be executed corresponding to the target DDL statement;
executing the target DDL statement with the target data table in a locked state, comprising:
and executing the DDL statement corresponding to the target DDL statement and the second operation to be executed under the condition that the target data table is in a locking state.
8. An execution apparatus of DDL statements, comprising:
the determining module is used for responding to a target DDL statement used for operating a target data table, determining target locking indication information matched with a first operation to be executed from preset locking indication information based on the first operation to be executed corresponding to the target DDL statement, wherein the locking indication information is used for indicating locking modes when different types of database operations are realized through the DDL statement;
And the locking module is used for locking the target data table according to the target locking indication information so as to execute the target DDL statement under the condition that the target data table is in a locking state.
9. A computing device, comprising:
a processor;
a memory for storing processor-executable instructions;
wherein the processor is configured to implement the method of any of claims 1-7 by executing the executable instructions.
10. A computer readable storage medium having stored thereon computer instructions which, when executed by a processor, implement the steps of the method of any of claims 1-7.
CN202310463344.5A 2023-04-26 2023-04-26 DDL statement execution method, device, equipment and medium Pending CN116521693A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310463344.5A CN116521693A (en) 2023-04-26 2023-04-26 DDL statement execution method, device, equipment and medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310463344.5A CN116521693A (en) 2023-04-26 2023-04-26 DDL statement execution method, device, equipment and medium

Publications (1)

Publication Number Publication Date
CN116521693A true CN116521693A (en) 2023-08-01

Family

ID=87391519

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310463344.5A Pending CN116521693A (en) 2023-04-26 2023-04-26 DDL statement execution method, device, equipment and medium

Country Status (1)

Country Link
CN (1) CN116521693A (en)

Similar Documents

Publication Publication Date Title
CN111898139B (en) Data reading and writing method and device and electronic equipment
US11556666B2 (en) Data access policy management
US20050102255A1 (en) Computer-implemented system and method for handling stored data
Binani et al. SQL vs. NoSQL vs. NewSQL-a comparative study
US11698893B2 (en) System and method for use of lock-less techniques with a multidimensional database
US9245003B2 (en) Method and system for memory efficient, update optimized, transactional full-text index view maintenance
WO2020041950A1 (en) Data update method, device, and storage device employing b+ tree indexing
US20180060362A1 (en) Method and system for implementing distributed lobs
CN113094387A (en) Data query method and device, electronic equipment and machine-readable storage medium
US9390111B2 (en) Database insert with deferred materialization
US9672231B2 (en) Concurrent access for hierarchical data storage
CN109614411B (en) Data storage method, device and storage medium
CN115729951B (en) Data query method, system, device and computer readable storage medium
US11962686B2 (en) Encrypting intermediate data under group-level encryption
US11580251B1 (en) Query-based database redaction
CN116521693A (en) DDL statement execution method, device, equipment and medium
US11880495B2 (en) Processing log entries under group-level encryption
CN104239576A (en) Method and device for searching for all lines in column values of HBase list
CN115757526B (en) Metadata management method, device, equipment and computer storage medium
US11907162B2 (en) Minimizing data volume growth under encryption changes
US11973763B1 (en) Events account for native app event sharing
US20230195747A1 (en) Performant dropping of snapshots by linking converter streams
WO2017007511A1 (en) Data management using index change events
US20230188324A1 (en) Initialization vector handling under group-level encryption
Savaliya et al. A Comparative Study of Andrew File System and Hadoop Distributed File System Framework to Manage Big Data

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40097378

Country of ref document: HK