Database management method, management equipment and computer readable medium

By copying the first database into the second database and setting read and write permissions, the problem of cross-tenant data modification in the prior art is solved, which meets the user's customization needs and ensures the independence and isolation of the data.

CN119127073APending Publication Date: 2024-12-13EBAOTECH CORP
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411187538.8
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-08-27
Publication Date
2024-12-13

AI Technical Summary

Technical Problem

The prior art cannot realize cross-tenant data modification and cannot meet the user's customization needs because the data between tenants is completely isolated and the public database is read-only.

Method used

By copying the first database into the second database, the second tenant can set the read and write permissions of the replicated data, so that the second tenant can independently modify the copy data without affecting the original tenant's data.

Benefits of technology

It realizes cross-tenant data modification, meets the customized needs of users, and ensures data independence and isolation.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119127073A_ABST
    Figure CN119127073A_ABST
Patent Text Reader

Abstract

The invention relates to the field of big data processing, and discloses a database management method, management equipment and a computer readable medium, which can meet the customization demand of a user while flexibly managing a database. Specifically, a first database in the management equipment is used for storing private data of a first tenant, and the method comprises the steps that a database management request sent by first electronic equipment of the first tenant is received, and the database management request is used for indicating that data in the first database is authorized to a second tenant for use; the database management request comprises an identifier of a second tenant and a first access permission authorized to the second tenant; in response to the received database management request, copying the first database into a second database; establishing an association relationship between a second database and the second tenant according to the identifier of the second tenant; and setting the access authority of the second tenant to the data of the second database as a first access authority, the first access authority being readable and writable.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of big data technology, and in particular to a database management method, management device and computer-readable medium. Background Art

[0002] Cloud platform is an Internet-based computing service that can provide dynamic virtualized resources, including servers, storage, databases, networks, software, etc., which tenants or users can access through the network. With the development of platform businesses such as insurance business, the amount of platform data in cloud platform is increasing, and the demand for data classification management of cloud platform is increasing.

[0003] At present, the platform data classification management method in the prior art is to completely isolate data of different business attributes according to business attributes such as tenants or channels, or the platform provides a copy of read-only data for all users. For example, the platform can store data of different tenants in their own independent databases, or store data of different channels such as partners, distributors, and agents in their own independent databases. For another example, the platform can also store data of different tenants in a read-only public database.

[0004] However, as the amount of platform data increases, some tenants may have customized needs, such as one tenant may need to modify another tenant's data. At this time, on the one hand, since the private data between different tenants is completely isolated, one tenant cannot modify the private data of another tenant. On the other hand, since the public database of multiple tenants is read-only, one tenant cannot modify the public database to modify the data of another tenant. As a result, the existing technology cannot realize cross-tenant data modification, and thus cannot meet the customized needs of users. Summary of the invention

[0005] The embodiments of the present application provide a database management method, a management device, and a computer-readable medium, which can flexibly manage the database while meeting the customized needs of users.

[0006] In a first aspect, an embodiment of the present application provides a database management method, which is applied to a management device, the management device including a first database, the first database being used to store private data of a first tenant, the method including: receiving a database management request sent by a first electronic device of the first tenant, the database management request being used to indicate that the data in the first database is authorized to be used by a second tenant, the database management request including: an identifier of the second tenant and a first access right authorized to the second tenant; in response to the received database management request, copying the first database as a second database; establishing an association relationship between the second database and the second tenant based on the identifier of the second tenant; setting the second tenant's access right to the data in the second database to the first access right, wherein the first access right includes: read permission and write permission.

[0007] The database management method provided by the present application copies the first database into the second database, that is, the private data of the first tenant is copied to obtain the copy data, so that the authorized second tenant can access the copy data according to the set first permission. Then, the second tenant can read and write to the copied second database, ensuring that the second tenant can independently modify the copy data of the first tenant's private product without affecting the private data in the first database of the first tenant. At this time, the data in the second database evolves independently, does not affect the data of the original tenant itself, and can meet the customization needs of users.

[0008] In a possible implementation of the first aspect above, the database management request also includes an identifier of the first tenant and a second access permission authorized to the first tenant, the second access permission is a read permission, and the method also includes: establishing an association relationship between the second database and the first tenant based on the identifier of the first tenant; and setting the first tenant's access permission to the data in the second database to the second access permission.

[0009] For example, if the second access right is read right, when the first tenant fully authorizes the private product to the second tenant, the second database containing the duplicate data can be set to be read-only for the first tenant. Then, while fully authorizing the private product to the second tenant, the first tenant can be informed of the second tenant's need to modify the duplicate data.

