CN117076473B - Metadata operation method, system, equipment and medium for SaaS multi-tenant - Google Patents

Metadata operation method, system, equipment and medium for SaaS multi-tenant Download PDF

Info

Publication number
CN117076473B
CN117076473B CN202311308627.9A CN202311308627A CN117076473B CN 117076473 B CN117076473 B CN 117076473B CN 202311308627 A CN202311308627 A CN 202311308627A CN 117076473 B CN117076473 B CN 117076473B
Authority
CN
China
Prior art keywords
tenant
database
metadata
meta
standard metadata
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202311308627.9A
Other languages
Chinese (zh)
Other versions
CN117076473A (en
Inventor
郑伟波
邬柏
许世鹏
孙鹏
郭蕾
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Inspur General Software Co Ltd
Original Assignee
Inspur General Software Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Inspur General Software Co Ltd filed Critical Inspur General Software Co Ltd
Priority to CN202311308627.9A priority Critical patent/CN117076473B/en
Publication of CN117076473A publication Critical patent/CN117076473A/en
Application granted granted Critical
Publication of CN117076473B publication Critical patent/CN117076473B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2282Tablespace storage structures; Management thereof
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/42Mailbox-related aspects, e.g. synchronisation of mailboxes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • H04L67/2895Intermediate processing functionally located close to the data provider application, e.g. reverse proxies
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

The application discloses a metadata operation method, system, equipment and medium for SaaS multi-tenant, belonging to the technical field of SaaS metadata management. The method comprises the following steps: connecting the tenant database and the meta standard metadata management database; judging whether the tenant matches with the latest public standard metadata according to the tenant information table; when the tenants are not matched, updating the meta standard metadata management library and the tenant database based on a meta database updating algorithm; when the latest public standard metadata are matched, loading a meta standard metadata management library and a tenant database; and when the tenant needs to update the tenant database, updating the tenant database based on the tenant database updating algorithm. According to the method, the storage space of the multi-tenant data is reduced, and the update, loading and utilization efficiency of the multi-tenant data is improved.

Description

Metadata operation method, system, equipment and medium for SaaS multi-tenant
Technical Field
The application relates to the technical field of SaaS metadata management, in particular to a method, a system, equipment and a medium for running metadata of SaaS multi-tenant.
Background
A software operating service (Software as a Service, saaS for short) is a service that enables users to connect and use cloud-based applications via the internet. Common examples are email, calendar and office tools.
In the prior art, the isolation mode of the database comprises two modes of isolation modes of multiple database instances and data isolation modes of different tenant ids of the same database. The isolation mode of the multi-database instance generally stores metadata information in independent databases, and the mode is convenient for the isolation management of multi-tenant data and the metadata storage generated by secondary development of different tenants, but causes great difficulty in the resource occupation and metadata update of the SaaS multi-tenant service. The resource expense and the memory occupation of the server are increased, and each time the standard product is updated, the upgrading operation is required to be carried out on each tenant, so that the metadata information in each tenant database is updated, the workload is high, and the risk is high. The same database is in a data isolation mode of tenant ids, and the method has the advantages that multi-tenant data are stored in the same database, metadata update and table structure update of SaaS multi-tenant services are facilitated, but multi-tenant data do not realize isolation of database instance levels, data isolation risks exist, metadata generated by different tenant customized development functions of SaaS are all stored in one database, real data isolation cannot be achieved for backup and restoration of database instances, and meanwhile single tenant environments and data migration are inconvenient.
Therefore, how to reduce the storage space of the multi-tenant data and improve the update, loading and utilization efficiency of the multi-tenant data is a problem to be solved.
Disclosure of Invention
The embodiment of the application provides a metadata operation method, system, equipment and medium for SaaS multi-tenant, which are used for solving the following technical problems: how to reduce the storage space of the multi-tenant data and improve the update, loading and utilization efficiency of the multi-tenant data.
In a first aspect, an embodiment of the present application provides a metadata running method for multiple tenants of SaaS, where the method includes: connecting the tenant database and the meta standard metadata management database; the tenant database comprises tenant service data and tenant private metadata, and the meta standard metadata management database comprises a tenant information table, public standard metadata, metadata description files and an object registry; judging whether the tenant matches with the latest public standard metadata according to the tenant information table; when the tenant does not match with the latest public standard metadata, updating a meta standard metadata management database and a tenant database based on a preset meta database updating algorithm; when the tenant matches the latest public standard metadata, loading a meta standard metadata management database and a tenant database based on a preset loading algorithm; when the tenant needs to update the tenant database, updating the tenant database based on a preset tenant database updating algorithm.
In one implementation manner of the present application, a tenant information table in a meta standard metadata management base is queried based on a preset lua script, and whether a tenant is expired is judged based on the tenant information table, which specifically includes: connecting the nginx proxy server and obtaining the connection time of the nginx proxy server; querying a tenant information table in a meta standard metadata management base based on a lua script; the tenant information table comprises a tenant name, a tenant type, a tenant access domain name, a tenant creation date, a tenant expiration date and a matched public standard metadata version; based on the connection time, matching the expiration date of the tenant in the tenant information table to judge whether the tenant is expired; and when the tenant is expired, rejecting the tenant access and reminding the tenant that the tenant is expired.
In one implementation manner of the present application, when tenant information is not expired, judging whether the tenant matches up with the latest public standard metadata according to the tenant information table, specifically including: based on the metadata description file of the meta standard metadata management library, acquiring the version of the public standard metadata of the meta standard metadata management library; and matching the version of the common standard metadata of the meta standard metadata management library based on the version of the matched common standard metadata in the tenant information table so as to judge whether the tenant is matched with the latest common standard metadata.
In one implementation manner of the present application, updating the meta standard metadata management library and the tenant database based on a preset meta database update algorithm specifically includes: acquiring a meta standard metadata management library update package and a json metadata information update package of a meta standard metadata management library; analyzing the json metadata information update package into a data storage format of a meta standard metadata management library, and storing the analyzed json metadata information update package in the meta standard metadata management library update package to obtain an official update package; adding an official update package to the meta standard metadata management library to update the meta standard metadata management library; the method comprises the steps that a minimum key of data stored in a preset database is used as a standard, and a meta standard metadata management database and a tenant database are matched on the basis of an official update package through a preset metadata comparison tool so as to obtain a differential update package; acquiring a version number of the matched public standard metadata in the tenant database; inserting the version number of the matched public standard metadata into a differential update packet to obtain a differential update data packet; integrating the difference update data packet into the tenant database to update the tenant database.
In one implementation manner of the present application, when a tenant is not expired and matches with the latest public standard metadata, loading a meta standard metadata management library and a tenant database based on a preset loading algorithm specifically includes: acquiring a loading request sent by a tenant, and constructing a plurality of processes; the process comprises a public channel and a private channel; processing a loading request based on a preset multiprocess parameter control algorithm to judge whether the loading request meets a preset requirement; when the loading request meets the preset requirement, adding the common standard metadata of the meta standard metadata management library into a common channel of the process; acquiring a tenant name based on the loading request, and acquiring tenant private metadata based on the tenant name; and adding tenant private metadata into the private channel to load the meta standard metadata management library and the tenant database.
In one implementation manner of the present application, processing a loading request based on a preset multiprocess parameter control algorithm specifically includes: acquiring an object registry based on the loading request; calculating the number of processes, the number of processes and a process memory required by the tenant based on the object registry; when any data in the process number, the process times and the process memory exceeds a preset parameter threshold value, reconstructing an object registry of the loading request and judging until the process number, the process times and the process memory do not exceed the preset parameter threshold value; when the number of processes, the number of processes and the process memory are smaller than a preset parameter threshold, the loading request meets the preset requirement.
In one implementation manner of the present application, when a tenant needs to update a tenant database, updating the tenant database based on a preset tenant database updating algorithm specifically includes: acquiring update data uploaded by a tenant; matching the tenant private metadata with the meta standard metadata management library based on the update data to obtain difference metadata of the update data, the tenant database and the meta standard metadata management library; acquiring a version number of the matched public standard metadata in the tenant database; inserting the version number of the matched public standard metadata into the difference metadata to obtain an update data packet; integrating the update data packet into the tenant database to update the tenant database.
In a second aspect, an embodiment of the present application further provides a metadata running system of SaaS multi-tenants, where the system includes: the device comprises a data connection module, a first judging module, a second judging module, a first updating module, a data loading module and a second updating module; the data connection module is used for connecting the tenant database and the meta standard metadata management database; the tenant database comprises tenant service data and tenant private metadata, and the meta standard metadata management database comprises a tenant information table, public standard metadata, metadata description files and an object registry; the first judging module is used for inquiring the tenant information table in the meta standard metadata management base based on a preset lua script and judging whether the tenant is out of date or not based on the tenant information table; the second judging module is used for judging whether the tenant is matched with the latest public standard metadata according to the tenant information table when the tenant information is not expired; the first updating module is used for updating the meta standard metadata management library based on a preset metadata updating algorithm when the tenant does not match with the latest public standard metadata; the data loading module is used for loading the meta standard metadata management library and the tenant database based on a preset loading algorithm when the tenant matches with the latest public standard metadata; and the second updating module is used for updating the tenant database based on a preset tenant database updating algorithm when the tenant needs to update the tenant database.
In a third aspect, an embodiment of the present application further provides a metadata running device for multiple tenants of SaaS, where the device includes: at least one processor; and a memory communicatively coupled to the at least one processor; wherein the memory stores instructions executable by the at least one processor, the instructions being executable by the at least one processor to enable the at least one processor to: connecting the tenant database and the meta standard metadata management database; the tenant database comprises tenant service data and tenant private metadata, and the meta standard metadata management database comprises a tenant information table, public standard metadata, metadata description files and an object registry; judging whether the tenant matches with the latest public standard metadata according to the tenant information table; when the tenant does not match with the latest public standard metadata, updating a meta standard metadata management database and a tenant database based on a preset meta database updating algorithm; when the tenant matches the latest public standard metadata, loading a meta standard metadata management database and a tenant database based on a preset loading algorithm; when the tenant needs to update the tenant database, updating the tenant database based on a preset tenant database updating algorithm.
In a fourth aspect, an embodiment of the present application further provides a non-volatile computer storage medium for metadata operation of SaaS multi-tenants, storing computer executable instructions, where the computer executable instructions are configured to: connecting the tenant database and the meta standard metadata management database; the tenant database comprises tenant service data and tenant private metadata, and the meta standard metadata management database comprises a tenant information table, public standard metadata, metadata description files and an object registry; judging whether the tenant matches with the latest public standard metadata according to the tenant information table; when the tenant does not match with the latest public standard metadata, updating a meta standard metadata management database and a tenant database based on a preset meta database updating algorithm; when the tenant matches the latest public standard metadata, loading a meta standard metadata management database and a tenant database based on a preset loading algorithm; when the tenant needs to update the tenant database, updating the tenant database based on a preset tenant database updating algorithm.
According to the metadata operation method, system, equipment and medium for the SaaS multi-tenant, the meta-data management library is created to serve as the management library of the SaaS multi-tenant standard product meta-data, a plurality of tenant databases are created, isolation of tenant private data is achieved by adopting a database instance level isolation scheme, the number of processes, the limit of the memory size of a single process and the limit of the number of times of requests of the single process can be flexibly adjusted according to the configuration size of a server, the scheme that the SaaS service multi-tenant shares one piece of standard product meta-data and different tenants customize function meta-data isolation is achieved. The method not only can update the metadata of the standard product rapidly, but also can reserve the metadata generated by personalized customization in different tenants, and can flexibly adjust the process parameter configuration to realize the full utilization of server resources, thereby achieving the effects of reducing the storage space of multi-user data storage and improving the utilization efficiency of multi-user data.
Drawings
The accompanying drawings, which are included to provide a further understanding of the application and are incorporated in and constitute a part of this application, illustrate embodiments of the application and together with the description serve to explain the application and do not constitute an undue limitation to the application. In the drawings:
fig. 1 is a flowchart of a metadata operation method of SaaS multi-tenant provided in an embodiment of the present application;
fig. 2 is a block diagram of a metadata running system of SaaS multi-tenant provided in an embodiment of the present application;
fig. 3 is a schematic diagram of an internal structure of a metadata running device of SaaS multi-tenant provided in an embodiment of the present application.
Detailed Description
For the purposes, technical solutions and advantages of the present application, the technical solutions of the present application will be clearly and completely described below with reference to specific embodiments of the present application and corresponding drawings. It will be apparent that the described embodiments are only some, but not all, of the embodiments of the present application. All other embodiments, which can be made by one of ordinary skill in the art without undue burden from the present disclosure, are within the scope of the present disclosure.
The embodiment of the application provides a metadata operation method, system, equipment and medium for SaaS multi-tenant, which are used for solving the following technical problems: how to reduce the storage space of the multi-tenant data and improve the update, loading and utilization efficiency of the multi-tenant data.
The following describes in detail the technical solution proposed in the embodiments of the present application through the accompanying drawings.
In the prior art, the existing SaaS multi-tenant isolation mode generally adopts two modes of an isolation mode of multiple database instances and a data isolation mode of different tenant ids of the same database.
In the multi-database instance isolation, each tenant has an independent database, e.g., tenant a corresponds to database a and tenant b corresponds to database b. The method has the advantages of facilitating the isolation management of multi-tenant data and the storage of metadata generated by secondary development of different tenants. The method has the defects that the resources of the multi-tenant service are occupied and metadata are difficult to update, namely each tenant can pull up a new process during running for logic processing of the current tenants, when the number of tenants simultaneously using the SaaS service is small, the server corresponding to the SaaS can support the use of the tenants, when the number of tenants simultaneously using the SaaS service is large, the server corresponding to the SaaS can possibly generate the conditions of blocking and even caving, and the fact that more and less processes are needed to be simultaneously supported for the server corresponding to the SaaS is needed to be described. And each iteration update of the standard product needs to carry out upgrading operation on each tenant, so that metadata information in each tenant database is updated, repeated contents in each tenant database need to be updated, the workload of updating is obviously increased, and the updating of multiple times is higher.
In the data isolation mode of different tenant ids of the same database, data of all tenants are stored in the same database, all public data can be referred to and used by all tenants, and private data is added into the tenant id information before the data. The method has the advantages that metadata updating and table structure updating of the SaaS multi-tenant service are facilitated, isolation of multi-tenant data is not achieved in the database, and private data of a tenant is easy to consult and steal because all data are in the same database, for example, private data a of tenant a is consulted by competitor tenant b. Metadata generated by the customized development functions of different tenants are all stored in the same database, so that real data isolation cannot be realized for backup and restoration of the database, and meanwhile, data migration of a single tenant is inconvenient.
Fig. 1 is a metadata operation flowchart of SaaS multi-tenant provided in an embodiment of the present application. As shown in fig. 1, the metadata operation method for SaaS multi-tenant provided in the embodiment of the present application specifically includes the following steps:
step 1, connecting a tenant database and a meta standard metadata management database; the tenant database comprises tenant service data and tenant private metadata, and the meta standard metadata management database comprises a tenant information table, public standard metadata, metadata description files and an object registry.
Firstly, a meta standard metadata management base is needed to be created, and the meta standard metadata management base is used for storing multi-tenant information, database information, standard product metadata information and metadata description file information. The tenant information is recorded in a tenant information table, and the tenant information table carries a tenant name, a tenant type, a tenant access domain name, a creation date, an expiration date, a standard metadata version, and whether the latest standard product metadata version is adapted or not, and it is required to be noted that the tenant information table is written when the tenant is created.
The database information comprises a database name, a corresponding tenant id and database connection information, and the database information is written when the tenant is created. The standard product metadata information comprises a field metadata table, a model metadata table, a view metadata table and a menu metadata table, and each metadata table is provided with a metadata version identification field. Metadata description file information includes file path, application name, belonging module, belonging field, json metadata content.
The initial data of the meta standard metadata management library originates from the process of creating a database by the system, the database creation can read json metadata description file content in engineering codes into a metadata information table of the database, and respectively write data into the metadata table in operation according to metadata classifications such as models, fields, views, menus and the like, the data is initial metadata of a SaaS standard product, and when standard metadata is updated subsequently, the latest json data and metadata information can be read into the meta standard metadata management library only by upgrading the meta standard metadata management library.
The tenant database is data of the tenant itself, the tenant database comprises tenant service data and tenant private metadata, the tenant service data is noun definition, noun interpretation, service rules, service indexes and other information of services performed by the tenant, the tenant private metadata is data set by the tenant itself for managing the tenant service data, and it can be understood that each new tenant is connected with the SaaS service, a new tenant database is created, and the new tenant database is bound with a new tenant.
After the meta standard metadata management library and the tenant database are created, the meta standard metadata management library and the tenant database are connected to acquire data therein.
And 2, inquiring a tenant information table in a meta standard metadata management base based on a preset lua script, and judging whether the tenant is out of date or not based on the tenant information table.
The lua script is used for querying the tenant information table, and can be easily called by the C/C++ code or can be used for calling the function of the C/C++ in turn, so that the lua can be widely applied in application programs. Not only as an extension script, but also as a common configuration file, replaces the file formats of xml, ini and the like, and is easier to understand and maintain. lua is written by a standard C, and codes are concise and can be compiled and run on almost all operating systems and platforms. A complete lua interpreter is only 200k, the speed of lua being fastest in all script engines. So the present embodiment takes the lua script as the optimal choice, it will be understood that, with the update of technology, a script better than the lua script will appear in the future, and the present application will be replaced accordingly.
When a tenant needs to use the SaaS service, it is first required to enter a domain name specific to the tenant, through which the SaaS service is used, and it can be understood that the domain name of each tenant is unique. In a specific example, there are tenant a and tenant b, where the domain name of tenant a is a.erp.com and the domain name of tenant b is b.erp.com.
Step 21, connecting the nginx proxy server and obtaining the connection time of the nginx proxy server; the nginx proxy server is used for storing the tenant database and the meta standard metadata management database.
The nginx proxy server is a high-performance HTTP and reverse proxy web server, the SaaS is built based on the ginx proxy server, and it can be understood that the SaaS service system can be built through other proxy server building platforms.
The current time is an event of applying for using the nginx proxy server by the tenant, and whether the tenant is out of date is judged by a subsequent step.
Step 22, inquiring a tenant information table in a meta standard metadata management base based on the lua script; the tenant information table comprises a tenant name, a tenant type, a tenant access domain name, a tenant creation date, a tenant expiration date and a matched public standard metadata version.
In a specific example, employee b of company a needs to log in the domain name of the mail sending system (a separate mail sending system built by company a through the SaaS system), namely a.erp.com, when the domain name of the user accessing tenant a exists, the nginx proxy server queries tenant information corresponding to the current domain name, namely a tenant information table corresponding to tenant a, through the lua script.
Step 23, based on the connection time, matching the tenant expiration date in the tenant information table to determine whether the tenant is expired.
Whether the tenant can continue to use the SaaS system or not can be judged through the tenant information table corresponding to the tenant, namely whether the tenant is expired or not is judged through the expiration time and the current time in the tenant information table.
In a specific example, when employee b of company a opens the domain name a.erp.com, the current time is 2023, 7 months, 26 days, 15:15:20, and the expiration time in the tenant information table of tenant a corresponding to company a is 2023, 7 months, 25 days, 24:00:00, employee b cannot open the domain name a.erp.com, i.e. tenant a cannot use SaaS service.
And step 24, refusing the access of the tenant when the tenant is expired, and reminding the tenant that the tenant is expired.
When the tenant expires, the user is refused to access the SaaS service system and the tenant is reminded of the expiration, and the reminding mode can be that a word pattern for asking for the use of the renewal after the expiration is printed on a webpage corresponding to the domain name.
It can be understood that, in the embodiment of the present application, a period of time before the expiration time recorded in the tenant information table (the time may be manually set, usually one month before the expiration time), a user corresponding to the tenant will be contacted by means of a domain name, a phone call, a sms, etc., and the user is usually a responsible person responsible for the SaaS system for the enterprise.
And 3, judging whether the tenant is matched with the latest public standard metadata according to the tenant information table when the tenant information is not expired.
When the tenant is not expired, the tenant can use the SaaS service, meanwhile, whether the tenant is matched with the latest public standard metadata is recorded in the tenant information table, and whether the tenant is matched with the latest public standard metadata is judged by matching the version of the public standard metadata in the meta standard metadata management library with the version of the matched public standard metadata in the tenant information table.
In a specific example, whether the tenant information table of the tenant a matches the latest public standard metadata is recorded, if not, the tenant a does not match the latest public standard metadata.
Whether the latest common standard metadata is matched is determined by the version of the common standard metadata used by the tenant and the version of the common standard metadata in the meta standard metadata management base, for example, the version of the common standard metadata of the tenant a is 1.027, the version of the common standard metadata in the meta standard metadata management base is 1.028, whether the tenant information table of the tenant a is matched with the latest common standard metadata is no, and if the tenant a chooses to update the common standard metadata to be 1.028, whether the tenant information table of the tenant a is matched with the latest common standard metadata is yes, and the determining process is automatically performed in the meta standard metadata management base.
And 4, updating the meta standard metadata management base and the tenant database based on a preset meta database updating algorithm when the tenant does not match with the latest public standard metadata.
The meta standard metadata management library is uniformly updated by an operator of the SaaS system, the meta standard metadata management library needs to be updated once, so that the metadata common to all tenants can be updated, and after the common metadata is updated, the meta standard metadata management library of an old version is reserved for the tenants to select.
When the tenant does not match with the latest public standard metadata, the tenant may not use the latest functions, so that the tenant needs to be reminded of whether to update and upgrade, and if the tenant likes an old version, the tenant can choose not to update. If the tenant does not match the latest public standard metadata, the SaaS system used by the tenant may not be used, because the update of the public standard metadata may be updated according to the update of the server, and if the tenant does not update to the latest version, the SaaS server may not be used, it may be understood that when the public standard metadata update caused by the system update exists, the tenant is notified in advance.
When the common standard metadata needs to be updated, i.e., the meta standard metadata management database needs to be updated, the meta standard metadata management database and the tenant database are updated according to the meta database update algorithm, which is shown in steps 41 to 45,
step 41, acquiring a meta standard metadata management library update package and a json metadata information update package of the meta standard metadata management library.
When the meta standard metadata management library needs to be updated, uploading a meta standard metadata management library update package and a json metadata information update package of the meta standard metadata management library.
And 42, analyzing the json metadata information update package into a data storage format of the meta standard metadata management library, and storing the analyzed json metadata information update package in the meta standard metadata management library update package to obtain an official update package.
Because json metadata information may include multiple formats, the json metadata information needs to be formatted and added to the meta standard metadata management library to obtain an official update package.
Step 43, adding an official update package to the meta standard metadata management database to update the meta standard metadata management database.
The meta standard metadata management library can be updated by adding the meta standard update package to the meta standard metadata management library, and the update technology is the prior art and will not be described herein.
And step 44, matching the meta standard metadata management library and the tenant database based on the official update package by using the minimum key of the preset database storage data as a standard through a preset metadata comparison tool so as to obtain a differential update package.
Traversing and comparing the standard metadata json information in the meta library and the personalized metadata information in each tenant library, wherein the comparison basis is json description minimum unit key, then generating a piece of tenant personalized metadata information matched with the standard metadata of the current new version, storing the information in a database corresponding to the tenant, and taking the acquired differentiated update package as an update package which needs to be updated by the tenant.
Step 45, obtaining the version number of the matched public standard metadata in the tenant database.
In order to match the tenant database, the differentiated update package needs to be matched with the version of the tenant database, thereby updating the tenant database.
Step 46, inserting the version number of the matched common standard metadata into the differential update package to obtain the differential update package.
And adding the version number to the difference update data packet after the version number is acquired, so that the difference update packet matched with the corresponding tenant database can be obtained.
Step 47, integrating the difference update data packet into the tenant database to update the tenant database.
The steps are the same as step 43, and will not be described in detail here.
And 5, loading the meta standard metadata management library and the tenant database based on a preset loading algorithm when the tenant matches with the latest public standard metadata.
When the tenant matches the latest public standard metadata, then the meta standard metadata management library and the tenant database are loaded through a loading algorithm to use the SaaS system.
It should be noted that, the present application provides a download service, that is, the tenant may download meta standard metadata management library and tenant database, and then does not need to load again without updating. I.e. only the meta standard metadata management library and tenant database need to be loaded the first time the SaaS system is used and updated.
Step 51, acquiring a loading request sent by a tenant, and constructing a plurality of processes; wherein the process includes a public channel and a private channel.
When the tenant needs to use the SaaS service, the tenant sends a use request, and the use request is a loading request. In order to meet the requirement of multi-tenant use, the SaaS system designs an operation mode of multi-process multi-tenant, namely multi-process design is performed to meet the requirement of multi-tenant use. Different tenants can be loaded into the same process or different processes as required, so that the resource cost of a single process of a single tenant is reduced, and if the single process cannot meet the requirement of the tenant, the service capability of the system can be improved by increasing the number of processes. And combining the nginx load balancing and the lua script routing strategy to realize flexible configuration and adjustment of resources under the conditions of single tenant and multiple tenants.
The public channel is used for transmitting public standard metadata, and the private channel is used for transmitting tenant private metadata.
Step 52, processing the loading request based on a preset multiprocess parameter control algorithm to determine whether the loading request meets a preset requirement.
When multiple tenants use the SaaS service at the same time, congestion of the SaaS service may be caused, so that the number of processes used by the tenants, the memory occupied in the processes (process memory) needs to be limited, and the number of times of requesting the processes (process times) needs to be requested, i.e. a preset requirement.
At this time, the loading request of the tenant is needed to be calculated, so as to obtain the number of processes corresponding to the loading request of the tenant, the memory occupied in the processes, and the number of times of requesting the processes, and when the loading request of the tenant meets the preset requirement, the meta standard metadata management library and the tenant database are loaded to the tenant.
Step 521, obtaining the object registry based on the loading request.
After the add request is obtained, an object registry is built by loading the request, wherein the object registry is stored in the meta standard metadata management library.
Step 522, calculating the number of processes, the number of processes and the process memory required by the tenant based on the object registry.
Public standard metadata and private metadata corresponding to tenants are recorded in the object registry, and the number of processes, the number of processes and the process memory are calculated according to the sizes of the public standard metadata and the private metadata.
Wherein, the process number is calculated: by configuring parameters of the number of processes, when the service is started, the corresponding number of processes can be started, each process can accept the requests of different tenants, and if a certain tenant requests a certain process, and the process does not have a registry object of a corresponding tenant, metadata corresponding to the tenant is required to be loaded through the step 4, and the registry object on the current process is constructed, so that the service is provided for the tenant.
And (3) process memory calculation: the process memory limitation is mainly used for solving the memory occupation problem under the mode of multiple processes and multiple tenants, if the memory resources of the server resources are limited, the memory resources can be flexibly utilized through configuration of memory parameters, when the process memory occupation reaches a set threshold value, the process exits and releases the memory resources after the task processing of the current process is completed, and then a new process is started to provide service.
Process request times limit: the parameter is similar to the memory limit parameter, and when the number of requests received by the current process reaches the upper limit, the process exits and releases the resource and starts a new process.
And step 523, reconstructing an object registry of the loading request and judging when any data in the process number, the process times and the process memory exceeds a preset parameter threshold value until the process number, the process times and the process memory do not exceed the preset parameter threshold value.
When any data in the process number, the process times and the process memory exceeds a preset parameter threshold, the fact that the meta standard metadata management library and the tenant database cannot be transmitted through the process is indicated, namely the process number, the process times and the process memory need to be recalculated.
Step 524, when the number of processes, the number of processes and the process memory are all smaller than a preset parameter threshold, the loading request meets a preset requirement.
And when the number of processes, the number of processes and the process memory are smaller than the preset parameter threshold, loading the meta standard metadata management database and the tenant database to the tenant.
And step 53, adding the common standard metadata of the meta standard metadata management library into the common channel of the process when the loading request meets the preset requirement.
Step 54, acquiring a tenant name based on the loading request, and acquiring tenant private metadata based on the tenant name.
And the tenant information table corresponds to the loading request, and the tenant name can be obtained through the tenant information table, so that the corresponding tenant database is found.
Step 55, adding tenant private metadata into the private channel to load meta standard metadata management library and tenant database.
To prevent private metadata of the tenant database from being transferred to other tenants as a result of the process, the private metadata is transferred through the private channel.
And 6, updating the tenant database based on a preset tenant database updating algorithm when the tenant needs to update the tenant database.
When the database of the tenant needs to be updated, the tenant database and the meta standard metadata management database are updated through a tenant database updating algorithm. The tenant database update algorithm is shown in steps 411 through 414.
Step 61, obtaining update data uploaded by the tenant.
Because the tenant database is tenant private data, the tenant is required to upload data which needs to be updated.
Step 62, matching the tenant private metadata and the meta standard metadata management database based on the update data to obtain difference metadata of the update data, the tenant database and the meta standard metadata management database.
After the tenant uploads the update data, the update data of the tenant may have the same content as the meta standard metadata management library and the tenant database, and the same content is the difference metadata, and the difference metadata does not need to be added into the tenant database. Thereby reducing the update time and the memory occupation of the tenant database.
Step 63, obtaining the version number of the matched common standard metadata in the tenant database, and inserting the version number of the matched common standard metadata into the difference metadata to obtain the update data packet.
And after the difference metadata are obtained, marking the version numbers on the difference metadata so as to update the tenant database, wherein the inserted version numbers are the same version numbers as the common standard metadata versions matched in the tenant database, and the difference metadata with the inserted version numbers are the update database.
Step 64, integrate the update data packet into the tenant database to update the tenant database.
And adding the update database to the corresponding tenant database, and updating the tenant database according to the update data uploaded by the tenant.
The foregoing is a method embodiment presented herein. Based on the same inventive concept, the embodiment of the application also provides a metadata running system of SaaS multi-tenant.
Fig. 2 is a metadata running system corresponding to the SaaS multi-tenant system of fig. 1 according to some embodiments of the present application, including: the device comprises a data connection module, a first judging module, a second judging module, a first updating module, a data loading module and a second updating module.
In one embodiment of the present application, a data connection module connects the tenant database and the meta standard metadata management database; the tenant database comprises tenant service data and tenant private metadata, and the meta standard metadata management database comprises a tenant information table, public standard metadata, metadata description files and an object registry; the first judging module is used for inquiring a tenant information table in the meta standard metadata management base based on a preset lua script and judging whether a tenant is overdue or not based on the tenant information table; the second judging module judges whether the tenant is matched with the latest public standard metadata according to the tenant information table when the tenant information is not expired; the first updating module is used for updating the meta standard metadata management library based on a preset metadata updating algorithm when the tenant does not match with the latest public standard metadata; the data loading module is used for loading the meta standard metadata management library and the tenant database based on a preset loading algorithm when the tenant matches with the latest public standard metadata; and the second updating module is used for updating the tenant database based on a preset tenant database updating algorithm when the tenant needs to update the tenant database.
Fig. 3 is a schematic diagram of an internal structure of a metadata running device of SaaS multi-tenant provided in an embodiment of the present application. As shown in fig. 3, the apparatus includes:
at least one processor 301;
and a memory 302 communicatively coupled to the at least one processor;
wherein the memory 302 stores instructions executable by the at least one processor, the instructions being executable by the at least one processor 301 to enable the at least one processor 301 to: connecting the tenant database and the meta standard metadata management database; the tenant database comprises tenant service data and tenant private metadata, and the meta standard metadata management database comprises a tenant information table, public standard metadata, metadata description files and an object registry; judging whether the tenant matches with the latest public standard metadata according to the tenant information table; when the tenant does not match with the latest public standard metadata, updating a meta standard metadata management database and a tenant database based on a preset meta database updating algorithm; when the tenant matches the latest public standard metadata, loading a meta standard metadata management database and a tenant database based on a preset loading algorithm; when the tenant needs to update the tenant database, updating the tenant database based on a preset tenant database updating algorithm.
Some embodiments of the present application provide a non-volatile computer storage medium corresponding to metadata execution of one of SaaS multi-tenants of fig. 1, storing computer executable instructions configured to: connecting the tenant database and the meta standard metadata management database; the tenant database comprises tenant service data and tenant private metadata, and the meta standard metadata management database comprises a tenant information table, public standard metadata, metadata description files and an object registry; judging whether the tenant matches with the latest public standard metadata according to the tenant information table; when the tenant does not match with the latest public standard metadata, updating a meta standard metadata management database and a tenant database based on a preset meta database updating algorithm; when the tenant matches the latest public standard metadata, loading a meta standard metadata management database and a tenant database based on a preset loading algorithm; when the tenant needs to update the tenant database, updating the tenant database based on a preset tenant database updating algorithm.
All embodiments in the application are described in a progressive manner, and identical and similar parts of all embodiments are mutually referred, so that each embodiment mainly describes differences from other embodiments. In particular, for the internet of things device and the medium embodiment, since they are substantially similar to the method embodiment, the description is relatively simple, and the relevant points are referred to in the description of the method embodiment.
The systems and media and the methods provided in the embodiments of the present application are in one-to-one correspondence, so that the systems and media also have similar beneficial technical effects to the corresponding methods, and since the beneficial technical effects of the methods have been described in detail above, the beneficial technical effects of the systems and media are not described here again.
It will be appreciated by those skilled in the art that embodiments of the present application may be provided as a method, system, or computer program product. Accordingly, the present application may take the form of an entirely hardware embodiment, an entirely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, the present application may take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, and the like) having computer-usable program code embodied therein.
The present application is described with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems) and computer program products according to embodiments of the application. It will be understood that each flowchart and/or block of the flowchart illustrations and/or block diagrams, and combinations of flowcharts and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means which implement the function specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
In one typical configuration, a computing device includes one or more processors (CPUs), input/output interfaces, network interfaces, and memory.
The memory may include volatile memory in a computer-readable medium, random Access Memory (RAM) and/or nonvolatile memory, such as Read Only Memory (ROM) or flash memory (flash RAM). Memory is an example of computer-readable media.
Computer readable media, including both non-transitory and non-transitory, removable and non-removable media, may implement information storage by any method or technology. The information may be computer readable instructions, data structures, modules of a program, or other data. Examples of storage media for a computer include, but are not limited to, phase change memory (PRAM), static Random Access Memory (SRAM), dynamic Random Access Memory (DRAM), other types of Random Access Memory (RAM), read Only Memory (ROM), electrically Erasable Programmable Read Only Memory (EEPROM), flash memory or other memory technology, compact disc read only memory (CD-ROM), digital Versatile Discs (DVD) or other optical storage, magnetic cassettes, magnetic tape disk storage or other magnetic storage devices, or any other non-transmission medium, which can be used to store information that can be accessed by a computing device. Computer-readable media, as defined herein, does not include transitory computer-readable media (transmission media), such as modulated data signals and carrier waves.
It should also be noted that the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or apparatus. Without further limitation, an element defined by the phrase "comprising one … …" does not exclude the presence of other like elements in a process, method, article or apparatus that comprises an element.
The foregoing is merely exemplary of the present application and is not intended to limit the present application. Various modifications and changes may be made to the present application by those skilled in the art. Any modifications, equivalent substitutions, improvements, etc. that fall within the spirit and principles of the present application are intended to be included within the scope of the claims of the present application.

