WO2024037223A1 - 数据操作方法及装置 - Google Patents
数据操作方法及装置 Download PDFInfo
- Publication number
- WO2024037223A1 WO2024037223A1 PCT/CN2023/104518 CN2023104518W WO2024037223A1 WO 2024037223 A1 WO2024037223 A1 WO 2024037223A1 CN 2023104518 W CN2023104518 W CN 2023104518W WO 2024037223 A1 WO2024037223 A1 WO 2024037223A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- data
- table group
- database
- application
- grouping
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 82
- 238000011084 recovery Methods 0.000 claims description 52
- 230000015654 memory Effects 0.000 claims description 29
- 238000012545 processing Methods 0.000 claims description 21
- 230000010076 replication Effects 0.000 claims description 16
- 238000004590 computer program Methods 0.000 claims description 12
- 238000007726 management method Methods 0.000 description 77
- 235000019580 granularity Nutrition 0.000 description 50
- 230000006870 function Effects 0.000 description 17
- 238000004891 communication Methods 0.000 description 16
- 238000010586 diagram Methods 0.000 description 10
- 238000013439 planning Methods 0.000 description 10
- 230000008859 change Effects 0.000 description 9
- 230000003287 optical effect Effects 0.000 description 6
- 230000008569 process Effects 0.000 description 6
- 206010047289 Ventricular extrasystoles Diseases 0.000 description 5
- 238000005129 volume perturbation calorimetry Methods 0.000 description 5
- 238000005192 partition Methods 0.000 description 4
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000003068 static effect Effects 0.000 description 3
- 238000009434 installation Methods 0.000 description 2
- 230000003362 replicative effect Effects 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 238000013480 data collection Methods 0.000 description 1
- 238000013523 data management Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 238000004549 pulsed laser deposition Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
Definitions
- This application relates to the technical field of database (DB), and in particular to a data operation method and device.
- the management of data through the database includes: recording data through the database, creating snapshots based on the data stored in the database, creating backups and data recovery, etc.
- the database records data through data tables.
- data in the database can be operated on at two granularities. These two granularities are database granularity and data table granularity.
- the operations on data in the database include: operations based on all data in the entire database, and operations based on data in a single data table.
- the snapshot when creating a snapshot based on the data in the database, the snapshot can be created based on the data in the entire database, or the snapshot can be created based on the data in a specified data table in the database.
- This application provides a data operation method and device. This application improves the efficiency of operating data in the database.
- the technical solutions provided by this application are as follows:
- this application provides a data operation method.
- the method includes: receiving an application instruction for a table group in a database, the database includes one or more table groups, the table group includes one or more data tables, and data is recorded in the data table; based on the application instruction, determining a target indicated by the application instruction Table grouping; based on the data in the target table grouping, perform the application operation indicated by the application instruction.
- this application increases the granularity of table grouping, enriches the granularity of operating data in the database, and makes it possible to target multiple data tables and
- operations on the data in the database are performed based on the grouping granularity of the table, which improves the efficiency of database management, enriches the level of database management, and helps to improve the availability and availability of the database. reliability.
- problems caused by managing the entire database or data recorded in a single data table are avoided, the performance of operations performed on the database is guaranteed, and the requirements for database planning are reduced.
- the application operation includes one or more of the following: snapshot operation, backup operation, backup recovery operation, point-in-time recovery operation, and asynchronous replication operation.
- Performing a snapshot operation based on the data in the table grouping means: creating a snapshot for the data in the table grouping.
- creating snapshots for data in a table group you can create consistent snapshots for multiple data tables in the table group, improving the efficiency of creating snapshots.
- Performing a backup operation based on the data in the table group means: creating a backup for the data in the table group.
- creating backups for data in a table group you can create consistent backups for multiple data tables in the table group, improving the efficiency of creating backups.
- Performing a backup and recovery operation based on the data in the table group means: creating a backup for the data in the table group and performing data recovery based on the backup.
- creating a backup for the data in the table group and performing data recovery based on the backup you can create consistent backups for multiple data tables in the table group and improve the efficiency of data recovery based on backup.
- Performing a point-in-time recovery operation based on the data in the table grouping refers to performing data recovery based on the data in the table grouping at a specified point in time.
- the efficiency of data recovery can be improved.
- Performing an asynchronous copy operation based on the data in the table group refers to asynchronously copying the data in the table group.
- asynchronously replicating data in a table group consistent replication can be performed for multiple data tables in the table group, improving the efficiency of asynchronous replication.
- the method further includes: receiving a configuration instruction indicating that the data table is configured with a table group to which it belongs; and based on the configuration instruction, configuring the data table with the table group to which it belongs.
- a configuration directive indicates a configuration operation that configures a data table into the table grouping to which it belongs.
- configuring the table group to which the data table belongs includes one or more of the following: creating a data table and specifying the table group to which the data table belongs, and modifying the table group to which the data table belongs.
- modifying the table group to which the data table belongs may include: modifying the table group to which the data table belongs from one table group to another table group, and modifying the table group to which the data table belongs so that the data table no longer belongs to any table group.
- the method further includes: receiving a management instruction instructing to manage the table group; and performing a management operation on the table group based on the management instruction.
- a management instruction instructing to manage the table group
- the management operations include one or more of the following: creating a specified table group, deleting a specified table group, modifying information related to a specified table group, querying information related to a specified table group, and querying all data in the database. Information about table grouping.
- Creating a specified table group means: creating a table group with a specified name in the database. Creating a table group here can be understood as creating an empty set of data tables. Subsequently, data tables belonging to this table group can be added to the table group through other methods. Alternatively, when creating a table group, you can also specify the data tables that belong to the table group. For example, the name or identifier of the data table belonging to the table group may be carried in the management instruction indicating the creation of the table group to indicate the creation of the table group and the data tables belonging to the table group.
- users need to perform operations on database data according to the granularity of table groupings, they can create table groups in the database in advance to divide the data tables into corresponding table groups, and then perform operations on the data at the granularity of table groupings.
- Deleting the specified table group means deleting the existing table group with the specified name in the database. It should be noted that deleting a table group means deleting the range division of the table group without deleting the data tables and their data that originally belong to the table group. In this way, after the table group is deleted, the table group does not exist in the database, but the data table and its data that originally belonged to the table group are still recorded in the database, but the data table and its data no longer belong to the table group. When the user determines that some table groups are not needed, the corresponding table groups can be deleted.
- Modifying the information related to the specified table group means deleting the information related to the table group with the specified name that already exists in the database.
- Querying the relevant information of the specified table group means: querying the relevant information of the table group with the specified name that already exists in the database.
- the relevant information of the table group can be queried so that the corresponding operation can be performed based on the relevant information of the table group.
- Querying the relevant information of all table groups in the database means: querying the relevant information of all table groups existing in the database.
- the relevant information of the table group can be queried so that the corresponding operation can be performed based on the relevant information of the table group.
- the related information of table grouping is some basic information of table grouping.
- the information related to the table group includes: the description information of the table group, snapshot strategy, backup strategy, backup recovery strategy, point-in-time recovery strategy and asynchronous replication strategy, as well as the data tables included in the table group.
- the data tables included in the table group may or may not have correlation.
- the user may specify the data tables included in the table group.
- this application provides a data operation device.
- the device includes: a receiving module, configured to receive application instructions for table grouping in a database.
- the database includes one or more table groups, and the table grouping includes one or more data.
- the table contains data recorded in the data table; the determination module is used to determine the target table group indicated by the application instruction based on the application instruction; the processing module is used to perform the application operation indicated by the application instruction based on the data in the target table group.
- the application operation includes one or more of the following: snapshot operation, backup operation, backup recovery operation, point-in-time recovery operation, and asynchronous replication operation.
- the receiving module is also configured to receive a configuration instruction indicating that the data table is configured with the table group to which it belongs; the processing module is also configured to configure the data table with the table group to which it belongs based on the configuration instruction.
- configuring the table group to which the data table belongs includes one or more of the following: creating a data table and specifying the table group to which the data table belongs, and modifying the table group to which the data table belongs.
- the receiving module is also configured to receive a management instruction indicating management of the table group; the processing module is also configured to perform management operations on the table group based on the management instruction.
- the management operations include one or more of the following: creating a table group, deleting a table group, modifying information related to a table group, querying information related to a table group, and querying information related to all table groups in the database.
- the related information of the table group includes: the description information of the table group, snapshot strategy, backup strategy, backup recovery strategy, point-in-time recovery strategy and asynchronous replication strategy, as well as the data tables included in the table group.
- this application provides a computing device, including a memory and a processor.
- the memory stores program instructions, and the processor runs Program instructions are used to execute the method provided in the first aspect of the application and any possible implementation manner thereof.
- this application provides a computer cluster, including multiple computing devices.
- the multiple computing devices include multiple processors and multiple memories.
- Program instructions are stored in the multiple memories, and the multiple processors run the program instructions.
- the computer cluster is caused to execute the method provided in the first aspect of this application and any possible implementation manner thereof.
- the application provides a computer-readable storage medium.
- the computer-readable storage medium is a non-volatile computer-readable storage medium.
- the computer-readable storage medium includes program instructions. When the program instructions are executed on a computing device, When running, the computing device is caused to execute the method provided in the first aspect of the application and any possible implementation manner thereof.
- this application provides a computer program product containing instructions.
- the computer program product When the computer program product is run on a computer, it causes the computer to execute the method provided in the first aspect of this application and any possible implementation thereof.
- Figure 1 is a schematic structural diagram of an implementation environment involved in a data operation method provided by an embodiment of the present application
- Figure 2 is a schematic structural diagram of an implementation environment involved in another data operation method provided by an embodiment of the present application
- Figure 3 is a schematic structural diagram of an implementation environment involved in yet another data operation method provided by an embodiment of the present application.
- Figure 4 is a flow chart of a data operation method provided by an embodiment of the present application.
- Figure 5 is a schematic diagram of a database provided by an embodiment of the present application.
- Figure 6 is a schematic structural diagram of a data operation device provided by an embodiment of the present application.
- Figure 7 is a schematic structural diagram of a computing device provided by an embodiment of the present application.
- Figure 8 is a schematic structural diagram of a computing device cluster provided by an embodiment of the present application.
- a database is a collection of data that organizes, stores, and manages data according to a data structure. Users can access the database through the client and perform operations such as adding, deleting, modifying, and querying data in the database.
- the human resources department of an enterprise or public institution can store the basic information of its employees (such as employee number, name, age, gender, place of origin, salary, resume, etc.) in a table.
- the data set including this table can Think of it as a database, where the data collection usually includes other tables, and different tables can be used to store different categories of data.
- the personnel department can query the basic information of employees as needed.
- a relational database refers to a database that uses a relational model to organize data. It stores data in the form of rows and columns. Usually a row of data is the smallest unit of data reading and writing, also called a record.
- a relational database a series of rows and columns is called a data table, and a data table can be regarded as a two-dimensional table.
- the relational model can be simply understood as a two-dimensional tabular model.
- data is stored in a structured manner.
- Each field of each data table is defined according to preset rules (that is, the structure of the table is predefined), and then stored according to the structure of the data table.
- data The data in each field in the data table is also called field data.
- the aforementioned data information is field data.
- Non-relational databases are also called NoSQL (not only structured query language), which means databases that are not just structured query language.
- Non-relational databases store data based on the correspondence between primary keys (keys) and values (values), and also store data in the form of data tables.
- data in the database can be operated on at two granularities. These two granularities are database granularity and data table granularity.
- the operations on data in the database include: operations based on all data in the entire database, and operations based on data in a single data table.
- the snapshot when creating a snapshot based on the data in the database, the snapshot can be created based on the data in the entire database, or the snapshot can be created based on the data in a specified data table in the database.
- a snapshot is a static view of the database at a certain point in time, and snapshots are widely used in different scenarios. For example, users generate reports and maintain historical data based on data at the snapshot moment.
- snapshot mirror data Users access snapshot mirror data to reduce database load. Users restore the system to the state when the snapshot was created based on snapshots to avoid the impact of user and operational errors. Similarly, backup and recovery based on snapshots are also implemented at the database granularity and data table granularity.
- the operation is either based on the data recorded in the entire database, or on a specified data table in the database.
- the amount of data recorded in the database is relatively large, and the database may include data that does not require operations, which will sacrifice the performance of the operations performed.
- operations need to be performed on the data recorded in the entire database, which may include some data that does not need to be backed up, which will affect the performance of backup and recovery.
- the capacity of a single data table needs to be divided into larger sizes when planning the database, which will result in a larger data volume for a single data table. Excessive expansion, and dare not divide the table easily.
- the data required for the operation may be recorded in multiple data tables, and the operation needs to be performed on multiple data tables respectively. Therefore, whether the operation is based on the database granularity or the data table granularity, the efficiency of the database operation will be poor, and the current database operation has high requirements on database planning.
- the embodiment of the present application provides a data operation method.
- the method includes: after receiving an application instruction for table grouping in a database, based on the application instruction, determining a target table group indicated by the application instruction, and then, based on data in the target table group, executing an application operation indicated by the application instruction.
- the database includes one or more table groups
- the table group includes one or more data tables
- data is recorded in the data tables
- the application instruction instructs to perform application operations based on the data in the table group.
- the table group includes one or more data tables, and when performing an operation on the data, the application operation can be performed based on the data in the target table group indicated by the application instruction. .
- this application increases the granularity of table grouping, enriches the granularity of operating data in the database, and makes it possible to target multiple data tables and In scenarios where the data in the entire database is not operated, operations on the data in the database are performed based on the table grouping granularity, which improves the efficiency of database management and enriches the level of database management. Moreover, problems caused by managing the entire database or data recorded in a single data table are avoided, the performance of operations performed on the database is guaranteed, and the requirements for database planning are reduced.
- Figure 1 is a schematic structural diagram of an implementation environment involved in a data operation method provided by an embodiment of the present application.
- the implementation environment includes: a computing device 10.
- a database may be deployed in the computing device 10, and a user (ie, a user) of the computing device 10 may operate on the data in the database.
- a user ie, a user
- the user needs to operate on the data in the database, he can trigger the operation instructions of the computing device 10 through some operations, so that the computing device 10 performs the operations indicated by the operation instructions on the data in the database based on the operation instructions.
- the data operation method provided by the embodiment of the present application can be implemented by running an executable program on the computing device 10 .
- the executable program of the data operation method may be presented in the form of an application installation package. After the application installation package is installed in the computing device 10 , the data operation method can be implemented by running the executable program.
- the computing device 10 may be a terminal.
- the terminal may be a computer, a personal computer, a portable mobile terminal, a multimedia player, an e-book reader or a wearable device, etc.
- the implementation environment may include computing device 10 and client 20 .
- Client 20 is able to establish a communication connection with computing device 10 .
- a communication connection may be established between the client 20 and the computing device 10 through a network.
- the network may be a local area network, the Internet, or other networks, which are not limited in the embodiments of this application.
- a user may interact with computing device 10 through client 20 .
- the user can send operation instructions and the like to the computing device 10 through the client 20 .
- the computing device 10 is configured to execute the data operation method provided by the embodiment of the present application based on the operation instructions.
- the computing device 10 can determine the target table group indicated by the application instruction according to the instruction of the application instruction, and execute the application instruction instruction based on the data in the target table group. application operations.
- the computing device 10 can perform operations indicated by the corresponding instructions based on the corresponding instructions.
- the client 20 can be a computer, a personal computer, a laptop, a mobile phone, a smart phone, a tablet, a cloud host, a portable mobile terminal, a multimedia player, an e-book reader, a wearable Equipment, smart home appliances, artificial intelligence equipment, smart wearable devices, smart vehicle equipment or Internet of Things equipment, etc.
- Computing device 10 may be a server.
- the server can be one server, or a server cluster composed of several servers, or a cloud computing service center. Among them, a large number of basic resources owned by cloud service providers are deployed in the cloud computing service center. For example, computing resources, storage resources, network resources, etc. are deployed in a cloud computing service center.
- the cloud computing service center can utilize this large amount of basic resources to run the database and implement the data operation method provided by the embodiments of this application.
- the database deployed thereon may be a distributed database (DDB).
- Distributed databases usually include multiple data partitions (chunks), server clusters or cloud computing services One data partition of the database can be deployed on each server 101 in the center.
- the server When the server is implemented through a cloud computing service center. Users can access the cloud platform through the client 20 and use the database through the cloud platform. At this time, the database functions provided by the server to users and the functions of operating data in the database can be abstracted into a database cloud service by the cloud service provider on the cloud platform. After users purchase database cloud services on the cloud platform, the cloud platform can use the resources in the cloud computing center to provide relevant cloud services to the users.
- the cloud platform may be a central cloud cloud platform, an edge cloud cloud platform, or a cloud platform including a central cloud and an edge cloud, which are not specifically limited in the embodiments of this application.
- the computing device 10 can also be implemented through other resource platforms besides the cloud platform, which is not specifically limited in the embodiments of this application.
- the server can be implemented through resources in other resource platforms and provide database-related services to users.
- a storage pool is also configured for the database.
- the storage pool is used to store data
- the database is used to manage the data in the storage pool. That is, the data managed by the database is actually stored in the storage pool, and the database is actually the execution engine that operates on the data in the storage pool.
- a database is used to perform operations such as extracting, transforming, and loading data from a storage pool.
- some data can also be stored in the database, such as metadata of the data in the storage pool.
- metadata is the description information used to describe the data in the storage pool.
- the description information may include: magic words, cyclic redundancy check (CRC), version number, data key value, offset (offset), data length (length), etc. .
- the data operation method includes the following steps:
- Step 401 Receive a management instruction instructing to manage table groups in the database.
- the database includes one or more table groups, and the table group includes one or more data tables, and data is recorded in the data tables.
- Management instructions instruct the execution of management operations with table grouping as the operation object.
- users of the database need to perform operations related to table grouping on the database, they can trigger management instructions through some operations, so that the computing device can perform management operations with table grouping as the operation object based on the management instructions.
- the database includes multiple data partitions, some or all of the data partitions include one or more table groups, and each table group includes one or more data tables.
- the management operations include one or more of the following: creating a specified table group, deleting a specified table group, modifying information related to a specified table group, querying information related to a specified table group, and querying all data in the database.
- Information about table grouping is some basic information of table grouping.
- the relevant information of the table group includes: the description information of the table group, snapshot strategy, backup strategy, backup recovery strategy, point-in-time recovery (PITR) strategy and asynchronous replication strategy, as well as the table grouping includes data sheet.
- PITR point-in-time recovery
- Creating a specified table group means: creating a table group with a specified name in the database.
- a management instruction instructing the creation of a specified table group may be: Create Table Group(Table Group Name), where Table Group Name indicates the name of the created table group.
- Creating a table group here can be understood as creating an empty set of data tables. Subsequently, data tables belonging to this table group can be added to the table group through other methods.
- the name or identifier of the data table belonging to the table group may be carried in the management instruction indicating the creation of the table group to indicate the creation of the table group and the data tables belonging to the table group.
- users need to perform operations on database data according to the granularity of table groupings, they can create table groups in the database in advance to divide the data tables into corresponding table groups, and then perform operations on the data at the granularity of table groupings.
- Deleting the specified table group means deleting the existing table group with the specified name in the database.
- a management instruction instructing to delete a specified table group may be: Delete Table Group(Table Group Name), where Table Group Name indicates the name of the created table group.
- deleting a table group means deleting the range division of the table group without deleting the data tables and their data that originally belong to the table group. In this way, after the table group is deleted, the table group does not exist in the database, but the data table and its data that originally belonged to the table group are still recorded in the database, but the data table and its data no longer belong to the table group. When the user determines that some table groups are not needed, the corresponding table groups can be deleted.
- Modifying the information related to the specified table group means deleting the information related to the table group with the specified name that already exists in the database.
- the management instruction instructing to modify the related information of the specified table group can be: Change Table Group (Table Group Name), Table Group Name indicates the name of the table group whose related information needs to be modified.
- the management instruction may also carry relevant information that needs to be modified. For example, when the name of a table group needs to be modified, the management instruction can carry two names. The first name is used to indicate the original name of the table group, and the second name is used to indicate the modified name of the table group. When the management instructions carry other related information, the implementation methods will not be listed here.
- Querying the relevant information of the specified table group means: querying the relevant information of the table group with the specified name that already exists in the database.
- the management instruction that instructs to query relevant information of a specified table group can be: Show Table Group (Table Group Name), where Table Group Name indicates the name of the created table group.
- Querying the relevant information of all table groups in the database means: querying the relevant information of all table groups existing in the database.
- the management instruction that instructs to query the relevant information of all table groups in the database can be: List Table Group(). Since this management instruction is equivalent to traversing all table groups existing in the database, so in this management instruction No parameters are carried, that is, the name of the table group is not carried.
- the relevant information of the table group can be queried so that the corresponding operation can be performed based on the relevant information of the table group.
- Step 402 Based on the management instructions, perform management operations on the table group.
- the computing device After the computing device receives the management instruction, it can perform the management operations indicated by the management instruction. For example, when the management instruction received by the computing device is Create Table Group (GROUP1), it can be seen that the management operation indicated by the management instruction is to create a table group named GROUP1. After receiving the management instruction, the computing device can create a table group in the database. Group a table and name the table group GROUP1. For another example, when the management command received by the computing device is Show Table Group (GROUP1), it can be seen that the management operation indicated by the management command is to query the relevant information of the table group GROUP1, and the relevant information of the table group in the database is the time of the table grouping. The point recovery strategy and the data tables included in the table grouping. After receiving the management instruction, the computing device can query the database for the point-in-time recovery strategy of table group GROUP1 and the data tables it includes, and return the query results.
- GROUP1 Create Table Group
- GROUP1 Show Table Group
- the computing device
- the function of performing management operations on data based on management instructions can be implemented in a variety of ways.
- it can be implemented by calling an application programming interface (API).
- API application programming interface
- the computing device can be configured with an application program interface for implementing all database operations it supports. After the computing device receives the management instruction, it can call the application program interface for implementing the management operation indicated by the management instruction to implement the management operation through it. Management actions directed by management instructions.
- the computing device can perform management operations in the database with the table group as the operation object by receiving management instructions and performing corresponding management operations on the table group based on the management instructions.
- the granularity of table grouping is added, which can facilitate operations on data in the database based on the table grouping granularity and help improve the performance of operations performed on the database.
- the computing device can increase the granularity of table grouping in the database based on management execution, when planning the database, there is no need to worry too much about the difference between the data volume of the entire database and the data volume of a single data table, which reduces the need for the database. Planning requirements.
- Step 403 Receive a configuration instruction instructing the data table to configure the table group to which it belongs.
- a configuration directive indicates a configuration operation that configures a data table into the table grouping to which it belongs.
- users of the database need to configure the table group to which the data table belongs, they can trigger configuration instructions through some operations, so that the computing device can perform the configuration operation of configuring the table group to which the data table belongs based on the configuration instructions.
- configuring the table group to which the data table belongs includes one or more of the following: creating a data table and specifying the table group to which the data table belongs, and modifying the table group to which the data table belongs.
- creating a data table and specifying the table group to which the data table belongs when the user needs to create a data table in the database, the user can trigger the configuration instruction of the table group to which the data table belongs while creating the data table, so that the computing device can create a data table based on the configuration instruction.
- the table group to which the data table configuration belongs belongs.
- the user when the user creates a data table, the user does not specify the table group to which the data table belongs. During subsequent operations, the user wants to specify the table group to which the data table belongs.
- the user can trigger the The configuration instruction causes the computing device to divide the data table into corresponding table groups based on the configuration instruction. For another example, in another scenario, when the user creates a data table, the user specifies the table group to which the data table belongs. However, during subsequent operations, the user needs to group the data table to which it belongs based on application requirements. If the corresponding table grouping is modified, the user can trigger the configuration instruction, causing the computing device to reclassify the data table into the corresponding table grouping based on the configuration instruction. Modifying the table group to which the data table belongs may include: modifying the table group to which the data table belongs from one table group to another table group, and modifying the table group to which the data table belongs so that the data table no longer belongs to any table group.
- the configuration instruction can be: Create Table (Table Name, Table Group Name), Table Name indicates the name of the data table that needs to be created, Table Group Name Indicates the name of the table group to which the created data table belongs. It should be noted that when the configuration instruction is Create Table (Table Name), since the configuration instruction does not carry the name of the table group, Table Group Name, it can be considered that the table group to which the data table belongs was not specified when the data table was created.
- the configuration instruction can be: Change Table (Table Name, Table Group Name), Table Name indicates the name of the data table to which the table group belongs needs to be modified, and Table Group Name indicates the After the modification is completed, the name of the table group to which the data table belongs is the name of the table group to which the data table belongs.
- This configuration directive is used to instruct the modification of the table group to which the data table belongs from one table group to another.
- the configuration instruction can be Change Table (Table Name)
- Table Group Name the configuration instruction is used to instruct the data table to be modified to belong to the table group so that the data table no longer belongs to any table. Group.
- Step 404 Based on the configuration instruction, configure the table group to which the data table belongs.
- the computing device After the computing device receives the configuration instruction, it can perform the configuration operation indicated by the configuration instruction. For example, when the configuration instruction received by the computing device is Change Table (Table1, GROUP1), it can be seen that the configuration operation indicated by the configuration instruction is to modify the table group to which the data table named Table1 belongs to table group GROUP1. When the computing device receives After this configuration instruction, the table group to which data table Table1 belongs can be modified to table group GROUP1. For another example, when the configuration instruction received by the computing device is Change Table (Table1), assuming that the table group to which the data table Table1 originally belongs is the table group GROUP1, it can be seen that the configuration operation indicated by the configuration instruction is to change the data table originally belonging to the table group GROUP1. Table1 is modified so that it no longer belongs to any table group. After receiving the configuration instruction, the computing device can modify the data table Table1 that originally belonged to table group GROUP1 to no longer belong to any table group.
- Change Table Table1, GROUP1
- Table1 is modified so
- the function of performing configuration operations on data based on configuration instructions can be implemented in a variety of ways.
- it can be implemented by calling an application program interface.
- the computing device may be configured with an application program interface for implementing all database operations it supports. After receiving the configuration instruction, the computing device may call the application program interface for implementing the configuration operation indicated by the configuration instruction to implement the configuration operation through it. The configuration operation indicated by the configuration directive.
- the computing device can configure the table group to which the data table belongs according to application requirements by receiving configuration instructions and performing corresponding configuration operations on the data table based on the configuration instructions, thereby realizing
- the on-demand grouping of data tables enriches the level of database management and improves the flexibility of database operations.
- Step 405 Receive application instructions for table grouping in the database.
- the apply directive instructs you to perform an apply operation based on the data in the table grouping.
- a user using a database needs to perform an application operation based on the data in the table grouping, he or she can trigger an application instruction through some operations, so that the computing device can perform an application operation based on the data in the table grouping based on the application instruction.
- application operations include one or more of the following: snapshot operations, backup operations, backup recovery operations, point-in-time recovery operations, and asynchronous replication operations.
- Performing a snapshot operation based on the data in the table grouping means: creating a snapshot for the data in the table grouping.
- the application instruction that instructs to perform a snapshot operation based on the data in the table group can be: Create Snapshot(Snap Name, Table Group Name), Snap Name indicates the name of the snapshot created, and Table Group Name indicates the name used to create the snapshot.
- the name of the table group can be: Create Snapshot (Table Group Name).
- the computing device can name the created snapshot by itself and feedback the snapshot command to the user.
- the computing device can name the snapshot according to the creation time, or the computing device can name the snapshot according to the user's account, etc.
- This embodiment of the present application does not specifically limit this.
- Performing a backup operation based on the data in the table group means: creating a backup for the data in the table group.
- the application instruction instructing to perform a backup operation based on the data in the table group may be: Create Backup (Table Group Name), where the Table Group Name indicates the name of the table group used to create the backup.
- Performing a backup and recovery operation based on the data in the table group means: creating a backup for the data in the table group and performing data recovery based on the backup.
- the application instruction that instructs to perform a backup recovery operation based on the data in the table group can be: Create Backup and Recovery (Table Group Name), where Table Group Name indicates the name of the table group used to create the backup.
- the application instruction can also indicate the strategy used for backup and recovery. In this case, the application instruction can also indicate the corresponding strategy.
- Performing a point-in-time recovery operation based on the data in the table grouping refers to performing data recovery based on the data in the table grouping at a specified point in time.
- the application instruction that instructs to perform a point-in-time recovery operation based on the data in the table group can be: Create PITR (Table Group Name, Time), Table Group Name indicates the name of the table group used for data recovery, and Time indicates Data at a specified point in time used for data recovery.
- the application instruction can also indicate other strategies of PITR.
- application instructions can also carry parameters indicating these policies.
- Performing an asynchronous copy operation based on the data in the table group refers to asynchronously copying the data in the table group.
- an application instruction that instructs to perform an asynchronous replication operation based on data in a table group can be: Create Replication(Table Group Name), where Table Group Name indicates the name of the table group used to create the snapshot.
- Step 406 Based on the application instruction, determine the target table group indicated by the application instruction.
- the computing device After the computing device receives the application instruction, it can perform the application operation indicated by the application instruction.
- the application operation due to the added granularity of table grouping, when performing an application operation on the data in the database, the application operation can be performed on the table grouping.
- the apply instruction may indicate the table grouping for which the apply operation is performed.
- the computing device After receiving the application instruction, the computing device can first determine the target table group indicated by the application instruction, so as to perform the corresponding application operation based on the data in the target table group. For example, application instructions usually carry a name indicating a table group, and then the table group indicated by the name can be determined as the target table group.
- Step 407 Based on the data in the target table group, execute the application operation indicated by the application instruction.
- the computing device can perform the application operation indicated by the application instruction based on the data in the target table group. For example, when the application instruction received by the computing device is Create Snapshot (Snap1, GROUP1), it can be seen that the application operation indicated by the application instruction is to create a snapshot for the data in the table group GROUP1, and the name of the created snapshot is Snap1, then the computing device After receiving the application instruction, it may first be determined according to the application instruction that the object for creating the snapshot is table group GROUP1, that is, the target table group is table group GROUP1. Then create a snapshot of the data in the table group GROUP1 and name the created snapshot Snap1.
- Create Snapshot Snap1, GROUP1
- the computing device After receiving the application instruction, it may first be determined according to the application instruction that the object for creating the snapshot is table group GROUP1, that is, the target table group is table group GROUP1. Then create a snapshot of the data in the table group GROUP1 and name the created snapshot Snap1.
- the function of performing application operations on data based on application instructions can be implemented in a variety of ways.
- it can be implemented by calling an application program interface.
- the computing device may be configured with an application program interface for implementing all database operations it supports. After receiving the application instruction, the computing device may call the application program interface for implementing the application operation indicated by the application instruction to implement the application program interface through it. The application operation indicated by the application directive.
- the computing device can perform application operations with table grouping as the operation object in the database by receiving application instructions and performing corresponding application operations on the table grouping based on the application instructions.
- the granularity of table grouping is added, which can facilitate operations on data in the database based on the table grouping granularity and help improve the performance of application operations performed on the database.
- the computing device can increase the granularity of table grouping in the database according to application execution, when planning the database, there is no need to worry too much about the difference between the data volume of the entire database and the data volume of a single data table, which reduces the need for database Planning requirements.
- embodiments of the present application provide a data operation method.
- the method includes: after receiving an application instruction for table grouping in the database, based on the application instruction, determine the target table group indicated by the application instruction, and then, based on the target The data in the table group performs the application operations indicated by the application instructions.
- the table groups include one or more data data table, and when performing an operation on the data, the application operation can be performed based on the data in the target table group indicated by the application instruction.
- this application increases the granularity of table grouping, enriches the granularity of operating data in the database, and makes it possible to target multiple data tables and
- operations on the data in the database are performed based on the grouping granularity of the table, which improves the efficiency of database management, enriches the level of database management, and helps to improve the availability and availability of the database. reliability.
- problems caused by managing the entire database or data recorded in a single data table are avoided, the performance of operations performed on the database is guaranteed, and the requirements for database planning are reduced.
- FIG. 6 is a schematic structural diagram of a data operation device provided by an embodiment of the present application. Based on the following modules shown in Figure 6, the data operation device shown in Figure 6 can perform all or part of the operations shown in Figure 4 above. It should be understood that the device may include more additional modules than the modules shown or omit some of the modules shown therein, and the embodiments of the present application are not limited to this. As shown in Figure 6, the data operation device 600 includes:
- the receiving module 601 is used to receive application instructions for table grouping in the database.
- the database includes one or more table groups.
- the table grouping includes one or more data tables, and data is recorded in the data tables.
- the determining module 602 is configured to determine the target table group indicated by the application instruction based on the application instruction.
- the processing module 603 is configured to execute the application operation indicated by the application instruction based on the data in the target table group.
- the application operation includes one or more of the following: snapshot operation, backup operation, backup recovery operation, point-in-time recovery operation, and asynchronous replication operation.
- the receiving module 601 is also configured to receive a configuration instruction indicating that the data table is configured with the table group to which it belongs.
- the processing module 603 is also used to configure the table group to which the data table belongs based on the configuration instructions.
- configuring the table group to which the data table belongs includes one or more of the following: creating a data table and specifying the table group to which the data table belongs, and modifying the table group to which the data table belongs.
- the receiving module 601 is also configured to receive a management instruction instructing to manage the table grouping.
- the processing module 603 is also used to perform management operations on table groups based on management instructions.
- the management operations include one or more of the following: creating a table group, deleting a table group, modifying information related to a table group, querying information related to a table group, and querying information related to all table groups in the database.
- the related information of the table group includes: the description information of the table group, snapshot strategy, backup strategy, backup recovery strategy, point-in-time recovery strategy and asynchronous replication strategy, as well as the data tables included in the table group.
- the determining module determines the target table grouping indicated by the application instruction based on the application instruction
- the processing module determines the target table grouping indicated by the application instruction based on the target table grouping.
- the data is used to perform the application operations indicated by the application instructions.
- the table group since the database includes one or more table groups, the table group includes one or more data tables, and when performing an operation on the data, the application operation can be performed based on the data in the target table group indicated by the application instruction. .
- this application increases the granularity of table grouping, enriches the granularity of operating data in the database, and makes it possible to target multiple data tables and
- operations on the data in the database are performed based on the grouping granularity of the table, which improves the efficiency of database management, enriches the level of database management, and helps to improve the availability and availability of the database. reliability.
- problems caused by managing the entire database or data recorded in a single data table are avoided, the performance of operations performed on the database is guaranteed, and the requirements for database planning are reduced.
- the receiving module 601, the determining module 602 and the processing module 603 can all be implemented by software, or can be implemented by hardware. Illustratively, the following takes the receiving module 601 as an example to introduce the implementation of the receiving module 601. Similarly, the implementation of the determination module 602 and the processing module 603 may refer to the implementation of the receiving module 601.
- the receiving module 601 may include code running on a computing instance.
- the computing instance may include at least one of a physical host (computing device), a virtual machine, and a container.
- the above computing instance may be one or more.
- the receiving module 601 may include code running on multiple hosts/virtual machines/containers. It should be noted that multiple hosts/virtual machines/containers used to run the code can be distributed in the same region (region) or in different regions. Further Locally, multiple hosts/virtual machines/containers used to run the code can be distributed in the same availability zone (AZ) or in different AZs. Each AZ includes one data center or multiple Geographically close data centers. Among them, usually a region can include multiple AZs.
- the multiple hosts/VMs/containers used to run the code can be distributed in the same virtual private cloud (VPC), or across multiple VPCs.
- VPC virtual private cloud
- Cross-region communication between two VPCs in the same region and between VPCs in different regions requires a communication gateway in each VPC, and the interconnection between VPCs is realized through the communication gateway. .
- the receiving module 601 may include at least one computing device, such as a server.
- the receiving module 601 may also be a device implemented using an application-specific integrated circuit (ASIC) or a programmable logic device (PLD).
- ASIC application-specific integrated circuit
- PLD programmable logic device
- the above-mentioned PLD can be a complex programmable logical device (CPLD), a field-programmable gate array (field-programmable gate array, FPGA), a general array logic (generic array logic, GAL), or any combination thereof.
- CPLD complex programmable logical device
- FPGA field-programmable gate array
- GAL general array logic
- Multiple computing devices included in the receiving module 601 may be distributed in the same region or in different regions. Multiple computing devices included in the receiving module 601 may be distributed in the same AZ or in different AZs. Similarly, multiple computing devices included in the receiving module 601 may be distributed in the same VPC or in multiple VPCs.
- the plurality of computing devices may be any combination of computing devices such as servers, ASICs, PLDs, CPLDs, FPGAs, and GALs.
- the receiving module 601 can be used to perform any steps in the data grouping method
- the determining module 602 can be used to perform any steps in the data grouping method
- the processing module 603 can be used to perform data grouping.
- the steps that the receiving module 601, the determining module 602, and the processing module 603 are responsible for implementing can be specified as needed.
- the receiving module 601, the determining module 602, and the processing module 603 respectively implement different steps in the data grouping method. Realize all functions of data packet device.
- FIG. 7 is a schematic structural diagram of a computing device provided by an embodiment of the present application.
- the computing device 700 includes a processor 701 , a memory 702 , a communication interface 703 and a bus 704 .
- the processor 701, the memory 702, and the communication interface 703 implement communication connections between each other through the bus 704.
- Processor 701 may include a general-purpose processor and/or a special-purpose hardware chip.
- General-purpose processors can include: central processing unit (CPU), microprocessor or graphics processing unit (GPU).
- the CPU is, for example, a single-core processor (single-CPU) or a multi-core processor (multi-CPU).
- a dedicated hardware chip is a high-performance processing hardware module.
- Specialized hardware chips include at least one of a digital signal processor, ASIC, FPGA, or network processor (NP).
- the processor 701 may also be an integrated circuit chip with signal processing capabilities. During the implementation process, part or all of the functions of the data operation method of this application can be completed by instructions in the form of hardware integrated logic circuits or software in the processor 701 .
- the memory 702 is used to store computer programs, which include an operating system 702a and executable codes (ie, program instructions) 702b.
- the memory 702 is, for example, a read-only memory or other type of static storage device that can store static information and instructions, or a random access memory or other type of dynamic storage device that can store information and instructions, or an electrically erasable programmable memory device.
- the memory 702 is used to store outbound port queues, etc.
- the memory 702 exists independently, for example, and is connected to the processor 701 through a bus 704 . Or the memory 702 and the processor 701 are integrated together.
- the memory 702 can store executable code. When the executable code stored in the memory 702 is executed by the processor 701, the processor 701 is used to perform part or all of the functions of the data operation method provided by the embodiment of the present application. For the implementation method of the processor 701 executing this process, please refer to the relevant descriptions in the foregoing embodiments.
- the memory 702 may also include operating systems and other software modules and data required for running processes.
- the communication interface 703 uses a transceiver module such as but not limited to a transceiver to implement communication with other devices or communication networks.
- the communication interface 703 may be any one or any combination of the following devices: a network interface (such as an Ethernet interface), a wireless network card, and other devices with network access functions.
- Bus 704 is any type of communication bus used to interconnect internal components of a computing device (eg, memory 702, processor 701, communication interface 703).
- a computing device eg, memory 702, processor 701, communication interface 703
- system bus For example, system bus.
- This embodiment of the present application takes the interconnection of the above-mentioned devices inside the computing device through the bus 704 as an example.
- the above-mentioned devices inside the computing device 700 may also communicate with each other using other connection methods besides the bus 704.
- the above-described devices within the computing device 700 are interconnected through internal logical interfaces.
- the above-mentioned plurality of devices can be respectively arranged on independent chips, or at least part or all of them can be arranged on the same chip. Whether each device is independently installed on different chips or integrated on one or more chips often depends on the needs of product design.
- the embodiments of this application do not limit the specific implementation forms of the above devices.
- the descriptions of the processes corresponding to each of the above drawings have different emphases. For parts that are not detailed in a certain process, you can refer to the relevant descriptions of other processes.
- the above embodiments it may be implemented in whole or in part by software, hardware, firmware, or any combination thereof.
- software it may be implemented in whole or in part in the form of a computer program product.
- the computer program product that provides a program development platform includes one or more computer instructions. When these computer program instructions are loaded and executed on a computing device, the functions of the data operation method provided by the embodiments of the present application are fully or partially implemented.
- computer instructions may be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another.
- computer instructions may be transmitted over a wired connection from a website, computer, server or data center. (such as coaxial cable, optical fiber, digital subscriber line) or wireless (such as infrared, wireless, microwave, etc.) means to transmit to another website, computer, server or data center.
- the computer-readable storage medium stores computer program instructions that provide a program development platform.
- An embodiment of the present application also provides a computing device cluster.
- the computing device cluster includes at least one computing device.
- the computing device may be a server, such as a central server, an edge server, or a local server in a local data center.
- the computing device may also be a terminal device such as a desktop computer, a laptop computer, or a smartphone.
- the structure of at least one computing device included in the computing device cluster may refer to the computing device 700 shown in FIG. 7 .
- the same instructions for performing data manipulation methods may be stored in the memory 702 of one or more computing devices 700 in a cluster of computing devices.
- the memory 702 of one or more computing devices 700 in the computing device cluster may also store part of the instructions for executing the data operation method.
- a combination of one or more computing devices 700 may collectively execute instructions for performing data manipulation methods.
- memories 702 in different computing devices 700 in the computing device cluster can store different instructions, respectively used to execute part of the functions of the data grouping device. That is, instructions stored in the memory 702 in different computing devices 700 may implement the functions of one or more modules among the acquisition module, the determination module, and the grouping module.
- one or more computing devices in a cluster of computing devices may be connected through a network.
- the network may be a wide area network or a local area network, etc.
- Figure 8 shows a possible implementation.
- two computing devices 800A and 800B are connected through a network.
- the connection to the network is made through a communication interface in each computing device.
- computing devices 800A and 800B include a bus 802, a processor 804, a memory 806, and a communication interface 808.
- Stored in memory 806 in computing device 800A are instructions for performing the functions of the processing module.
- instructions for executing the functions of the determining module and the receiving module are stored in the memory 806 of the computing device 800B.
- computing device 800A shown in FIG. 8 may also be performed by multiple computing devices 800.
- the functions of computing device 800B may also be performed by multiple computing devices 800 .
- the deployment mode of the module used to implement the data operation method in the computing device can also be adjusted according to application requirements.
- An embodiment of the present application also provides a computer-readable storage medium, which is a non-volatile computer-readable storage medium.
- the computer-readable storage medium can be any available medium that a computing device can store or a data storage device such as a data center that contains one or more available media.
- the available media may be magnetic media (eg, floppy disk, hard disk, magnetic tape), optical media (eg, DVD), or semiconductor media (eg, solid state drive), etc.
- the computer-readable storage medium includes program instructions. When the program instructions are run on the computing device, the computing device implements the data operation method provided by the embodiments of the present application.
- An embodiment of the present application also provides a computer program product containing instructions.
- the computer program product may be a software or program product containing instructions capable of running on a computing device or stored in any available medium.
- the computer program product is run on the computer, the computer is caused to implement the data operation method provided by the embodiments of the present application.
- the information including but not limited to user equipment information, user personal information, etc.
- data including but not limited to data used for analysis, stored data, displayed data, etc.
- signals involved in this application All are authorized by the user or fully authorized by all parties, and the collection, use and processing of relevant data need to comply with relevant laws, regulations and standards of relevant countries and regions.
- the data tables and executable codes involved in this application were obtained with full authorization.
- the terms “first”, “second” and “third” are only used for description purposes and cannot be understood as indicating or implying relative importance.
- the term “at least one” refers to one or more, and the term “plurality” refers to two or more, unless expressly limited otherwise.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请公开了一种数据操作方法及装置,属于数据库技术领域。该方法包括:接收针对数据库中表分组的应用指令,数据库包括一个或多个表分组,表分组包括一个或多个数据表,数据表中记录有数据;基于应用指令,确定应用指令指示的目标表分组;基于目标表分组中的数据,执行应用指令指示的应用操作。本申请增加了表分组的粒度,丰富了对数据库中的数据进行操作时的粒度,提高了对数据库进行管理的效率。
Description
本申请要求于2022年08月18日提交的申请号为202210994110.9、发明名称为“数据操作方法及装置”的中国专利申请的优先权,及于2022年11月29日提交的申请号为202211513808.0、发明名称为“数据操作方法及装置”的中国专利申请的优先权,其全部内容通过引用结合在本公开中。
本申请涉及数据库(data base,DB)技术领域,特别涉及一种数据操作方法及装置。
随着大数据时代的到来,数据的使用量成倍增长,通过数据库对数据进行管理是一种有效的数据管理方式。例如,通过数据库对数据的管理包括:通过数据库记录数据、基于数据库存储的数据创建快照(snapshot)、创建备份与数据恢复等。
数据库通过数据表(table)记录数据。目前,可以在两种粒度对数据库中的数据进行操作。这两个粒度分别为数据库粒度和数据表粒度。则对数据库中数据进行操作包括:基于整个数据库中的所有数据进行操作,以及,基于单个数据表中的数据进行操作。例如,在一些非关系型的数据库中,在基于数据库中的数据创建快照时,可以根据基于整个数据库中的数据创建快照,或者,可以基于数据库中指定的数据表中的数据创建快照。
但是,基于这两个粒度对数据库进行操作的效率较差。
发明内容
本申请提供了一种数据操作方法及装置。本申请提高了对数据库中的数据进行操作的效率。本申请提供的技术方案如下:
第一方面,本申请提供了一种数据操作方法。该方法包括:接收针对数据库中表分组的应用指令,数据库包括一个或多个表分组,表分组包括一个或多个数据表,数据表中记录有数据;基于应用指令,确定应用指令指示的目标表分组;基于目标表分组中的数据,执行应用指令指示的应用操作。
这样一来,本申请在数据库的粒度和单个数据表的粒度的基础上,增加了表分组的粒度,丰富了对数据库中的数据进行操作时的粒度,使得能够在需要针对多个数据表且不是整个数据库的数据进行操作的场景中,针对该表分组粒度对数据库中的数据执行操作,提高了对数据库进行管理的效率,丰富了对数据库进行管理的层次,有助于提高数据库的可用性和可靠性。并且,避免了因对整个数据库或对单个数据表中记载的数据进行管理导致的问题,保证了对数据库执行的操作的性能,且降低了对数据库进行规划的要求。
可选地,应用操作包括以下一种或多种:快照操作、备份操作、备份恢复操作、时间点恢复操作和异步复制操作。
基于表分组中的数据执行快照操作是指:为表分组中的数据创建快照。通过为表分组中的数据创建快照,能够为表分组中的多个数据表创建一致性快照,提高创建快照的效率。
基于表分组中的数据执行备份操作是指:为表分组中的数据创建备份。通过为表分组中的数据创建备份,能够为表分组中的多个数据表创建一致性备份,提高创建备份的效率。
基于表分组中的数据执行备份恢复操作是指:为表分组中的数据创建备份,并按照该备份进行数据恢复。通过为表分组中的数据创建备份,并按照该备份进行数据恢复,能够为表分组中的多个数据表创建一致性备份,提高基于备份进行数据恢复的效率。
基于表分组中的数据执行时间点恢复操作是指:按照表分组在指定的时间点的数据进行数据恢复。通过按照表分组在指定的时间点的数据进行数据恢复,能够提高进行数据恢复的效率。
基于表分组中的数据执行异步复制操作是指:异步复制表分组中的数据。通过异步复制表分组中的数据,能够为表分组中的多个数据表进行一致性复制,提高异步复制的效率。
在一种实现方式中,还方法还包括:接收指示为数据表配置其所属的表分组的配置指令;基于配置指令,为数据表配置其所属的表分组。配置指令指示为数据表配置其所属的表分组的配置操作。使用数据库的用户在需要对数据表所属的表分组进行配置时,可以通过一些操作触发配置指令,以便于计算设备能够
基于该配置指令,执行为数据表配置其所属的表分组的配置操作。
可选的,为数据表配置其所属的表分组包括以下一种或多种:创建数据表,并指定数据表所属的表分组,以及,修改数据表所属的表分组。并且,修改数据表所属的表分组,可以包括:将数据表所属的表分组由一个表分组修改为另一个表分组,以及,将数据表属于表分组修改为数据表不再属于任何表分组。
在一种实现方式中,该方法还包括:接收指示对表分组进行管理的管理指令;基于管理指令,对表分组执行管理操作。使用数据库的用户在需要对数据库执行表分组相关的操作时,可以通过一些操作触发管理指令,以便于计算设备能够基于该管理指令,执行以表分组为操作对象的管理操作。
可选的,管理操作包括以下一种或多种:创建指定的表分组,删除指定的表分组,修改指定的表分组的相关信息,查询指定的表分组的相关信息,以及,查询数据库中所有表分组的相关信息。
创建指定的表分组是指:在数据库中创建一个具有指定名称的表分组。此处创建表分组可以理解为创建一个数据表的空集,后续可以通过其他方式向该表分组中添加属于该表分组的数据表。或者,在创建表分组时,也可以指定属于该表分组的数据表。例如,可以在指示创建表分组的管理指令中携带属于该表分组的数据表的名称或标识等,以指示创建该表分组,并指示属于该表分组的数据表。当用户需要按照表分组的粒度对数据库的数据执行操作时,可以预先在数据库中创建表分组,以便于将数据表划分至对应的表分组,从而以表分组为粒度对数据执行操作。
删除指定的表分组是指:删除数据库中已有的具有指定名称的表分组。需要说明的是,删除表分组是删除表分组这个范围划分,而不删除原本属于该表分组的数据表及其数据。这样一来,在删除表分组后,数据库中没有这个表分组,但是原本属于该表分组的数据表及其数据仍然记录在数据库中,只是该数据表及其数据不再属于该表分组。在用户确定不需要一些表分组时,可以删除对应的表分组。
修改指定的表分组的相关信息是指:删除数据库中已有的具有指定名称的表分组的相关信息。
查询指定的表分组的相关信息是指:查询数据库中已有的具有指定名称的表分组的相关信息。当用户对数据库执行的操作需要参考表分组的相关信息时,可以查询表分组的相关信息,以便于根据该表分组的相关信息执行相应的操作。
查询数据库中所有表分组的相关信息是指:查询数据库中已有的所有表分组的相关信息。当用户对数据库执行的操作需要参考表分组的相关信息时,可以查询表分组的相关信息,以便于根据该表分组的相关信息执行相应的操作。
可选地,表分组的相关信息是表分组的一些基本信息。例如,表分组的相关信息包括:表分组的描述信息、快照策略、备份策略、备份恢复策略、时间点恢复策略和异步复制策略,以及,表分组包括的数据表。需要说明的是,一个表分组中的多个数据表可以具有关联性,或者也可以不具有关联性,其具体可以由用户指定表分组中包括的数据表。
第二方面,本申请提供了一种数据操作装置,该装置包括:接收模块,用于接收针对数据库中表分组的应用指令,数据库包括一个或多个表分组,表分组包括一个或多个数据表,数据表中记录有数据;确定模块,用于基于应用指令,确定应用指令指示的目标表分组;处理模块,用于基于目标表分组中的数据,执行应用指令指示的应用操作。
可选地,应用操作包括以下一种或多种:快照操作、备份操作、备份恢复操作、时间点恢复操作和异步复制操作。
可选地,接收模块,还用于接收指示为数据表配置其所属的表分组的配置指令;处理模块,还用于基于配置指令,为数据表配置其所属的表分组。
可选地,为数据表配置其所属的表分组包括以下一种或多种:创建数据表,并指定数据表所属的表分组,以及,修改数据表所属的表分组。
可选地,接收模块,还用于接收指示对表分组进行管理的管理指令;处理模块,还用于基于管理指令,对表分组执行管理操作。
可选地,管理操作包括以下一种或多种:创建表分组,删除表分组,修改表分组的相关信息,查询表分组的相关信息,以及,查询数据库中所有表分组的相关信息。
可选地,表分组的相关信息包括:表分组的描述信息、快照策略、备份策略、备份恢复策略、时间点恢复策略和异步复制策略,以及,表分组包括的数据表。
第三方面,本申请提供了一种计算设备,包括存储器和处理器,存储器存储有程序指令,处理器运行
程序指令以执行本申请第一方面以及其任一种可能的实现方式中提供的方法。
第四方面,本申请提供了一种计算机集群,包括多个计算设备,多个计算设备包括多个处理器和多个存储器,多个存储器中存储有程序指令,多个处理器运行程序指令,使得计算机集群执行本申请第一方面以及其任一种可能的实现方式中提供的方法。
第五方面,本申请提供了一种计算机可读存储介质,该计算机可读存储介质为非易失性计算机可读存储介质,该计算机可读存储介质包括程序指令,当程序指令在计算设备上运行时,使得计算设备执行本申请第一方面以及其任一种可能的实现方式中提供的方法。
第六方面,本申请提供了一种包含指令的计算机程序产品,当计算机程序产品在计算机上运行时,使得计算机执行本申请第一方面以及其任一种可能的实现方式中提供的方法。
图1是本申请实施例提供的一种数据操作方法涉及的实施环境的结构示意图;
图2是本申请实施例提供的另一种数据操作方法涉及的实施环境的结构示意图;
图3是本申请实施例提供的再一种数据操作方法涉及的实施环境的结构示意图;
图4是本申请实施例提供的一种数据操作方法的流程图;
图5是本申请实施例提供的一种数据库的示意图;
图6是本申请实施例提供的一种数据操作装置的结构示意图;
图7是本申请实施例提供的一种计算设备的结构示意图;
图8是本申请实施例提供的一种计算设备集群的结构示意图。
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
为便于理解,下面先对本申请实施例中涉及的关联技术和背景进行介绍。
数据库是按照数据结构对数据进行组织、存储和管理的数据集合。用户能够通过客户端访问数据库,对数据库中的数据执行增、删、改和查等操作。例如,企业或事业单位的人事部门可以把本单位职工的基本情况(如职工号、姓名、年龄、性别、籍贯、工资何简历等)等信息存放在表中,包括这张表的数据集合可以看成是一个数据库,其中,该数据集合通常还包括有其他表,且不同的表可用于存储不同类别的数据。通过该数据库人事部门就可以根据需要查询职工的基本情况等信息。
根据数据库记录的数据的数据类型,数据库有多种类型,例如关系型数据库(relational database)和非关系型的数据库等。其中,关系型数据库是指采用关系模型来组织数据的数据库,其以行和列的形式存储数据,通常一行数据是数据读写的最小单位,也称为一条记录。关系型数据库中,一系列的行和列被称为数据表,一个数据表可以视为一个二维表。关系模型可以简单理解为二维表格模型。在关系型数据库中,按照结构化的方式存储数据,每个数据表的各个字段均按照预先设置的规则进行定义(也即是表的结构是预先定义的),再根据数据表的结构存入数据。数据表中各个字段中的数据也称字段数据。在关系型数据库中,前述数据信息为字段数据。非关系型的数据库又称为NoSQL(not only structured query language),意为不仅仅是结构化查询语言的数据库。非关系型的数据库基于主键(key)和值(value)的对应关系存储数据,且也以数据表的形式存储数据。
目前,可以在两种粒度对数据库中的数据进行操作。这两个粒度分别为数据库粒度和数据表粒度。则对数据库中数据进行操作包括:基于整个数据库中的所有数据进行操作,以及,基于单个数据表中的数据进行操作。例如,在一些非关系型的数据库中,在基于数据库中的数据创建快照时,可以根据基于整个数据库中的数据创建快照,或者,可以基于数据库中指定的数据表中的数据创建快照。其中,快照是数据库在某一时间点的静态视图,快照被广泛应用于不同的场景。例如,用户基于快照时刻的数据生成报表和维护历史数据,用户通过访问快照镜像数据以减轻数据库负载,用户基于快照将系统恢复到创建快照时的状态,以避免用户以及操作失误造成的影响。类似的,基于快照实现的备份与恢复,也是在数据库粒度和数据表粒度实现的。
但是,基于数据库粒度和数据表粒度对数据进行操作时,要么根据整个数据库记载的数据进行操作,要么针对数据库中的某个指定数据表进行操作。在根据整个数据库记载的数据进行操作时,数据库记载的数据量比较大,且数据库中可能包括不需要执行操作的数据,会牺牲所执行操作的性能。例如,在备份恢复时,需要针对整个数据库记载的数据进行操作,其可能会包括一些不需要备份的数据,这样就会影响备份恢复的性能。在根据数据库中某个指定数据表进行操作时,为了保证数据表能够包括操作所需的数据,在规划数据库时需要将单个数据表的容量划分的较大,则会导致单个数据表的数据量过度膨胀,且不敢轻易分表。并且,当针对指定数据表记载的数据进行操作时,操作所需的数据可能记载在多个数据表中,则需要分别针对多个数据表执行操作。因此,无论是基于数据库粒度进行操作还是基于数据表粒度进行操作,均会导致对数据库进行操作的效率较差,且目前的数据库操作对数据库规划具有较高的要求。
本申请实施例提供了一种数据操作方法。该方法包括:在接收针对数据库中表分组的应用指令后,基于应用指令,确定应用指令指示的目标表分组,然后,基于目标表分组中的数据,执行应用指令指示的应用操作。其中,数据库包括一个或多个表分组,表分组包括一个或多个数据表,数据表中记录有数据,应用指令指示基于表分组中的数据执行应用操作。
在该数据操作方法中,由于数据库包括一个或多个表分组,表分组包括一个或多个数据表,且在对数据执行操作时,能够基于应用指令指示的目标表分组中的数据执行应用操作。这样一来,本申请在数据库的粒度和单个数据表的粒度的基础上,增加了表分组的粒度,丰富了对数据库中的数据进行操作时的粒度,使得能够在需要针对多个数据表且不是整个数据库的数据进行操作的场景中,针对该表分组粒度对数据库中的数据执行操作,提高了对数据库进行管理的效率,丰富了对数据库进行管理的层次。并且,避免了因对整个数据库或对单个数据表中记载的数据进行管理导致的问题,保证了对数据库执行的操作的性能,且降低了对数据库进行规划的要求。
图1是本申请实施例提供的一种数据操作方法涉及的实施环境的结构示意图。如图1所示,该实施环境包括:计算设备10。该计算设备10中可以部署有数据库,该计算设备10的使用者(即用户)可以对数据库中的数据进行操作。并且,用户在需要针对数据库的数据进行操作时,可以通过一些操作触发计算设备10的操作指令,使得计算设备10基于该操作指令,针对数据库的数据执行操作指令指示的操作。
在该实施环境中,本申请实施例提供的数据操作方法,可以通过计算设备10运行可执行程序实现。例如,该数据操作方法的可执行程序可以以应用程序安装包的形式呈现,计算设备10中安装该应用程序安装包后,能够通过运行该可执行程序实现该数据操作方法。此时,计算设备10可以为终端。该终端可以为计算机、个人电脑、便携式移动终端、多媒体播放器、电子书阅读器或可穿戴式设备等。
在另一种实施环境中,如图2所示,该实施环境可以包括计算设备10和客户端20。客户端20能够与计算设备10建立通信连接。例如,客户端20与计算设备10之间可以通过网络建立通信连接。可选的,该网络可以为局域网,也可以为互联网,还可以为其它网络,本申请实施例不作限定。
在该图2的实施环境中,用户可以通过客户端20与计算设备10交互。例如,用户可以通过客户端20向计算设备10发送操作指令等。计算设备10用于基于操作指令执行本申请实施例提供的数据操作方法。例如,在用户通过客户端20向计算设备10发送应用指令后,计算设备10可以按照该应用指令的指示,确定应用指令指示的目标表分组,并基于目标表分组中的数据,执行应用指令指示的应用操作。又例如,在用户通过客户端20向计算设备10发送配置指令和管理指令后,计算设备10可以基于对应的指令,执行对应指令指示的操作。
在一种实现方式中,客户端20可以为计算机、个人电脑、膝上型计算机、移动电话、智能手机、平板电脑、云主机、便携式移动终端、多媒体播放器、电子书阅读器、可穿戴式设备、智能家电、人工智能设备、智能可穿戴设备、智能车载设备或物联网设备等。计算设备10可以为服务器。且服务器可以是一台服务器,或者由若干台服务器组成的服务器集群,或者是一个云计算服务中心。其中,云计算服务中心中部署有云服务提供商拥有的大量基础资源。例如云计算服务中心中部署有计算资源、存储资源和网络资源等。云计算服务中心可以利用该大量基础资源,运行数据库,并实现本申请实施例提供的数据操作方法。如图3所示,当服务器101为服务器集群或云计算服务中心时,其上部署的数据库可以为分布式数据库(distributed database,DDB)。分布式数据库通常包括多个数据分区(chunk),服务器集群或云计算服务
中心中的每个服务器101上可以部署有数据库的一个数据分区。
当服务器通过云计算服务中心实现时。用户可以通过客户端20访问云平台,并通过云平台使用数据库。此时,服务器为用户提供的数据库功能及对数据库中数据进行操作的功能,可以由云服务提供商在云平台抽象成一种数据库云服务。用户在云平台购买数据库云服务后,云平台能够利用云计算中心中的资源向用户提供相关的云服务。可选地,云平台可以是中心云的云平台、边缘云的云平台或包括中心云和边缘云的云平台,本申请实施例对其不做具体限定。
需要说明的是,在图2和图3所示的实施环境中,计算设备10也可以通过除云平台外的其他资源平台实现,本申请实施例对其不做具体限定。此时,服务器可以通过其他资源平台中的资源实现,并向用户提供数据库的相关服务。
一般地,在配置数据库时,还会为数据库配置存储池。存储池用于存储数据,数据库用于对存储池中的数据进行管理。即数据库管理的数据实际存储在存储池中,而数据库实际为对存储池中的数据进行操作的执行引擎。例如,数据库用于对存储池中的数据执行提取、转化和加载等操作。可选的,数据库中也可以存储一些数据,例如存储池中数据的元数据。其中,元数据为用于描述存储池中数据的描述信息。可选的,描述信息可以包括:魔术字、循环冗余校验码(cyclic redundancy check,CRC)、版本号、数据的键(key)值、偏移量(offset)和数据长度(length)等。
应当理解的是,以上内容是对本申请实施例提供的数据操作方法的应用场景的示例性说明,并不构成对于该数据操作方法的应用场景的限定,本领域普通技术人员可知,随着业务需求的改变,其应用场景可以根据应用需求进行调整,本申请实施例对其不做一一列举。
下面对本申请实施例提供的数据操作方法进行说明。如图4所示,该数据操作方法包括以下步骤:
步骤401、接收指示对数据库中表分组进行管理的管理指令。
数据库包括一个或多个表分组,表分组包括一个或多个数据表,数据表中记录有数据。管理指令指示执行以表分组为操作对象的管理操作。使用数据库的用户在需要对数据库执行表分组相关的操作时,可以通过一些操作触发管理指令,以便于计算设备能够基于该管理指令,执行以表分组为操作对象的管理操作。例如,如图5所示,数据库包括多个数据分区,部分或全部数据分区包括一个或多个表分组,每个表分组包括一个或多个数据表。
可选的,管理操作包括以下一种或多种:创建指定的表分组,删除指定的表分组,修改指定的表分组的相关信息,查询指定的表分组的相关信息,以及,查询数据库中所有表分组的相关信息。其中,表分组的相关信息是表分组的一些基本信息。例如,表分组的相关信息包括:表分组的描述信息、快照策略、备份策略、备份恢复策略、时间点恢复(point-in-time recovery,PITR)策略和异步复制策略,以及,表分组包括的数据表。需要说明的是,一个表分组中的多个数据表可以具有关联性,或者也可以不具有关联性,其具体可以由用户指定表分组中包括的数据表。
创建指定的表分组是指:在数据库中创建一个具有指定名称的表分组。作为一种示例,指示创建指定的表分组的管理指令可以为:Create Table Group(Table Group Name),Table Group Name指示被创建的表分组的名称。此处创建表分组可以理解为创建一个数据表的空集,后续可以通过其他方式向该表分组中添加属于该表分组的数据表。或者,在创建表分组时,也可以指定属于该表分组的数据表。例如,可以在指示创建表分组的管理指令中携带属于该表分组的数据表的名称或标识等,以指示创建该表分组,并指示属于该表分组的数据表。当用户需要按照表分组的粒度对数据库的数据执行操作时,可以预先在数据库中创建表分组,以便于将数据表划分至对应的表分组,从而以表分组为粒度对数据执行操作。
删除指定的表分组是指:删除数据库中已有的具有指定名称的表分组。作为一种示例,指示删除指定的表分组的管理指令可以为:Delete Table Group(Table Group Name),Table Group Name指示被创建的表分组的名称。需要说明的是,删除表分组是删除表分组这个范围划分,而不删除原本属于该表分组的数据表及其数据。这样一来,在删除表分组后,数据库中没有这个表分组,但是原本属于该表分组的数据表及其数据仍然记录在数据库中,只是该数据表及其数据不再属于该表分组。在用户确定不需要一些表分组时,可以删除对应的表分组。
修改指定的表分组的相关信息是指:删除数据库中已有的具有指定名称的表分组的相关信息。作为一种示例,指示修改指定的表分组的相关信息的管理指令可以为:Change Table Group(Table Group Name),
Table Group Name指示需要修改相关信息的表分组的名称。可选的,该管理指令中还可以携带有需要修改的相关信息的内容。例如,当需要修改表分组的名称时,该管理指令中可以携带有两个名称,第一个名称用于指示表分组原本的名称,第二个名称用于指示表分组修改后的名称。当管理指令携带其他相关信息的内容的实现方式此处不对其进行一一列举。
查询指定的表分组的相关信息是指:查询数据库中已有的具有指定名称的表分组的相关信息。作为一种示例,指示查询指定的表分组的相关信息的管理指令可以为:Show Table Group(Table Group Name),Table Group Name指示被创建的表分组的名称。当用户对数据库执行的操作需要参考表分组的相关信息时,可以查询表分组的相关信息,以便于根据该表分组的相关信息执行相应的操作。
查询数据库中所有表分组的相关信息是指:查询数据库中已有的所有表分组的相关信息。作为一种示例,指示查询数据库中所有表分组的相关信息的管理指令可以为:List Table Group(),由于该管理指令相当于对数据库中已有的所有表分组进行遍历,所以该管理指令中未携带参数,即未携带表分组的名称。当用户对数据库执行的操作需要参考表分组的相关信息时,可以查询表分组的相关信息,以便于根据该表分组的相关信息执行相应的操作。
需要说明的是,以上几种管理操作的实现情况仅为对执行以表分组为操作对象的管理操作的实现情况的示例性说明,并不构成对于本申请实施例能够实现的执行以表分组为操作对象的管理操作的实现情况的限定。本领域普通技术人员可知,随着业务需求的改变,其实现情况可以根据应用需求进行调整,本申请实施例对其不做一一列举。并且,用于指示执行以表分组为操作对象的管理操作的管理指令携带的参数,可以根据应用需求进行调整,本申请实施例对其不做具体限定。
步骤402、基于管理指令,对表分组执行管理操作。
计算设备接收管理指令后,即可执行管理指令指示的管理操作。例如,当计算设备接收的管理指令为Create Table Group(GROUP1)时,可知该管理指令指示的管理操作为创建名称为GROUP1的表分组,计算设备在接收到该管理指令后,可以在数据库中创建一个表分组,并将该表分组命名为GROUP1。又例如,当计算设备接收的管理指令为Show Table Group(GROUP1)时,可知该管理指令指示的管理操作为查询表分组GROUP1的相关信息,且在数据库中表分组的相关信息为表分组的时间点恢复策略和表分组包括的数据表,计算设备在接收到该管理指令后,可以在数据库中查询表分组GROUP1的时间点恢复策略及其括的数据表,并返回查询结果。
在本申请实施例中,基于管理指令对数据执行管理操作的功能,可以通过多种方式实现。在一种可实现方式中,可以通过调用应用程序接口(application programming interface,API)实现。例如,计算设备可以配置有用于实现其支持的所有数据库操作的应用程序接口,计算设备接收到管理指令后,可以调用用于实现该管理指令指示的管理操作的应用程序接口,以通过其实现该管理指令指示的管理操作。
在本申请实施例提供的数据的操作方法中,计算设备通过接收管理指令,并基于管理指令对表分组执行对应的管理操作,能够在数据库中执行以表分组为操作对象的管理操作,在数据库的粒度和单个数据表的粒度的基础上,增加了表分组的粒度,能够便于基于该表分组粒度对数据库中的数据执行操作,有助于提高对数据库执行的操作的性能。并且,由于计算设备能够根据管理执行在数据库中增加表分组的粒度,使得在对数据库进行规划时,无需过多地顾虑整个数据库的数据量和单个数据表的数据量的差别,降低了对数据库进行规划的要求。
步骤403、接收指示为数据表配置其所属的表分组的配置指令。
配置指令指示为数据表配置其所属的表分组的配置操作。使用数据库的用户在需要对数据表所属的表分组进行配置时,可以通过一些操作触发配置指令,以便于计算设备能够基于该配置指令,执行为数据表配置其所属的表分组的配置操作。
可选的,为数据表配置其所属的表分组包括以下一种或多种:创建数据表,并指定数据表所属的表分组,以及,修改数据表所属的表分组。例如,在一种场景中,用户需要在数据库中创建数据表时,用户可以在创建数据表的同时,触发为该数据表配置所属的表分组的配置指令,使得计算设备基于该配置指令为创建的数据表配置所属的表分组。又例如,在另一种场景中,用户在创建数据表时,用户没有指定数据表所属的表分组,在后续操作过程中,用户又想指定该数据表所属的表分组,则用户可以触发该配置指令,使得计算设备基于该配置指令为将该数据表划分至对应的表分组。又例如,在又一种场景中,用户在创建数据表时,用户指定了数据表所属的表分组,但在后续操作过程中,用户基于应用需求需要将该数据表所
属的表分组进行修改,则用户可以触发该配置指令,使得计算设备基于该配置指令将该数据表重新划分至对应的表分组。修改数据表所属的表分组,可以包括:将数据表所属的表分组由一个表分组修改为另一个表分组,以及,将数据表属于表分组修改为数据表不再属于任何表分组。
作为一种示例,对于创建数据表,并指定数据表所属的表分组,其配置指令可以为:Create Table(Table Name,Table Group Name),Table Name指示需要创建的数据表的名称,Table Group Name指示被创建的数据表所属的表分组的名称。需要说明的是,当配置指令为Create Table(Table Name)时,由于该配置指令没有携带表分组的名称Table Group Name,则可认为在创建该数据表时未指定该数据表所属的表分组。
作为一种示例,对于修改数据表所属的表分组,其配置指令可以为:Change Table(Table Name,Table Group Name),Table Name指示需要修改所属表分组的数据表的名称,Table Group Name指示在完成修改后,数据表所属的表分组的名称,即该配置指令用于指示将数据表所属的表分组由一个表分组修改为另一个表分组。或者,配置指令可以为Change Table(Table Name)时,由于该配置指令没有携带表分组的名称Table Group Name,则该配置指令用于指示将数据表属于表分组修改为数据表不再属于任何表分组。
需要说明的是,以上几种配置操作的实现情况仅为对执行以表分组为操作对象的配置操作的实现情况的示例性说明,并不构成对于本申请实施例能够实现的执行以表分组为操作对象的配置操作的实现情况的限定。本领域普通技术人员可知,随着业务需求的改变,其实现情况可以根据应用需求进行调整,本申请实施例对其不做一一列举。并且,用于指示执行以表分组为操作对象的配置操作的配置指令携带的参数,可以根据应用需求进行调整,本申请实施例对其不做具体限定。
步骤404、基于配置指令,为数据表配置其所属的表分组。
计算设备接收配置指令后,即可执行配置指令指示的配置操作。例如,当计算设备接收的配置指令为Change Table(Table1,GROUP1)时,可知该配置指令指示的配置操作为将名称为Table1的数据表所属的表分组修改为表分组GROUP1,计算设备在接收到该配置指令后,可以将数据表Table1所属的表分组修改为表分组GROUP1。又例如,当计算设备接收的配置指令为Change Table(Table1)时,假设数据表Table1原本所属的表分组为表分组GROUP1,可知该配置指令指示的配置操作为将原本属于表分组GROUP1的数据表Table1修改为不再属于任何表分组,则计算设备在接收到该配置指令后,可以将原本属于表分组GROUP1的数据表Table1修改为不再属于任何表分组。
在本申请实施例中,基于配置指令对数据执行配置操作的功能,可以通过多种方式实现。在一种可实现方式中,可以通过调用应用程序接口实现。例如,计算设备可以配置有用于实现其支持的所有数据库操作的应用程序接口,计算设备接收到配置指令后,可以调用用于实现该配置指令指示的配置操作的应用程序接口,以通过其实现该配置指令指示的配置操作。
在本申请实施例提供的数据的操作方法中,计算设备通过接收配置指令,并基于配置指令对数据表执行对应的配置操作,能够根据应用需求对数据表所属的表分组进行配置,实现了对数据表的按需分组,丰富了对数据库进行管理的层次,提高了对数据库进行操作的灵活性。
步骤405、接收针对数据库中表分组的应用指令。
应用指令指示基于表分组中的数据执行应用操作。使用数据库的用户在需要基于表分组中的数据执行应用操作时,可以通过一些操作触发应用指令,以便于计算设备能够基于该应用指令,基于表分组中的数据执行应用操作。可选的,应用操作包括以下一种或多种:快照操作、备份操作、备份恢复操作、时间点恢复操作和异步复制操作。
基于表分组中的数据执行快照操作是指:为表分组中的数据创建快照。作为一种示例,指示基于表分组中的数据执行快照操作的应用指令可以为:Create Snapshot(Snap Name,Table Group Name),Snap Name指示创建的快照的名称,Table Group Name指示创建快照所使用的表分组的名称。可选的,该应用指令也可以不指示快照的名称,即其应用指令可以为:Create Snapshot(Table Group Name)。此时计算设备可以自行为创建的快照进行命名,并向用户反馈快照的命令。例如,计算设备可以按照创建时间为快照命名,或者,计算设备可以以用户的账号为快照命名等,本申请实施例对其不做具体限定。通过为表分组中的数据创建快照,能够为表分组中的多个数据表创建一致性快照,提高创建快照的效率。
基于表分组中的数据执行备份操作是指:为表分组中的数据创建备份。作为一种示例,指示基于表分组中的数据执行备份操作的应用指令可以为:Create Backup(Table Group Name),Table Group Name指示创建备份所使用的表分组的名称。通过为表分组中的数据创建备份,能够为表分组中的多个数据表创建一
致性备份,提高创建备份的效率。
基于表分组中的数据执行备份恢复操作是指:为表分组中的数据创建备份,并按照该备份进行数据恢复。作为一种示例,指示基于表分组中的数据执行备份恢复操作的应用指令可以为:Create Backup and Recovery(Table Group Name),Table Group Name指示创建备份所使用的表分组的名称。可选的,该应用指令还可以指示备份恢复使用的策略,此时应用指令还可以指示相应的策略。通过为表分组中的数据创建备份,并按照该备份进行数据恢复,能够为表分组中的多个数据表创建一致性备份,提高基于备份进行数据恢复的效率。
基于表分组中的数据执行时间点恢复操作是指:按照表分组在指定的时间点的数据进行数据恢复。作为一种示例,指示基于表分组中的数据执行时间点恢复操作的应用指令可以为:Create PITR(Table Group Name,Time),Table Group Name指示进行数据恢复所使用的表分组的名称,Time指示进行数据恢复使用的指定时间点的数据。可选的,除了指示PITR的时间点,该应用指令还可以指示PITR的其他策略。相应的,应用指令还可以携带指示这些策略的参数。通过按照表分组在指定的时间点的数据进行数据恢复,能够提高进行数据恢复的效率。
基于表分组中的数据执行异步复制操作是指:异步复制表分组中的数据。作为一种示例,指示基于表分组中的数据执行异步复制操作的应用指令可以为:Create Replication(Table Group Name),Table Group Name指示创建快照所使用的表分组的名称。通过异步复制表分组中的数据,能够为表分组中的多个数据表进行一致性复制,提高异步复制的效率。
需要说明的是,以上几种应用操作的实现情况仅为对执行以表分组为操作对象的应用操作的实现情况的示例性说明,并不构成对于本申请实施例能够实现的执行以表分组为操作对象的应用操作的实现情况的限定。本领域普通技术人员可知,随着业务需求的改变,其实现情况可以根据应用需求进行调整,本申请实施例对其不做一一列举。并且,用于指示执行以表分组为操作对象的应用操作的应用指令携带的参数,可以根据应用需求进行调整,本申请实施例对其不做具体限定。
步骤406、基于应用指令,确定应用指令指示的目标表分组。
计算设备接收应用指令后,即可执行应用指令指示的应用操作。在本申请实施例中,由于添加了表分组的粒度,在对数据库的数据执行应用操作时,可以针对表分组执行应用操作。相应的,应用指令可以指示执行应用操作针对的表分组。则计算设备接收到应用指令后,可以先确定应用指令指示的目标表分组,以便于基于该目标表分组中的数据执行对应的应用操作。例如,应用指令中通常会携带用于指示表分组的名称,则可以将该名称指示的表分组确定为目标表分组。
步骤407、基于目标表分组中的数据,执行应用指令指示的应用操作。
计算设备接收应用指令指示的目标表分组后,即可基于该目标表分组中的数据执行应用指令指示的应用操作。例如,当计算设备接收的应用指令为Create Snapshot(Snap1,GROUP1)时,可知该应用指令指示的应用操作为为表分组GROUP1中的数据创建快照,且创建的快照的名称为Snap1,则计算设备在接收到该应用指令后,可以先根据该应用指令确定创建快照的对象为表分组GROUP1,即目标表分组为表分组GROUP1。然后为该表分组GROUP1中的数据创建快照,并将创建的快照命名为Snap1。
在本申请实施例中,基于应用指令对数据执行应用操作的功能,可以通过多种方式实现。在一种可实现方式中,可以通过调用应用程序接口实现。例如,计算设备可以配置有用于实现其支持的所有数据库操作的应用程序接口,计算设备接收到应用指令后,可以调用用于实现该应用指令指示的应用操作的应用程序接口,以通过其实现该应用指令指示的应用操作。
在本申请实施例提供的数据的操作方法中,计算设备通过接收应用指令,并基于应用指令对表分组执行对应的应用操作,能够在数据库中执行以表分组为操作对象的应用操作,在数据库的粒度和单个数据表的粒度的基础上,增加了表分组的粒度,能够便于基于该表分组粒度对数据库中的数据执行操作,有助于提高对数据库执行的应用操作的性能。并且,由于计算设备能够根据应用执行在数据库中增加表分组的粒度,使得在对数据库进行规划时,无需过多地顾虑整个数据库的数据量和单个数据表的数据量的差别,降低了对数据库进行规划的要求。
综上所述,本申请实施例提供了一种数据操作方法,该方法包括:在接收针对数据库中表分组的应用指令后,基于应用指令,确定应用指令指示的目标表分组,然后,基于目标表分组中的数据,执行应用指令指示的应用操作。在该数据操作方法中,由于数据库包括一个或多个表分组,表分组包括一个或多个数
据表,且在对数据执行操作时,能够基于应用指令指示的目标表分组中的数据执行应用操作。这样一来,本申请在数据库的粒度和单个数据表的粒度的基础上,增加了表分组的粒度,丰富了对数据库中的数据进行操作时的粒度,使得能够在需要针对多个数据表且不是整个数据库的数据进行操作的场景中,针对该表分组粒度对数据库中的数据执行操作,提高了对数据库进行管理的效率,丰富了对数据库进行管理的层次,有助于提高数据库的可用性和可靠性。并且,避免了因对整个数据库或对单个数据表中记载的数据进行管理导致的问题,保证了对数据库执行的操作的性能,且降低了对数据库进行规划的要求。
需要说明的是,本申请实施例提供的数据操作方法的步骤先后顺序可以进行适当调整,步骤也可以根据情况进行相应增减。任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化的方法,都应涵盖在本申请的保护范围之内,因此不再赘述。
以上介绍了本申请实施例的数据操作方法,与上述方法对应,本申请实施例还提供了数据操作装置。图6是本申请实施例提供的一种数据操作装置的结构示意图。基于图6所示的如下多个模块,该图6所示的数据操作装置能够执行上述图4所示的全部或部分操作。应理解到,该装置可以包括比所示模块更多的附加模块或者省略其中所示的一部分模块,本申请实施例对此并不进行限制。如图6所示,该数据操作装置600包括:
接收模块601,用于接收针对数据库中表分组的应用指令,数据库包括一个或多个表分组,表分组包括一个或多个数据表,数据表中记录有数据。
确定模块602,用于基于应用指令,确定应用指令指示的目标表分组。
处理模块603,用于基于目标表分组中的数据,执行应用指令指示的应用操作。
可选地,应用操作包括以下一种或多种:快照操作、备份操作、备份恢复操作、时间点恢复操作和异步复制操作。
可选地,接收模块601,还用于接收指示为数据表配置其所属的表分组的配置指令。
处理模块603,还用于基于配置指令,为数据表配置其所属的表分组。
可选地,为数据表配置其所属的表分组包括以下一种或多种:创建数据表,并指定数据表所属的表分组,以及,修改数据表所属的表分组。
可选地,接收模块601,还用于接收指示对表分组进行管理的管理指令。
处理模块603,还用于基于管理指令,对表分组执行管理操作。
可选地,管理操作包括以下一种或多种:创建表分组,删除表分组,修改表分组的相关信息,查询表分组的相关信息,以及,查询数据库中所有表分组的相关信息。
可选地,表分组的相关信息包括:表分组的描述信息、快照策略、备份策略、备份恢复策略、时间点恢复策略和异步复制策略,以及,表分组包括的数据表。
在本申请实施例提供的数据操作装置中,在接收模块接收针对数据库中表分组的应用指令后,确定模块基于应用指令,确定应用指令指示的目标表分组,然后,处理模块基于目标表分组中的数据,执行应用指令指示的应用操作。在该数据操作装置中,由于数据库包括一个或多个表分组,表分组包括一个或多个数据表,且在对数据执行操作时,能够基于应用指令指示的目标表分组中的数据执行应用操作。这样一来,本申请在数据库的粒度和单个数据表的粒度的基础上,增加了表分组的粒度,丰富了对数据库中的数据进行操作时的粒度,使得能够在需要针对多个数据表且不是整个数据库的数据进行操作的场景中,针对该表分组粒度对数据库中的数据执行操作,提高了对数据库进行管理的效率,丰富了对数据库进行管理的层次,有助于提高数据库的可用性和可靠性。并且,避免了因对整个数据库或对单个数据表中记载的数据进行管理导致的问题,保证了对数据库执行的操作的性能,且降低了对数据库进行规划的要求。
其中,接收模块601、确定模块602和处理模块603均可以通过软件实现,或者可以通过硬件实现。示例性地,接下来以接收模块601为例,介绍接收模块601的实现方式。类似的,确定模块602和处理模块603的实现方式可以参考接收模块601的实现方式。
模块作为软件功能单元的一种举例,接收模块601可以包括运行在计算实例上的代码。其中,计算实例可以包括物理主机(计算设备)、虚拟机、容器中的至少一种。进一步地,上述计算实例可以是一台或者多台。例如,接收模块601可以包括运行在多个主机/虚拟机/容器上的代码。需要说明的是,用于运行该代码的多个主机/虚拟机/容器可以分布在相同的区域(region)中,也可以分布在不同的region中。进一步
地,用于运行该代码的多个主机/虚拟机/容器可以分布在相同的可用区(availability zone,AZ)中,也可以分布在不同的AZ中,每个AZ包括一个数据中心或多个地理位置相近的数据中心。其中,通常一个region可以包括多个AZ。
同样,用于运行该代码的多个主机/虚拟机/容器可以分布在同一个虚拟私有云(virtual private cloud,VPC)中,也可以分布在多个VPC中。其中,通常一个VPC设置在一个region内,同一region内两个VPC之间,以及不同region的VPC之间跨区通信需在每个VPC内设置通信网关,经通信网关实现VPC之间的互连。
模块作为硬件功能单元的一种举例,接收模块601可以包括至少一个计算设备,如服务器等。或者,接收模块601也可以是利用专用集成电路(application-specific integrated circuit,ASIC)实现、或可编程逻辑器件(programmable logic device,PLD)实现的设备等。其中,上述PLD可以是复杂程序逻辑器件(complex programmable logical device,CPLD)、现场可编程门阵列(field-programmable gate array,FPGA)、通用阵列逻辑(generic array logic,GAL)或其任意组合实现。
接收模块601包括的多个计算设备可以分布在相同的region中,也可以分布在不同的region中。接收模块601包括的多个计算设备可以分布在相同的AZ中,也可以分布在不同的AZ中。同样,接收模块601包括的多个计算设备可以分布在同一个VPC中,也可以分布在多个VPC中。其中,所述多个计算设备可以是服务器、ASIC、PLD、CPLD、FPGA和GAL等计算设备的任意组合。
需要说明的是,在其他实施例中,接收模块601可以用于执行数据分组方法中的任意步骤,确定模块602可以用于执行数据分组方法中的任意步骤,处理模块603可以用于执行数据分组方法中的任意步骤,接收模块601、确定模块602、以及处理模块603负责实现的步骤可根据需要指定,通过接收模块601、确定模块602、以及处理模块603分别实现数据分组方法中不同的步骤来实现数据分组装置的全部功能。
本申请实施例提供了一种计算设备。该计算设备用于实现本申请实施例提供的数据操作方法中的部分或全部功能。图7是本申请实施例提供的一种计算设备的结构示意图。如图7所示,该计算设备700包括处理器701、存储器702、通信接口703和总线704。其中,处理器701、存储器702、通信接口703通过总线704实现彼此之间的通信连接。
处理器701可以包括通用处理器和/或专用硬件芯片。通用处理器可以包括:中央处理器(central processing unit,CPU)、微处理器或图形处理器(graphics processing unit,GPU)。CPU例如是一个单核处理器(single-CPU),又如是一个多核处理器(multi-CPU)。专用硬件芯片是一个高性能处理的硬件模块。专用硬件芯片包括数字信号处理器、ASIC、FPGA或者网络处理器(network processer,NP)中的至少一项。处理器701还可以是一种集成电路芯片,具有信号的处理能力。在实现过程中,本申请的数据操作方法的部分或全部功能,可以通过处理器701中的硬件的集成逻辑电路或者软件形式的指令完成。
存储器702用于存储计算机程序,计算机程序包括操作系统702a和可执行代码(即程序指令)702b。存储器702例如是只读存储器或可存储静态信息和指令的其它类型的静态存储设备,又如是随机存取存储器或者可存储信息和指令的其它类型的动态存储设备,又如是电可擦可编程只读存储器、只读光盘或其它光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其它磁存储设备,或者是能够用于携带或存储具有指令或数据结构形式的期望的可执行代码并能够由计算机存取的任何其它介质,但不限于此。例如存储器702用于存放出端口队列等。存储器702例如是独立存在,并通过总线704与处理器701相连接。或者存储器702和处理器701集成在一起。存储器702可以存储可执行代码,当存储器702中存储的可执行代码被处理器701执行时,处理器701用于执行本申请实施例提供的数据操作方法的部分或全部功能。处理器701执行该过程的实现方式请相应参考前述实施例中的相关描述。存储器702中还可以包括操作系统等其他运行进程所需的软件模块和数据等。
通信接口703使用例如但不限于收发器一类的收发模块,来实现与其他设备或通信网络之间的通信。例如,通信接口703可以是以下器件的任一种或任一种组合:网络接口(如以太网接口)、无线网卡等具有网络接入功能的器件。
总线704是任何类型的,用于实现计算设备的内部器件(例如,存储器702、处理器701、通信接口703)互连的通信总线。例如系统总线。本申请实施例以计算设备内部的上述器件通过总线704互连为例说明,可选地,计算设备700内部的上述器件还可以采用除了总线704之外的其他连接方式彼此通信连接。
例如,计算设备700内部的上述器件通过内部的逻辑接口互连。
需要说明的是,上述多个器件可以分别设置在彼此独立的芯片上,也可以至少部分的或者全部的设置在同一块芯片上。将各个器件独立设置在不同的芯片上,还是整合设置在一个或者多个芯片上,往往取决于产品设计的需要。本申请实施例对上述器件的具体实现形式不做限定。且上述各个附图对应的流程的描述各有侧重,某个流程中没有详述的部分,可以参见其他流程的相关描述。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。提供程序开发平台的计算机程序产品包括一个或多个计算机指令,在计算设备上加载和执行这些计算机程序指令时,全部或部分地实现本申请实施例提供的数据操作方法的功能。
并且,计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线)或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。计算机可读存储介质存储有提供程序开发平台的计算机程序指令。
本申请实施例还提供了一种计算设备集群。该计算设备集群包括至少一台计算设备。该计算设备可以是服务器,例如是中心服务器、边缘服务器,或者是本地数据中心中的本地服务器。在一些实施例中,计算设备也可以是台式机、笔记本电脑或者智能手机等终端设备。
可选地,计算设备集群包括的至少一个计算设备的结构可参见图7示出的计算设备700。计算设备集群中的一个或多个计算设备700中的存储器702中可以存有相同的用于执行数据操作方法的指令。
在一些可能的实现方式中,该计算设备集群中的一个或多个计算设备700的存储器702中也可以分别存有用于执行数据操作方法的部分指令。换言之,一个或多个计算设备700的组合可以共同执行用于执行数据操作方法的指令。
需要说明的是,计算设备集群中的不同的计算设备700中的存储器702可以存储不同的指令,分别用于执行数据分组装置的部分功能。也即,不同的计算设备700中的存储器702存储的指令可以实现获取模块、确定模块和分组模块中的一个或多个模块的功能。
在一些可能的实现方式中,计算设备集群中的一个或多个计算设备可以通过网络连接。其中,所述网络可以是广域网或局域网等等。图8示出了一种可能的实现方式。如图8所示,两个计算设备800A和800B之间通过网络进行连接。具体地,通过各个计算设备中的通信接口与所述网络进行连接。在这一类可能的实现方式中,计算设备800A和800B包括总线802、处理器804、存储器806和通信接口808。计算设备800A中的存储器806中存有执行处理模块的功能的指令。同时,计算设备800B中的存储器806中存有执行确定模块和接收模块的功能的指令。
应理解,图8中示出的计算设备800A的功能也可以由多个计算设备800完成。同样,计算设备800B的功能也可以由多个计算设备800完成。且用于实现数据操作方法的模块在计算设备中的部署方式也可以根据应用需求进行调整。
本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质为非易失性计算机可读存储介质。该计算机可读存储介质可以是计算设备能够存储的任何可用介质或者是包含一个或多个可用介质的数据中心等数据存储设备。该可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘)等。该计算机可读存储介质包括程序指令,当程序指令在计算设备上运行时,使得计算设备实现如本申请实施例提供的数据操作方法。
本申请实施例还提供了一种包含指令的计算机程序产品。该计算机程序产品可以是包含指令的,能够运行在计算设备上或被储存在任何可用介质中的软件或程序产品。当计算机程序产品在计算机上运行时,使得计算机实现本申请实施例提供的数据操作方法。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以
是只读存储器,磁盘或光盘等。
需要说明的是,本申请所涉及的信息(包括但不限于用户设备信息、用户个人信息等)、数据(包括但不限于用于分析的数据、存储的数据、展示的数据等)以及信号,均为经用户授权或者经过各方充分授权的,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。例如,本申请中涉及到的数据表和可执行代码等都是在充分授权的情况下获取的。
在本申请实施例中,术语“第一”、“第二”和“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。术语“至少一个”是指一个或多个,术语“多个”指两个或两个以上,除非另有明确的限定。
本申请中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
以上所述仅为本申请的可选实施例,并不用以限制本申请,凡在本申请的构思和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (18)
- 一种数据操作方法,其特征在于,所述方法包括:接收针对数据库中表分组的应用指令,所述数据库包括一个或多个表分组,所述表分组包括一个或多个数据表,所述数据表中记录有数据;基于所述应用指令,确定所述应用指令指示的目标表分组;基于所述目标表分组中的数据,执行所述应用指令指示的应用操作。
- 根据权利要求1所述的方法,其特征在于,所述应用操作包括以下一种或多种:快照操作、备份操作、备份恢复操作、时间点恢复操作和异步复制操作。
- 根据权利要求1或2所述的方法,其特征在于,所述方法还包括:接收指示为所述数据表配置其所属的表分组的配置指令;基于所述配置指令,为所述数据表配置其所属的表分组。
- 根据权利要求3所述的方法,其特征在于,所述为所述数据表配置其所属的表分组包括以下一种或多种:创建数据表,并指定所述数据表所属的表分组,以及,修改所述数据表所属的表分组。
- 根据权利要求1或2所述的方法,其特征在于,所述方法还包括:接收指示对所述表分组进行管理的管理指令;基于所述管理指令,对所述表分组执行管理操作。
- 根据权利要求5所述的方法,其特征在于,所述管理操作包括以下一种或多种:创建所述表分组,删除所述表分组,修改所述表分组的相关信息,查询所述表分组的相关信息,以及,查询所述数据库中所有表分组的相关信息。
- 根据权利要求6所述的方法,其特征在于,所述表分组的相关信息包括:所述表分组的描述信息、快照策略、备份策略、备份恢复策略、时间点恢复策略和异步复制策略,以及,所述表分组包括的数据表。
- 一种数据操作装置,其特征在于,所述装置包括:接收模块,用于接收针对数据库中表分组的应用指令,所述数据库包括一个或多个表分组,所述表分组包括一个或多个数据表,所述数据表中记录有数据;确定模块,用于基于所述应用指令,确定所述应用指令指示的目标表分组;处理模块,用于基于所述目标表分组中的数据,执行所述应用指令指示的应用操作。
- 根据权利要求8所述的装置,其特征在于,所述应用操作包括以下一种或多种:快照操作、备份操作、备份恢复操作、时间点恢复操作和异步复制操作。
- 根据权利要求8或9所述的装置,其特征在于,所述接收模块,还用于接收指示为所述数据表配置其所属的表分组的配置指令;所述处理模块,还用于基于所述配置指令,为所述数据表配置其所属的表分组。
- 根据权利要求10所述的装置,其特征在于,所述为所述数据表配置其所属的表分组包括以下一种或多种:创建数据表,并指定所述数据表所属的表分组,以及,修改所述数据表所属的表分组。
- 根据权利要求8或9所述的装置,其特征在于,所述接收模块,还用于接收指示对所述表分组进行管理的管理指令;所述处理模块,还用于基于所述管理指令,对所述表分组执行管理操作。
- 根据权利要求12所述的装置,其特征在于,所述管理操作包括以下一种或多种:创建所述表分组,删除所述表分组,修改所述表分组的相关信息,查询所述表分组的相关信息,以及,查询所述数据库中所有表分组的相关信息。
- 根据权利要求13所述的装置,其特征在于,所述表分组的相关信息包括:所述表分组的描述信息、快照策略、备份策略、备份恢复策略、时间点恢复策略和异步复制策略,以及,所述表分组包括的数据表。
- 一种计算设备,其特征在于,包括存储器和处理器,所述存储器存储有程序指令,所述处理器运行所述程序指令以执行权利要求1至7任一所述的方法。
- 一种计算机集群,其特征在于,包括多个计算设备,所述多个计算设备包括多个处理器和多个存储器,所述多个存储器中存储有程序指令,所述多个处理器运行所述程序指令,使得所述计算机集群执行权利要求1至7任一所述的方法。
- 一种计算机可读存储介质,其特征在于,包括程序指令,当所述程序指令在计算设备上运行时,使得所述计算设备执行如权利要求1至7任一所述的方法。
- 一种计算机程序产品,其特征在于,当所述计算机程序产品在计算机上运行时,使得所述计算机执行如权利要求1至7任一所述的方法。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210994110.9 | 2022-08-18 | ||
CN202210994110 | 2022-08-18 | ||
CN202211513808.0 | 2022-11-29 | ||
CN202211513808.0A CN117632850A (zh) | 2022-08-18 | 2022-11-29 | 数据操作方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2024037223A1 true WO2024037223A1 (zh) | 2024-02-22 |
Family
ID=89940630
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2023/104518 WO2024037223A1 (zh) | 2022-08-18 | 2023-06-30 | 数据操作方法及装置 |
Country Status (1)
Country | Link |
---|---|
WO (1) | WO2024037223A1 (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111625561A (zh) * | 2019-02-28 | 2020-09-04 | 华为技术有限公司 | 一种数据查询方法及装置 |
CN112395302A (zh) * | 2019-08-15 | 2021-02-23 | 阿里巴巴集团控股有限公司 | Sql指令的执行方法、装置、电子设备及计算机可读介质 |
CN112579613A (zh) * | 2020-12-31 | 2021-03-30 | 华东计算技术研究所(中国电子科技集团公司第三十二研究所) | 数据库集群差异比对与数据同步的方法、系统及介质 |
CN113392123A (zh) * | 2021-06-10 | 2021-09-14 | 中国光大银行股份有限公司 | 一种sql语句处理方法及装置 |
CN113419896A (zh) * | 2020-07-24 | 2021-09-21 | 阿里巴巴集团控股有限公司 | 数据恢复方法、装置、电子设备及计算机可读介质 |
-
2023
- 2023-06-30 WO PCT/CN2023/104518 patent/WO2024037223A1/zh unknown
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111625561A (zh) * | 2019-02-28 | 2020-09-04 | 华为技术有限公司 | 一种数据查询方法及装置 |
CN112395302A (zh) * | 2019-08-15 | 2021-02-23 | 阿里巴巴集团控股有限公司 | Sql指令的执行方法、装置、电子设备及计算机可读介质 |
CN113419896A (zh) * | 2020-07-24 | 2021-09-21 | 阿里巴巴集团控股有限公司 | 数据恢复方法、装置、电子设备及计算机可读介质 |
CN112579613A (zh) * | 2020-12-31 | 2021-03-30 | 华东计算技术研究所(中国电子科技集团公司第三十二研究所) | 数据库集群差异比对与数据同步的方法、系统及介质 |
CN113392123A (zh) * | 2021-06-10 | 2021-09-14 | 中国光大银行股份有限公司 | 一种sql语句处理方法及装置 |
Non-Patent Citations (1)
Title |
---|
ANONYMOUS: "Chapter three 3.7 of the Actual Combat Course: (Advanced) How to Use OceanBase Table Group", OCEANBASE, 1 December 2021 (2021-12-01), XP093139600, Retrieved from the Internet <URL:https://zhuanlan.zhihu.com/p/439945464> [retrieved on 20240311] * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10402424B1 (en) | Dynamic tree determination for data processing | |
US10025804B2 (en) | Systems and methods for aggregating information-asset metadata from multiple disparate data-management systems | |
US8738645B1 (en) | Parallel processing framework | |
US11188499B2 (en) | Storing and retrieving restricted datasets to and from a cloud network with non-restricted datasets | |
WO2019166940A2 (en) | Transactional operations in multi-master distributed data management systems | |
US11216416B2 (en) | Managing snapshotting of a dataset using an ordered set of B+ trees | |
US11836067B2 (en) | Hyper-converged infrastructure (HCI) log system | |
US11636139B2 (en) | Centralized database system with geographically partitioned data | |
US11048756B2 (en) | Inserting datasets into database systems utilizing hierarchical value lists | |
WO2024037223A1 (zh) | 数据操作方法及装置 | |
US11921586B2 (en) | Method and system for backing up virtual machines in a cluster shared volume | |
US20190340359A1 (en) | Malware scan status determination for network-attached storage systems | |
US11727022B2 (en) | Generating a global delta in distributed databases | |
US20210357419A1 (en) | Preventing dbms deadlock by eliminating shared locking | |
US20210103577A1 (en) | Reliable detection of deleted assets in data stores | |
CN117632850A (zh) | 数据操作方法及装置 | |
US11995102B2 (en) | Bidirectional data replication with wait for data function | |
US20240202077A1 (en) | Service cluster instance backup and recovery methods and related devices | |
US20210357453A1 (en) | Query usage based organization for very large databases | |
WO2024037222A1 (zh) | 文件系统的管理方法及装置 | |
WO2024040902A1 (zh) | 数据访问方法、分布式数据库系统及计算设备集群 | |
WO2024011932A1 (zh) | 一种文件管理方法及相关设备 | |
US20220179557A1 (en) | Multi-dimensional data recovery | |
US20240202075A1 (en) | Dynamic slicing of filesystem data with application awareness | |
WO2024055715A1 (zh) | 大数据集群部署方案的确定方法、装置、集群和存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 23854128 Country of ref document: EP Kind code of ref document: A1 |