[0010] In a possible implementation of the first aspect, the management device further includes: a third database for storing public data of multiple tenants, and the method further includes: establishing an association relationship between the third database and the second tenant according to the identifier of the second tenant. Then, as the business grows rapidly, when multiple tenants such as the second tenant need to be reconfigured, the public data of multiple tenants can be quickly configured through the third database, avoiding the tedious operation of repeated configuration.

[0011] In a possible implementation of the first aspect, the management device further includes: a fourth database, and the method further includes: establishing an association relationship between the fourth database and the second tenant according to the identifier of the second tenant, so that the fourth database is used to store the private data of the second tenant. Then, the two types of private data and copy data can meet the customization needs of users, such as realizing data modification needs across tenants.

[0012] In a possible implementation of the first aspect above, the method also includes: receiving a data processing request from a second electronic device of a second tenant, wherein the data processing request includes an identifier of the second tenant, a requested access type, and a data type; determining a database associated with the second tenant based on the identifier of the second tenant; and performing data processing on the database associated with the second tenant based on the requested access type and the data type.

[0013] In a possible implementation manner of the first aspect above, the requested access type includes writing data and reading data, and the method further includes: determining that the requested access type complies with access rights of a database associated with the second tenant to the second tenant.

[0014] In a possible implementation of the first aspect above, the requested access type is write data or read data, the data type includes at least one of a public type, a private type, and a replica type, and, based on the requested access type and the data type, data processing is performed on a database associated with the second tenant, including: when the requested access type is write data, public data in the received data of the second tenant is stored in a third database, private data in the received data of the second tenant is stored in a fourth database, and replica data in the received data of the second tenant is stored in the second database; when the requested access type is read data, the public data of the second tenant is read from the third database, the private data of the second tenant is read from the fourth database, and the replica data of the second tenant is read from the second database.

[0015] The database management method in the present application can provide tenants with three types of data, namely public data, private data and copy data, according to actual needs, so as to meet the different needs of tenants through different types of data.

[0016] In a possible implementation of the first aspect, the data in the first database, the second database, the third database, and the fourth database are all template data. As an example, the data of the insurance business platform can be a document printing template, for example, some templates are marked as public templates, and some tenants' private templates can also be marked as exclusive templates.

[0017] In the second aspect, an embodiment of the present application provides a management device, which includes a management module and a database module. The database module includes a first database, which is used to store private data of a first tenant. The management module is used to receive a database management request sent by a first electronic device of the first tenant, and the database management request is used to indicate that the data in the first database is authorized to be used by a second tenant. The database management request includes: an identifier of the second tenant and a first access right authorized to the second tenant; in response to the received database management request, the database module copies the first database as a second database; the management module is used to establish an association relationship between the second database and the second tenant based on the identifier of the second tenant; and set the second tenant's access right to the data in the second database to the first access right, wherein the first access right includes: read permission and write permission.

[0018] In a third aspect, an embodiment of the present application provides a management device, comprising: a memory for storing instructions executed by one or more processors of the management device, and a processor, which is one of the processors of the electronic device, for executing the database management method in the above-mentioned first aspect and any possible implementation method thereof.

[0019] In a fourth aspect, an embodiment of the present application provides a computer-readable medium having instructions stored thereon, which, when executed on a computer, causes the computer to execute the database management method in the first aspect and any possible implementation thereof. BRIEF DESCRIPTION OF THE DRAWINGS

[0020] Figure 1 According to some embodiments of the present application, a schematic diagram of an application scenario of database management is shown;

[0021] Figure 2 According to some embodiments of the present application, a schematic diagram of a communication system between a database management system and a client is shown;

[0022] Figure 3 According to some embodiments of the present application, a schematic flow chart of a database management method is shown;

[0023] Figure 4 According to some embodiments of the present application, a schematic flow chart of a database management method is shown;

[0024] Figure 5 According to some embodiments of the present application, a schematic diagram of a processing flow of a data processing request is shown;

[0025] Figure 6 According to some embodiments of the present application, a structural schematic diagram of a management device is shown. DETAILED DESCRIPTION

[0026] Figure 1 A schematic diagram of an application scenario of database management is shown.

[0027] like Figure 1 As shown, tenant A can authorize the data of private product A1 to tenant B through client 10A. Correspondingly, database management system 20 can store private data of private product A1 of tenant A in a read-only public database, and set the reading permission of tenant B to the public database. Tenant B can initiate a data processing request to read the data of the product to database management system 20 through client 10B, and database management system 20 returns the data of the product to tenant B. Among them, database management system 20 can be deployed in a cloud platform.

[0028] It is understandable that tenant B may have a customized requirement to modify tenant A's data across tenants, such as tenant B may need to modify the private data of tenant A's private product A1. However, since the data of private product A1 is stored in a read-only public database, tenant B can only read the private data of private product A1 but cannot modify the data, thus failing to meet customized requirements such as cross-tenant data modification.