Claims (9)

1. A method for running metadata of multiple tenants of SaaS, the method comprising:
connecting the tenant database and the meta standard metadata management database; the tenant database comprises tenant service data and tenant private metadata, and the meta standard metadata management database comprises a tenant information table, public standard metadata, metadata description files and an object registry;
judging whether the tenant matches with the latest public standard metadata according to the tenant information table;
when the tenant does not match with the latest public standard metadata, updating the meta standard metadata management database and the tenant database based on a preset meta database updating algorithm;
when the tenant matches the latest public standard metadata, loading the meta standard metadata management library and the tenant database based on a preset loading algorithm;
When a tenant needs to update a tenant database, updating the tenant database based on a preset tenant database updating algorithm;
when the tenant does not match with the latest public standard metadata, updating the meta standard metadata management database and the tenant database based on a preset meta database updating algorithm, wherein the method specifically comprises the following steps:
acquiring the meta standard metadata management library update package and the json metadata information update package of the meta standard metadata management library;
analyzing the json metadata information update package into a data storage format of the meta standard metadata management library, and storing the analyzed json metadata information update package in the meta standard metadata management library update package to obtain an official update package;
adding the official update package to the meta standard metadata management library to update the meta standard metadata management library;
the minimum key of the stored data of the preset database is used as a standard, and the meta standard metadata management database and the tenant database are matched on the basis of the official update package through a preset metadata comparison tool so as to obtain a differential update package;
acquiring version numbers of the matched public standard metadata in the tenant database;
Inserting the version number of the matched public standard metadata into the differential update package to obtain a differential update data package;
integrating the difference update data packet into the tenant database to update the tenant database.
2. The method for running metadata of multiple tenants in SaaS set forth in claim 1, wherein before determining whether the tenants match the latest public standard metadata according to the tenant information table, the method further includes querying a tenant information table in a meta standard metadata management base based on a preset lua script, and allowing the tenant to access when the tenant information table is not expired, specifically including:
connecting an nginx proxy server and obtaining the connection time of the nginx proxy server;
querying a tenant information table in the meta standard metadata management library based on a lua script; the tenant information table comprises a tenant name, a tenant type, a tenant access domain name, a tenant creation date, a tenant expiration date and a matched public standard metadata version;
based on the connection time, matching a tenant expiration date in a tenant information table to judge whether the tenant is expired;
Rejecting access of the tenant when the tenant is expired, and reminding the tenant that the tenant is expired;
and allowing the tenant to access when the tenant is not expired.
3. The method for running metadata of multiple tenants in SaaS set forth in claim 1, wherein determining whether the tenants match up-to-date common standard metadata according to the tenant information table specifically includes:
acquiring a version of common standard metadata of the meta standard metadata management library based on the metadata description file of the meta standard metadata management library;
and matching the version of the common standard metadata of the meta standard metadata management library based on the version of the matched common standard metadata in the tenant information table so as to judge whether the tenant is matched with the latest common standard metadata.
4. The method for running metadata of multiple tenants in SaaS set forth in claim 1, wherein when the tenants match up to date common standard metadata, loading the meta standard metadata management library and the tenant database based on a preset loading algorithm specifically includes:
acquiring a loading request sent by a tenant, and constructing a plurality of processes; wherein the process comprises a public channel and a private channel;
Processing the loading request based on a preset multiprocess parameter control algorithm to judge whether the loading request meets preset requirements;
when the loading request meets the preset requirement, adding the common standard metadata of the meta standard metadata management library into a common channel of the process;
acquiring a tenant name based on the loading request, and acquiring the tenant private metadata based on the tenant name;
and adding the tenant private metadata into the private channel to load the meta standard metadata management library and the tenant database.
5. The method for running metadata of multiple tenants in SaaS set forth in claim 4, wherein the processing the load request based on a preset multiprocess parameter control algorithm to determine whether the load request meets a preset requirement specifically includes:
acquiring an object registry based on the loading request;
calculating the number of processes, the number of processes and the process memory required by the tenant based on the object registry;
when any data in the process number, the process times and the process memory exceeds a preset parameter threshold, reconstructing an object registry of the loading request and judging until the process number, the process times and the process memory do not exceed the preset parameter threshold;
And when the number of processes, the number of processes and the process memory are smaller than a preset parameter threshold, the loading request meets a preset requirement.
6. The method for running metadata of multiple tenants in SaaS set forth in claim 1, wherein when a tenant needs to update a tenant database, updating the tenant database based on a preset tenant database update algorithm specifically includes:
acquiring update data uploaded by a tenant;
matching the tenant private metadata and the meta standard metadata management library based on the updated data to obtain difference metadata of the updated data, the tenant database and the meta standard metadata management library;
acquiring version numbers of the matched public standard metadata in the tenant database;
inserting the version number of the matched public standard metadata into the difference metadata to obtain an update data packet;
integrating the update data packet into the tenant database to update the tenant database.
7. A SaaS multi-tenant metadata runtime system, the system comprising: the device comprises a data connection module, a first judging module, a second judging module, a first updating module, a data loading module and a second updating module;
The data connection module is used for connecting the tenant database and the meta standard metadata management database; the tenant database comprises tenant service data and tenant private metadata, and the meta standard metadata management database comprises a tenant information table, public standard metadata, metadata description files and an object registry;
the first judging module is used for inquiring a tenant information table in a meta standard metadata management base based on a preset lua script and judging whether the tenant is out of date or not based on the tenant information table;
the second judging module judges whether the tenant matches with the latest public standard metadata according to the tenant information table;
the first updating module is configured to update the meta standard metadata management library based on a preset metadata updating algorithm when the tenant does not match the latest public standard metadata;
the data loading module is used for loading the meta standard metadata management library and the tenant database based on a preset loading algorithm when the tenant matches the latest public standard metadata;
the second updating module is used for updating the tenant database based on a preset tenant database updating algorithm when the tenant needs to update the tenant database;
When the tenant does not match with the latest public standard metadata, updating the meta standard metadata management database and the tenant database based on a preset meta database updating algorithm, wherein the method specifically comprises the following steps:
acquiring the meta standard metadata management library update package and the json metadata information update package of the meta standard metadata management library;
analyzing the json metadata information update package into a data storage format of the meta standard metadata management library, and storing the analyzed json metadata information update package in the meta standard metadata management library update package to obtain an official update package;
adding the official update package to the meta standard metadata management library to update the meta standard metadata management library;
the minimum key of the stored data of the preset database is used as a standard, and the meta standard metadata management database and the tenant database are matched on the basis of the official update package through a preset metadata comparison tool so as to obtain a differential update package;
acquiring version numbers of the matched public standard metadata in the tenant database;
inserting the version number of the matched public standard metadata into the differential update package to obtain a differential update data package;
Integrating the difference update data packet into the tenant database to update the tenant database.
8. A SaaS multi-tenant metadata execution device, the device comprising:
at least one processor;
and a memory communicatively coupled to the at least one processor;
wherein the memory stores instructions executable by the at least one processor to enable the at least one processor to:
connecting the tenant database and the meta standard metadata management database; the tenant database comprises tenant service data and tenant private metadata, and the meta standard metadata management database comprises a tenant information table, public standard metadata, metadata description files and an object registry;
judging whether the tenant matches with the latest public standard metadata according to the tenant information table;
when the tenant does not match with the latest public standard metadata, updating the meta standard metadata management database and the tenant database based on a preset meta database updating algorithm;
when the tenant matches the latest public standard metadata, loading the meta standard metadata management library and the tenant database based on a preset loading algorithm;
When a tenant needs to update a tenant database, updating the tenant database based on a preset tenant database updating algorithm;
when the tenant does not match with the latest public standard metadata, updating the meta standard metadata management database and the tenant database based on a preset meta database updating algorithm, wherein the method specifically comprises the following steps:
acquiring the meta standard metadata management library update package and the json metadata information update package of the meta standard metadata management library;
analyzing the json metadata information update package into a data storage format of the meta standard metadata management library, and storing the analyzed json metadata information update package in the meta standard metadata management library update package to obtain an official update package;
adding the official update package to the meta standard metadata management library to update the meta standard metadata management library;
the minimum key of the stored data of the preset database is used as a standard, and the meta standard metadata management database and the tenant database are matched on the basis of the official update package through a preset metadata comparison tool so as to obtain a differential update package;
acquiring version numbers of the matched public standard metadata in the tenant database;
Inserting the version number of the matched public standard metadata into the differential update package to obtain a differential update data package;
integrating the difference update data packet into the tenant database to update the tenant database.
9. A non-volatile computer storage medium storing computer executable instructions for metadata execution for SaaS multi-tenants, the computer executable instructions configured to:
connecting the tenant database and the meta standard metadata management database; the tenant database comprises tenant service data and tenant private metadata, and the meta standard metadata management database comprises a tenant information table, public standard metadata, metadata description files and an object registry;
judging whether the tenant matches with the latest public standard metadata according to the tenant information table;
when the tenant does not match with the latest public standard metadata, updating the meta standard metadata management database and the tenant database based on a preset meta database updating algorithm;
when the tenant matches the latest public standard metadata, loading the meta standard metadata management library and the tenant database based on a preset loading algorithm;
When a tenant needs to update a tenant database, updating the tenant database based on a preset tenant database updating algorithm;
when the tenant does not match with the latest public standard metadata, updating the meta standard metadata management database and the tenant database based on a preset meta database updating algorithm, wherein the method specifically comprises the following steps:
acquiring the meta standard metadata management library update package and the json metadata information update package of the meta standard metadata management library;
analyzing the json metadata information update package into a data storage format of the meta standard metadata management library, and storing the analyzed json metadata information update package in the meta standard metadata management library update package to obtain an official update package;
adding the official update package to the meta standard metadata management library to update the meta standard metadata management library;
the minimum key of the stored data of the preset database is used as a standard, and the meta standard metadata management database and the tenant database are matched on the basis of the official update package through a preset metadata comparison tool so as to obtain a differential update package;
acquiring version numbers of the matched public standard metadata in the tenant database;
Inserting the version number of the matched public standard metadata into the differential update package to obtain a differential update data package;
integrating the difference update data packet into the tenant database to update the tenant database.
CN202311308627.9A 2023-10-11 2023-10-11 Metadata operation method, system, equipment and medium for SaaS multi-tenant Active CN117076473B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311308627.9A CN117076473B (en) 2023-10-11 2023-10-11 Metadata operation method, system, equipment and medium for SaaS multi-tenant

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311308627.9A CN117076473B (en) 2023-10-11 2023-10-11 Metadata operation method, system, equipment and medium for SaaS multi-tenant