[0029] In order to meet the above-mentioned customized needs for cross-user data modification, an embodiment of the present application provides a database management method and system. In a scenario where a tenant (such as tenant B) needs to modify the private data of another tenant (such as tenant A), the method can copy the private data of tenant A to obtain copy data, and set tenant B's permissions on the copy data, such as write permissions and read permissions. In this way, tenant B can read and modify the copy data without affecting tenant A's private data itself, so as to realize tenant B's processing of tenant A's private data. For example, when tenant A's private product is authorized to tenant B for use, the method can copy tenant A's database 1 to database 2, and set database 2's permissions on user B, such as write permissions and read permissions, to realize tenant B's processing of tenant A's private data, meet the user's customized needs, and do not affect tenant A's private data in database 1.

[0030] In some embodiments, the present application can also set the permissions of the original tenant for the copied data to further meet the user's customized needs. For example, when tenant A's private product A1 is fully authorized to tenant B for use, the method can also set tenant A's permissions on the copied database 2, such as setting the permission to read. Then, tenant A can read but not modify the data in database 2, and only tenant B can modify the data in database 2, realizing the customized need to fully authorize product A1 to tenant B.

[0031] In some embodiments, the database management system in the present application can divide all data on the platform into three categories: public data, private data and copy data. In addition, the above database management system can be a multi-tenant architecture.

[0032] Public data, also known as public attribute data or shared data, is data that all users can access, such as platform services, APIs, public products and other information, as well as functions released by other third-party platforms for everyone to use. This part of data can be accessed by anyone and is read-only.

[0033] Private data, also called exclusive data, is data that belongs exclusively to a tenant or channel, such as the tenant's or channel's private data, private application programming interface (API), private products, etc. This part of data can only be accessed by exclusive tenants and users, and is readable and writable.

[0034] Duplicate data: Data copied from proprietary data is only available to designated tenants or users. For example, if tenant A's private product is authorized to tenant B, a duplicate data will be generated for tenant B to use.

[0035] It can be understood that the difference between the above-mentioned replica data and exclusive data lies in the different identities of the owners. The replica data is fully authorized to the designated tenant, so tenant B can read and write, while tenant A can only read. Moreover, from the moment the replica data is generated, this data evolves independently and has nothing to do with the original data.

[0036] In the embodiment of the present application, the above-mentioned exclusive data and copy data can be collectively referred to as tenant data, as distinguished from public data.

[0037] Taking the insurance sector as an example, tenant data can be data resources owned by independent tenants (such as insurance companies, insurance intermediaries, individual users, etc.). These data usually include tenants' personal information, policy information, transaction records, etc., and are the core data for tenants' business operations. In addition, in the insurance sector, public data may include industry statistics, auto insurance information platform data, geographic location data, etc.

[0038] As an example, the data of the insurance business platform can be a document printing template. This application can mark some templates as public templates, and can also mark some tenants' private templates as exclusive templates. At this time, these public templates are available to all tenants and do not need to be repeatedly configured for each tenant, while these exclusive templates can be read, modified and configured independently by the tenants to which they belong, which can effectively isolate data between different tenants.

[0039] In some embodiments, the data in the database of this application can be classified according to business attributes such as tenants or channels. Among them, tenants refer to entities that use cloud platform services or resources, which can be individuals, enterprises or other organizations. Channels can be partners, distributors, agents, etc. In the following embodiments, the database management method is mainly explained by dividing data according to tenants as an example. Among them, the "user" in the embodiments of this application can be an object that uses platform services under a tenant or channel.

[0040] Figure 2 This is a schematic diagram of a communication system between a database management system and a client in an example of the present application.

[0041] like Figure 2 As shown, the database management system 20 provided in the embodiment of the present application may include a database module 21 and a management module 22, and the database module 21 and the management module 22 are communicatively connected.

[0042] In some embodiments, the database management system 20 may run on a cloud server, a server, or a server cluster and other devices (which may be referred to as management devices), without limitation herein.

[0043] The database module 21 may include a first database instance 211 and a second database instance, and the first database instance 211 and the second database instance respectively interact with the management module 22. For example, the second database instance may be a second database instance 212a and a second database instance 212b. The first database instance 211 may include a public database, and each second database instance includes a tenant database.

[0044] It is understood that the number of the first database instance and the second database instance can be set according to factors such as the number of tenants and business requirements. As an example, in the embodiment of the present application, the database module 21 may include a first database instance 211 and two second database instances. Each second database instance may contain one or more different tenant databases, and each tenant corresponds to at least one tenant database. Specifically, Figure 2 The first database instance 211 includes public database 1, public database 2, public database 3, etc. The second database instance 212a includes tenant database A1 storing tenant A private data, tenant database B2 storing tenant B private data, and tenant database B1 storing replica data of tenant B. Similarly, the second database instance 212b includes tenant database C, tenant database D, tenant database E, etc.

[0045] The management module 22 is used to store and manage configuration information, which may include the identifier of at least one tenant and the association relationship between each tenant and the database. As an example, the above configuration information includes the identifier of the first database instance 211, the identifier of the public database of the first database instance 211, the identifier of the second database instance, the identifier of the tenant database of the second database instance, and the association relationship between the identifier of each tenant and the identifier of the database instance and the identifier of the database.

[0046] The public database is used to store the public attribute data of multiple tenants, and the tenant database is used to store tenant data such as private data or copy data of tenants. Each tenant database is used to store the tenant data of a tenant, and a tenant corresponds to at least one tenant database.

[0047] In some embodiments, when private data in a tenant's tenant database is authorized to another tenant, the private data can be copied as duplicate data and a new tenant database can be generated, and the read and write permissions of the new database to the two tenants can be set according to actual needs. In addition, in the embodiment of the present application, relevant information about the association relationship between the new tenant database and the two tenants can be added to the configuration information managed by the management module 22.

[0048] In some embodiments, the present application can decide the database instance to which the new database containing the replica data belongs based on the load size of the current database instance where the tenant database containing the private data is located. For example, if the load of the current database instance is less than the preset load, a new tenant database is generated in the current database instance. If the load of the database instance where the tenant database is currently located is greater than or equal to the preset load, a new tenant database is generated in another database instance (such as a new database instance or other database instance whose load is less than the preset load). Among them, the value of the above-mentioned preset load can be set according to actual needs, and the present application does not make specific limitations on this.

[0049] In some embodiments of the present application, the load of each second database instance may include: the order data volume, transactions per second (TPS), query rate per second (QPS), and concurrency (the number of connections accessing the second database instance simultaneously) of the corresponding second database instance.

[0050] The load value of the tenant database may include the order data volume, TPS, QPS, and concurrency number of the corresponding tenant database. The load of a second database instance is equal to the sum of the loads of all tenant databases in the second database instance.

[0051] As an example, Figure 2As shown, when tenant A fully authorizes the private data in tenant database A1 of private product A1 to tenant B, the private data in tenant database A1 can be copied as replica data in the second database instance 212a to generate a new tenant database B1, the permissions of the new tenant database B1 to tenant A and tenant B are set, and the association relationship between the new tenant database B1 and tenant A and tenant B is stored in the management module 22. For example, the tenant database B1 where the replica data is located is set to have read-only permissions for tenant A, and to be readable and writable (i.e., write permissions and read permissions) for tenant A.

[0052] In some embodiments of the present application, the management module 22 may receive a database management request sent by a user through the client 10A of tenant A, the database management request including the identifier of tenant B and the access rights authorized to tenant B, the access rights corresponding to the private data in the tenant database A1 of tenant A, the access rights including write rights and read rights. Furthermore, the management module 22 may determine the tenant database A1 according to the identifier and access rights of tenant B in the database management request and the configuration information stored in the management module 22, and then copy the private data in the tenant database A1 as replica data to generate a new tenant database B1, and set the tenant database B1 to have read-only rights for tenant A and read-write rights for tenant B.

[0053] In addition, the management module 22 may receive a data processing request sent by a user through the client 10B of tenant B, the data processing request including the identifier of tenant B and the requested access type of tenant B, the requested access type may include writing data and reading data. The management module 22 may determine the tenant database B1 containing the replica data according to the identifier of tenant B in the data processing request and the configuration information stored in the management module 22, and then execute the data processing request on the tenant database B1.

[0054] It can be understood that in other embodiments of the present application, the management module 22 can also be integrated into the database module 21 or integrated into a routing device connected to the database module 21, and the present application does not limit this.

[0055] Through the database management system 20 provided in the embodiment of the present application, the public data of multiple tenants can be extracted and stored in the first database instance 211, and the personalized and customized private data of the tenants can be stored in the second database instance as an independent database, so that the data of multiple tenants can be effectively isolated and have high security performance. In addition, for data authorization between different tenants, the private data of one tenant can be copied into independent copy data to support another tenant to independently read and write the copy data, meeting the customized needs of modifying data across tenants.

[0056] It can be understood that the two types of public data and replica data in this application are used to support different needs of users, and users can choose freely. For example, if the need is convenient to expand data, you can choose to use replica data, and if the need is convenient to upgrade, you can use public data. In this way, by classifying data according to private data, public data and replica data in the database management system, and allowing tenants to set the type of data and configuration by themselves, maximum flexibility can be achieved.

[0057] Figure 3 This is a flowchart of a database management method in one embodiment of the present application. Figure 3 Combined with Figure 2 The embodiment of the present application also provides a database management method, which can be applied to the database management system 20 and can be executed by the management device where the database management system 20 is located. The method includes:

[0058] S301: Receive a database management request sent by a first electronic device of a first tenant, where the database management request includes: an identifier of a second tenant and a first access right authorized to the second tenant.

[0059] The database management request is used to instruct to authorize the second tenant to use the data in the first database.

[0060] The database management system includes a first database of a first tenant, for example, the first tenant may be tenant A, and the first database is tenant database A1. At this time, the first electronic device is tenant A's client 10A.

[0061] For example, the database management request may be sent by the client 10A of tenant A to the database management system 20 when tenant A fully authorizes the private product A1 to tenant B. At this time, the first access right may be the right of tenant B to the data in the first database. At this time, the second tenant requires the permission to read and write to the private product A1 of the first tenant, such as the first access right includes the permission to write and read.

[0062] S302: In response to the received database management request, copy the first database into a second database.

[0063] For example, combined with Figure 2 In the example of , when the first database is database A1 containing private data of tenant A, the second database may be tenant database B1 containing corresponding copy data.

[0064] S303: Establishing an association relationship between the second database and the second tenant according to the identifier of the second tenant.

[0065] It can be understood that the second database has an association relationship with the second tenant, which means that the second tenant can access the second database. For example, tenant B can access tenant database B1 where the replica data is located.

[0066] In some embodiments, establishing an association relationship between the second database and the second tenant refers to establishing an association relationship between the identifier of the second tenant and the identifier of the second database and the identifier of the database instance where the second database is located.

[0067] In some embodiments, the present application may store the association between the identifier of the second tenant and the identifier of the second database, the identifier of the database instance where the second database is located, and these identifiers as configuration information in the management module 22 .

[0068] S304: Setting the second tenant's permission to the second database to a first access permission, where the first access permission includes: a read permission and a write permission.

[0069] For example, tenant B can read and write to the copied tenant database B1, ensuring that tenant B can independently modify the copy data of tenant A's private product A1 without affecting the private data in tenant database A1 of tenant A. At this time, the data in tenant database B1 evolves independently and does not affect the data of the original tenant, which can meet the customization needs of users.

[0070] That is to say, the database management method provided by the present application obtains duplicate data by copying the private data of the original tenant, so that the authorized tenant can access the duplicate data according to the set permissions, thereby meeting the user's customized needs.

[0071] In some embodiments, the database management system includes not only the first database of the first tenant, but also other databases such as public databases. The present application may set an association relationship between the second tenant and these databases.

[0072] As an example, Figure 4 According to an embodiment of the present application, a process of setting an association relationship between a second tenant and other databases other than a first database is shown.

[0073] like Figure 4 As shown, the database management method in some embodiments of the present application includes the following steps:

[0074] S401-S404, these steps are respectively Figure 3 S301-S304 shown are the same and will not be described in detail here.

[0075] S405: Establishing an association relationship between the second database and the first tenant according to the identifier of the first tenant.

[0076] It is understandable that in order to further meet the user's customized needs, the permissions of the copy data to the original tenant can also be set.

[0077] S406: Set the first tenant's permission to the second database as a second access permission.

[0078] In some embodiments, the second access right is read permission, and the first tenant can only read the second database. For example, when tenant A fully authorizes private product A1 to tenant B, the tenant database B1 containing the copy data can be set to be read-only for the original tenant A.

[0079] Then, the original first tenant can subsequently view the copy data in the second database to learn about the second tenant's modification requirements for the copy data. For example, tenant A can obtain some new order information added by tenant B for private product A1, etc., in order to provide more services to tenant B.

[0080] S407: Establishing an association relationship between a third database and the second tenant according to the identifier of the second tenant, wherein the third database is used to store common data of multiple tenants.

[0081] The third database may be a public database, such as Figure 2 The public database in the first database instance 211 is shown, such as public database 1.

[0082] In some embodiments, the present application may establish an association relationship between the identifier of the second tenant and the identifier of the third database and the identifier of the database instance where the third database is located, and store these identifiers and association relationships as configuration information in the management module 22 .

[0083] S408: Establishing an association relationship between the fourth database and the second tenant according to the identifier of the second tenant, so that the fourth database is used to store the private data of the second tenant.

[0084] For example, the fourth database is a tenant database where the private data of the second tenant is located, that is, a private database. At this time, the first database of the first tenant and the fourth database of the second tenant are mutually isolated private databases, that is, the first tenant cannot access the fourth database, and the second tenant cannot access the first database.

[0085] In some embodiments, the present application may establish an association relationship between the identifier of the second tenant and the identifier of the fourth database and the identifier of the database instance where the fourth database is located, and store these identifiers and association relationships as configuration information in the management module 22 .

[0086] Understandably, Figure 4The steps in the method flow are only examples, and the method is not limited to these steps. For example, in some other embodiments, some steps of the method can be omitted, such as S404 can be omitted. In addition, in some other embodiments, the execution order of S401 to S408 can also be other orders, for example, the above S406 to S408 can be executed in parallel or in any order.

[0087] As an example, in the insurance field, the most common thing in insurance business is to configure products, and this configuration is relatively sophisticated. For example, when a new product needs to be configured, each tenant needs to be configured separately, so the configuration needs to be cumbersome for each tenant one by one. In some embodiments, the present application can quickly reuse configurations by importing and exporting, or by making data templates, but it should be considered that when there are updates, these configuration actions need to be re-operated, and the operation process is cumbersome. Therefore, the data of such products is marked as public data in this application, so there is only one source of the data for the product, and the data can be shared and used by others, and the data only needs to be configured once.

[0088] In this way, the database management method in this application can provide tenants with three types of data, namely public data, private data and replica data, according to actual needs, so that different needs of tenants can be met through different types of data. Then, as the business grows rapidly, when multiple tenants need to be reconfigured, the configuration can be quickly completed through the public data of multiple tenants, avoiding the tedious operation of repeated configuration. Moreover, the two types of private data and replica data can meet the customized needs of users, such as realizing data modification needs across tenants.

[0089] In some embodiments, the database management method in the present application can provide different types of data to tenants according to the tenants' requests.

[0090] As an example, Figure 5 According to the embodiment of the present application, the processing flow of the data processing request initiated by the second tenant to each database is shown. The execution subject of the processing flow can be a management device, such as a database management system in the management device. Figure 5 As shown, the data processing flow includes the following steps:

[0091] S501: Receive a data processing request sent by a second electronic device of a second tenant, wherein the data processing request includes an identifier of the second tenant, a requested access type, and a data type.

[0092] In some embodiments, the requested access type is write data or read data. The data type includes at least one of a public type, a private type (also called a dedicated type), and a replica type. For example, the second electronic device is a client 10B of tenant B.

[0093] S502: Determine a database associated with the second tenant according to the identifier of the second tenant.

[0094] In some embodiments, the present application may query the configuration information in the management module 22 for a database associated with the second tenant, such as a public database, a tenant database containing private data, or a tenant database containing duplicate data.

[0095] S503: Determine whether the requested access type meets the access rights of the database associated with the second tenant to the second tenant.

[0096] Among them, when the requested access type is to write data, if the access rights of the database with which the second tenant has an associated relationship to the second tenant include write rights, the requested access type complies with the rights. Similarly, when the requested access type is to read data, if the access rights of the database with which the second tenant has an associated relationship to the second tenant include read rights, the requested access type complies with the rights.

[0097] S504: Perform data processing on a database associated with the second tenant according to the requested access type and the data type.

[0098] In some embodiments, when the requested access type is write data, the public data in the received data of the second tenant is stored in the third database, the private data in the received data of the second tenant is stored in the fourth database, and the duplicate data in the received data of the second tenant is stored in the second database. For example, when the requested access type of tenant B is write data, the public data in the received data of tenant B is stored in the public database, the private data in the received data of tenant B is stored in tenant database B2, and the duplicate data in the received data of tenant B is stored in tenant database B1.

[0099] In some other embodiments, the public database in the database management system of the present application is a read-only database. Then, when the requested access type is write data, the received data of the second tenant may include private data and copy data, but does not include public data.

[0100] In some embodiments, when the requested access type is read data, the public data of the second tenant is read from the third database, the private data of the second tenant is read from the fourth database, and the replica data of the second tenant is read from the second database. For example, when the requested access type of tenant B is read data, the public data is read from the public database, the private data of the second tenant is read from tenant database B2, and the replica data of tenant B is read from tenant database B1.

[0101] In this way, the original data can be copied to obtain duplicate data in this application, and the tenant is authorized to have full modification rights to the duplicate data, so the duplicate data can be freely customized by the tenant. Then, when the required data is convenient to expand, duplicate data can be set for one tenant; when the required data is convenient to upgrade, public data can be set for multiple tenants. In this way, different types of data can be used to meet the different needs of users.