Publications (2)

Publication Number Publication Date
CN117076473A CN117076473A (en) 2023-11-17
CN117076473B true CN117076473B (en) 2024-02-06

Family

ID=88702705

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311308627.9A Active CN117076473B (en) 2023-10-11 2023-10-11 Metadata operation method, system, equipment and medium for SaaS multi-tenant

Country Status (1)

Country Link
CN (1) CN117076473B (en)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103577457A (en) * 2012-07-31 2014-02-12 国际商业机器公司 Method and system for controlling multi-tenant database
CN104731939A (en) * 2015-03-31 2015-06-24 浪潮集团有限公司 Method for lessees to share data through data lists
CN112906054A (en) * 2021-03-12 2021-06-04 光典信息发展有限公司 Multi-tenant database isolation method and device and electronic equipment
CN113190529A (en) * 2021-04-29 2021-07-30 电子科技大学 Multi-tenant data sharing storage system suitable for MongoDB database
CN113806334A (en) * 2021-09-18 2021-12-17 砺剑防务技术(新疆)有限公司 Multi-tenant database system supporting data model switching
CN115063198A (en) * 2022-06-16 2022-09-16 浪潮通用软件有限公司 Method, equipment and medium for performing data access on EPR (expressed resource Server) software under SaaS (software as a service) service
CN115510072A (en) * 2022-10-27 2022-12-23 北京慧友云商科技有限公司 Main data engine based on multi-tenant SaaS application platform
WO2023077970A1 (en) * 2021-11-04 2023-05-11 腾讯科技(深圳)有限公司 Metadata management method, related apparatus, device, and storage medium

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9460176B2 (en) * 2010-12-29 2016-10-04 Sap Se In-memory database for multi-tenancy
US20230169067A1 (en) * 2021-12-01 2023-06-01 Salesforce.Com, Inc. Online Updates to Schema Information in Multi-Tenant Database System

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103577457A (en) * 2012-07-31 2014-02-12 国际商业机器公司 Method and system for controlling multi-tenant database
CN104731939A (en) * 2015-03-31 2015-06-24 浪潮集团有限公司 Method for lessees to share data through data lists
CN112906054A (en) * 2021-03-12 2021-06-04 光典信息发展有限公司 Multi-tenant database isolation method and device and electronic equipment
CN113190529A (en) * 2021-04-29 2021-07-30 电子科技大学 Multi-tenant data sharing storage system suitable for MongoDB database
CN113806334A (en) * 2021-09-18 2021-12-17 砺剑防务技术(新疆)有限公司 Multi-tenant database system supporting data model switching
WO2023077970A1 (en) * 2021-11-04 2023-05-11 腾讯科技(深圳)有限公司 Metadata management method, related apparatus, device, and storage medium
CN115063198A (en) * 2022-06-16 2022-09-16 浪潮通用软件有限公司 Method, equipment and medium for performing data access on EPR (expressed resource Server) software under SaaS (software as a service) service
CN115510072A (en) * 2022-10-27 2022-12-23 北京慧友云商科技有限公司 Main data engine based on multi-tenant SaaS application platform