[0102] Figure 6 According to an embodiment of the present application, a schematic diagram of the structure of a management device 600 is shown. In the embodiment of the present application, the management device 600 may be a cloud server, a server, or a server cluster that supports the operation of the above-mentioned database management system 20. The database management system 20 may be, for example, a database management system under a cloud platform that supports the operation of an insurance business system, which is not limited here.

[0103] like Figure 6 As shown, in some embodiments, the management device 600 may include one or more processors 604, a system control logic 608 connected to at least one of the processors 604, a system memory 612 connected to the system control logic 608, a non-volatile memory (NVM) 616 connected to the system control logic 608, and a network interface 620 connected to the system control logic 608.

[0104] In some embodiments, the processor 604 may include one or more single-core or multi-core processors. In some embodiments, the processor 604 may include any combination of general-purpose processors and special-purpose processors (e.g., graphics processors, application processors, baseband processors, etc.). In an embodiment where the management device 600 adopts an enhanced base station (evolved node B, eNB) or a radio access network (radio access network, RAN) controller, the processor 604 may be configured to execute various embodiments, such as Figures 1 to 5 One or more of the multiple embodiments shown.

[0105] In some embodiments, system control logic 608 may include any suitable interface controller to provide any suitable interface to at least one of processors 604 and / or any suitable device or component in communication with system control logic 608 .

[0106] In some embodiments, the system control logic 608 may include one or more memory controllers to provide an interface to the system memory 612. The system memory 612 may be used to load and store data and / or instructions. In some embodiments, the system memory 612 of the management device 600 may include any suitable volatile memory, such as a suitable dynamic random access memory (DRAM).

[0107] NVM 616 may include one or more tangible, non-transitory computer-readable media for storing data and / or instructions. In some embodiments, NVM 616 may include any suitable non-volatile memory such as flash memory and / or any suitable non-volatile storage device, such as at least one of a hard disk drive (HDD), a compact disc (CD) drive, and a digital versatile disc (DVD) drive.

[0108] NVM 616 may include a portion of storage resources on a device on which management device 600 is installed, or it may be accessible by the device but not necessarily a portion of the device. For example, NVM 616 may be accessed over a network via network interface 620.

[0109] In particular, system memory 612 and NVM 616 may include, respectively, a temporary copy and a permanent copy of instructions 624. Instructions 624 may include instructions that, when executed by at least one of processors 604, cause management device 600 to implement the following: Figure 3-4 In some embodiments, instructions 624, hardware, firmware, and / or software components thereof may additionally / alternatively be placed in system control logic 608, network interface 620, and / or processor 604.

[0110] The network interface 620 may include a transceiver for providing a radio interface for the management device 600, thereby communicating with any other suitable device (such as a front-end module, an antenna, etc.) through one or more networks. In some embodiments, the network interface 620 may be integrated with other components of the management device 600. For example, the network interface 620 may be integrated with at least one of the processor 604, the system memory 612, the NVM 616, and a firmware device (not shown) having instructions. When at least one of the processors 604 executes the instructions, the management device 600 implements the above-mentioned Figures 1 to 6 The method shown.

[0111] The network interface 620 may further include any suitable hardware and / or firmware to provide a multiple-input multiple-output radio interface. For example, the network interface 620 may be a network adapter, a wireless network adapter, a telephone modem and / or a wireless modem.

[0112] In one embodiment, at least one of the processors 604 may be packaged together with logic for one or more controllers of the system control logic 608 to form a system in package (SiP). In one embodiment, at least one of the processors 604 may be integrated on the same die with logic for one or more controllers of the system control logic 608 to form a system on a chip (SoC).

[0113] The management device 600 may further include an input / output (I / O) device 632. The I / O device 632 may include a user interface to enable a user to interact with the management device 600; the design of the peripheral component interface enables the peripheral components to interact with the management device 600. In some embodiments, the management device 600 further includes a sensor for determining at least one of an environmental condition and location information related to the management device 600.

[0114] In some embodiments, the user interface may include, but is not limited to, a display (e.g., an LCD display, a touch screen display, etc.), a speaker, a microphone, one or more cameras (e.g., a still image camera and / or a video camera), a flashlight (e.g., an LED flash), and a keyboard.

[0115] In some embodiments, the peripheral component interface may include, but is not limited to, a non-volatile memory port, an audio jack, and a power interface.

[0116] In some embodiments, the sensors may include, but are not limited to, gyroscope sensors, accelerometers, proximity sensors, ambient light sensors, and positioning units. The positioning unit may also be part of or interact with the network interface 620 to communicate with components of a positioning network (e.g., global positioning system (GPS) satellites).

[0117] References to "one embodiment" or "an embodiment" in the specification mean that the specific features, structures, or characteristics described in conjunction with the embodiment are included in at least one exemplary implementation or technology disclosed according to the embodiment of the present application. The appearance of the phrase "in one embodiment" in various places in the specification does not necessarily all refer to the same embodiment.

[0118] The disclosure of the embodiment of the present application also relates to an operating device for executing the text. The device can be specially constructed for the required purpose or it can include a general-purpose computer selectively activated or reconfigured by a computer program stored in the computer. Such a computer program can be stored in a computer-readable medium, such as, but not limited to any type of disk, including a floppy disk, an optical disk, a CD-ROM, a magneto-optical disk, a read-only memory (ROM), a random access memory (RAM), an EPROM, an EEPROM, a magnetic or optical card, an application-specific integrated circuit (ASIC) or any type of medium suitable for storing electronic instructions, and each can be coupled to a computer system bus. In addition, the computer mentioned in the specification may include a single processor or may be an architecture involving multiple processors for increased computing power.

[0119] In addition, the language used in this specification has been primarily selected for readability and instructional purposes and may not be selected to describe or limit the disclosed subject matter. Therefore, the present application embodiment disclosure is intended to illustrate rather than limit the scope of the concepts discussed herein.

Claims

1. A database management method, applied to a management device, wherein the management device comprises a first database, wherein the first database is used to store private data of a first tenant, It is characterized in that The method comprises: Receiving a database management request sent by a first electronic device of a first tenant, the database management request is used to instruct to authorize the use of data in the first database to a second tenant, the database management request includes: an identifier of the second tenant and a first access right authorized to the second tenant; In response to the received database management request, copying the first database into a second database; According to the identifier of the second tenant, establishing an association relationship between the second database and the second tenant; The access permission of the second tenant to the data in the second database is set to the first access permission, wherein the first access permission includes: read permission and write permission.

2. The method according to claim 1, It is characterized in that The database management request also includes an identifier of the first tenant and a second access permission authorized to the first tenant, the second access permission being a read permission, and the method further includes: Establishing an association relationship between the second database and the first tenant according to the identifier of the first tenant; The access permission of the first tenant to the data in the second database is set to the second access permission.

3. The method according to claim 1, It is characterized in that The management device further includes: a third database, wherein the third database is used to store public data of multiple tenants, and the method further includes: An association relationship between the third database and the second tenant is established according to the identifier of the second tenant.

4. The method according to claim 3, It is characterized in that The management device further includes: a fourth database, and the method further includes: According to the identifier of the second tenant, an association relationship between the fourth database and the second tenant is established, so that the fourth database is used to store the private data of the second tenant.

5. The method according to claim 4, It is characterized in that The method further comprises: receiving a data processing request from a second electronic device of the second tenant, wherein the data processing request includes an identifier of the second tenant, a requested access type, and a data type; Determining, according to the identifier of the second tenant, a database associated with the second tenant; Data processing is performed on a database associated with the second tenant according to the requested access type and the data type.

6. The method according to claim 5, It is characterized in that The requested access type includes writing data and reading data, and the method further includes: It is determined that the requested access type complies with access rights of a database associated with the second tenant to the second tenant.

7. The method according to claim 6, It is characterized in that The requested access type is write data or read data, the data type includes at least one of a public type, a private type, and a copy type, and, According to the requested access type and the data type, data processing is performed on a database associated with the second tenant, including: When the requested access type is write data, storing the public data in the received data of the second tenant in the third database, storing the private data in the received data of the second tenant in the fourth database, and storing the copy data in the received data of the second tenant in the second database; When the requested access type is to read data, the public data of the second tenant is read from the third database, the private data of the second tenant is read from the fourth database, and the replica data of the second tenant is read from the second database.

8. The method according to claim 7, It is characterized in that The data in the first database, the second database, the third database and the fourth database are all template data.

9. A management device, It is characterized in that The management device includes a management module and a database module. The database module includes a first database. The first database is used to store private data of the first tenant. The characteristics are as follows: The management module is configured to receive a database management request sent by a first electronic device of the first tenant, wherein the database management request is used to instruct to authorize the second tenant to use the data in the first database, and the database management request includes: an identifier of the second tenant and a first access right authorized to the second tenant; In response to the received database management request, the database module copies the first database into a second database; The management module is used to establish an association relationship between the second database and the second tenant according to the identifier of the second tenant; and set the second tenant's access rights to the data in the second database to the first access rights, wherein the first access rights include: read permission and write permission.

10. A management device, It is characterized in that include: A memory for storing instructions executed by one or more processors of a management device, and a processor, which is one of the processors of the electronic device, for executing the database management method according to any one of claims 1 to 8.

11. A computer readable medium, It is characterized in that The readable medium stores instructions, which, when executed on a computer, enable the computer to execute the database management method according to any one of claims 1 to 8.