Also Published As

Publication number Publication date
CN117076473A (en) 2023-11-17

Similar Documents

Publication Publication Date Title
CN102185900B (en) Application service platform system and method for developing application services
US8694465B2 (en) System and method for context sensitive mobile data and software update
US7949569B2 (en) Distributed device information management system as a distributed information repository system
CN109669709B (en) Data migration method and data migration system for block chain upgrading
CN110032599B (en) Data structure reading and updating method and device, and electronic equipment
CN109492053B (en) Method and device for accessing data
CN108255708B (en) Method, device, storage medium and equipment for accessing production file in test environment
CN111858727B (en) Multi-data source data export system and method based on template configuration
US20160179840A1 (en) Cloud bursting a database
CN112000349B (en) Data upgrading method, device and medium based on SaaS
CN110888922B (en) Method and device for creating target table during data synchronization
CN114091099A (en) Authority hierarchical control method, equipment and storage medium for business system
US9665732B2 (en) Secure Download from internet marketplace
CN114528054A (en) Third-party SDK initialization method, device, equipment and medium based on service module
CN111198678A (en) Method and device for generating GraphQL front-end operation interface
CN117076473B (en) Metadata operation method, system, equipment and medium for SaaS multi-tenant
CN112598529A (en) Data processing method and device, computer readable storage medium and electronic equipment
CN112559118A (en) Application data migration method and device, electronic equipment and storage medium
CN202077062U (en) Application service platform system
CN114489674A (en) Data verification method and device of dynamic data model
CN110971664B (en) Interface service management system
US9936015B2 (en) Method for building up a content management system
EP4154129A1 (en) Database management methods and associated apparatus
US20240078140A1 (en) APPLICATION PROGRAMMING INTERFACE (API) ENABLER FOR UPDATED APIs
CN115934670B (en) Method and device for verifying copy placement strategy of HDFS (Hadoop distributed File System) multi-machine room

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant