Database access system for a database of compounds

By storing the general and personalized attributes of compounds separately in the compound database and optimizing data storage and querying using the database access system, the problems of wasted storage resources and low processing performance in compound databases with large data volumes are solved, achieving more efficient resource utilization and processing performance.

CN119669284BActive Publication Date: 2025-10-24BEIJING DP TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202411650172.3
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-11-18
Publication Date
2025-10-24
Estimated Expiration
2044-11-18

AI Technical Summary

Technical Problem

Existing compound databases have problems with high storage resource waste and low data processing performance when dealing with large amounts of data, mainly because the full attribute recording method leads to redundant field waste and excessive resource consumption.

Method used

The database access system using a compound database stores the general and personalized attributes of compounds separately through primary and secondary attribute tables. It utilizes modules such as a database business gateway, request message queue, feedback message queue, and cached message queue for data processing and management, thereby optimizing data storage and query mechanisms.

Benefits of technology

It effectively avoids the waste of storage resources, improves the overall task processing performance of the database, reduces the storage resource waste rate, and enhances data processing efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119669284B_ABST
    Figure CN119669284B_ABST
Patent Text Reader

Abstract

The embodiment of the present application relates to a kind of database access system of compound database, the system includes: database service gateway, request message queue, feedback message queue, message processing module, cache message queue, database management module, user authority configuration table, operation approval configuration table and compound database;Database service gateway is connected with request message queue and feedback message queue respectively;Message processing module is connected with request message queue, feedback message queue and cache message queue respectively;Database management module is connected with cache message queue, user authority configuration table, operation approval configuration table and compound database respectively.Through the present application, the waste rate of storage resource can be reduced, and the overall task processing performance of database is improved.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to the technical field of data processing, in particular to a database access system of a compound database. BACKGROUND

[0002] In many technical fields (such as semiconductor, new energy, nanotechnology fields, etc.), it is necessary to build a large data volume of compound database for technical workers to improve the research and development efficiency; the compounds mentioned here include compounds such as solvents, solutions, and electrolytes of battery electrolyte, positive / negative electrode material compounds of battery, and crystal material compounds, etc. Such compound database is usually based on a single compound as a basic data unit and stores all compound attributes related thereto. The compound attributes mentioned here should at least include the chemical formula of the compound molecule, the SMILES sequence of the compound molecule, and all physical / chemical properties of the compound molecule (such as melting point, boiling point, mass, number of atoms, effective charge, volume, density, oxidation-reduction energy, etc.).

[0003] At present, the conventional construction method of such compound database mostly adopts full attribute record method for data record construction, that is, a corresponding data record is constructed for each compound, and all attributes of the compound are collected in the corresponding data record. Through development practice, we found that this conventional construction method would have problems such as high storage resource waste rate and low data processing performance in the case of large data volume. The reason for high storage resource waste rate is that although there are some common attributes (referred to as first-level attributes) between compounds of different structures and application requirements, there are also some individualized attributes (referred to as second-level attributes). If the full attribute record method is used to construct the data record of the compound on the relational database (such as SQL database, MySQL database), it is necessary to count all attributes of all compounds and construct a maximum range of attribute field set based on the counting result. This will undoubtedly cause a large amount of redundant field waste in the case of large number of compounds, thereby resulting in a high storage resource waste rate. The reason for low data processing performance is that in the case of full attribute record method, all possible concurrent database processing tasks (such as export and query) must be operated based on the same data record with large data volume, which increases the resource consumption (such as memory resource) of each processing task. In the case of limited total resources, it will naturally lead to the decline of the overall task processing performance of the database. SUMMARY

[0004] The compound database database access system of the present application comprises a database service gateway, a request message queue, a feedback message queue, a message processing module, a cache message queue, a database management module, a user permission configuration table, an operation approval configuration table and a compound database. The project index table of the compound database is used for storing a plurality of project index records, each project index record corresponding to a database project and a compound primary attribute table. The compound primary attribute table of the compound database is used for storing a plurality of compound primary attribute records, each compound primary attribute record corresponding to a general attribute set of a compound and a compound secondary attribute table. The compound secondary attribute table of the compound database is used for storing a plurality of compound secondary attribute records, and the compound secondary attribute table of the compound database updates a group of secondary attributes of a compound by adding a compound secondary attribute record. The present application divides the storage space of the general attributes and the individual attributes of the compound by using the compound primary / secondary attribute table, and divides the storage space of each individual attribute of the compound by using the compound secondary attribute table, thereby avoiding the waste of redundant fields caused by the conventional full attribute record mode, and achieving the purposes of reducing the waste rate of storage resources and improving the overall task processing performance of the database.

[0005] To achieve the above object, the compound database database access system provided by the present application comprises a database service gateway, a request message queue, a feedback message queue, a message processing module, a cache message queue, a database management module, a user permission configuration table, an operation approval configuration table and a compound database.

[0006] The database service gateway is connected with the request message queue and the feedback message queue respectively; the message processing module is connected with the request message queue, the feedback message queue and the cache message queue respectively; the database management module is connected with the cache message queue, the user permission configuration table, the operation approval configuration table and the compound database respectively;

[0007] The database service gateway is used for receiving a first service request and recording and adding the request message queue according to the first service request; the database service gateway is also used for sending request feedback according to the feedback message queue;

[0008] The request message queue is used for storing a plurality of request message records;

[0009] The feedback message queue is used for storing a plurality of feedback message records;

[0010] The message processing module is used for adding cache messages to the cache message queue according to the request message queue; the message processing module is also used for adding feedback messages to the feedback message queue according to the cache message queue;

[0011] The cache message queue is used for storing a plurality of cache message records;

[0012] The database management module includes a user review unit, an operation approval unit, a data import unit, a data deletion unit, a data export unit and a data query unit; the user review unit is used for updating the user permission state of each cache message record in the cache message queue according to the user permission configuration table; the operation approval unit is used for updating the data review state of each cache message record in the cache message queue according to the operation approval configuration table; the data import unit is used for adding or updating data to the compound database according to the cache message queue; the data deletion unit is used for deleting data from the compound database according to the cache message queue; the data export unit is used for exporting data from the compound database according to the cache message queue; and the data query unit is used for querying data in the compound database according to the cache message queue;

[0013] The user permission configuration table is used for storing a plurality of user permission configuration records;

[0014] The operation approval configuration table is used for storing a plurality of operation approval configuration records;

[0015] The compound database comprises a project index table, a plurality of compound primary attribute tables and a plurality of compound secondary attribute tables; the project index table is used for storing a plurality of project index records; the compound primary attribute table is used for storing a plurality of compound primary attribute records; the compound secondary attribute table is used for storing a plurality of compound secondary attribute records; the project index record corresponds to the compound primary attribute table one by one; and the compound primary attribute record corresponds to the compound secondary attribute table one by one.

[0016] Preferably, the first service request comprises a first message identifier, a first message source address, a first message header and a first message body; the first message identifier is a unique message identifier of the current service request; the first message source address is a sender address of the current service request; the first message header comprises a first user identifier, a first user token, a first project identifier and a first instruction type; the first user identifier is a unique identity identifier of an initiating user initiating the current service request; the first user token is identity token information of the current user; the first project identifier is a database project identifier corresponding to database data to be operated by the current service request; the first instruction type comprises import, deletion, export and query; and the first message body comprises first instruction parameters; the first instruction parameters are a CSV file;

[0017] Each of the request message records corresponds to a first service request; the request message record comprises at least a request message identifier, a request message source address, a request message header, a request message body and a request message state; the request message identifier, the request message source address, the request message header and the request message body are respectively the first message identifier, the first message source address, the first message header and the first message body; and the request message state comprises unprocessed and processed;

[0018] Each of the feedback message records corresponds to a request message record; the feedback message record comprises at least a feedback message identifier, a feedback message target address, a feedback message header, a feedback message body and a feedback message state; the feedback message identifier matches the corresponding request message identifier; the feedback message target address matches the corresponding request message source address; the feedback message header comprises a second user identifier, a second project identifier, a second instruction type and a first instruction execution state; the second user identifier, the second project identifier and the second instruction type respectively match the first user identifier, the first project identifier and the first instruction type; the second instruction type comprises import, deletion, export and query; the first instruction execution state comprises success and exception; the feedback message body comprises first feedback data; the first feedback data is a compressed package file with one or more CSV files; and the feedback message state comprises unprocessed and processed.

[0019] Each of the cache message records corresponds to one of the request message records; the cache message record at least includes a request message identifier, a request source address, a request user identifier, a request user token, a request item identifier, a request instruction type, a request instruction parameter, a user permission state, a data audit state, request feedback data, and a request message state; the request message identifier, the request source address, the request user identifier, the request user token, the request item identifier, the request instruction type, and the request instruction parameter are matched with the corresponding first message identifier, the first message source address, the first user identifier, the first user token, the first item identifier, the first instruction type, and the first instruction parameter respectively; the request instruction type includes import, deletion, export, and query; the user permission state and the data audit state both include unreviewed, not satisfied, and satisfied; and the request message state includes unprocessed, under review, under processing, has been fed back, and has been processed;

[0020] The user permission configuration record at least includes a permission configuration record identifier, a registered user identifier, a registered user type, a registered user token, a token validity period, and a registered item identifier set; the permission configuration record identifier is a unique record identifier corresponding to the current user permission configuration record; each of the user permission configuration records corresponds to a registered user, and the registered user identifier is a unique identity identifier of the current registered user; the registered user type includes an administrator type and a plurality of non-administrator types; the registered user token is an identity token information pre-allocated for the current registered user, and the token validity period is the validity period information of the current token; the registered item identifier set is composed of one or more registered item identifiers when the registered item identifier set is not empty; each registered user can be added to one or more database items, and each of the registered item identifiers in the registered item identifier set is an item identifier of a database item in which the current registered user is located;

[0021] The operation approval configuration record at least includes an approval configuration record identifier, an approval project identifier, an approval configuration set, and an approval interface set. The approval configuration record identifier is a unique record identifier corresponding to the current operation approval configuration record. Each operation approval configuration record corresponds to a database project that needs data approval. The approval project identifier is a unique project identifier of the current database project. The approval configuration set is composed of one or more approval configurations. Each approval configuration is used to set whether a type of user type corresponding to three types of operation types needs approval. Each approval configuration is composed of an approval user type, an import configuration bit, a deletion configuration bit, and an export configuration bit. The approval user type includes an administrator type and all non-administrator types. The import, deletion, and export configuration bits have values of 0 and 1. When the import, deletion, or export configuration bit is 0, it means that the current user type does not need to be approved when handling data import, deletion, or export operations in the current database project. When the import, deletion, or export configuration bit is 1, it means that the current user type needs to be approved when handling data import, deletion, or export operations in the current database project. At least one of the import, deletion, and export configuration bits of the approval configuration is 1. The approval interface set includes an import approval interface, a deletion approval interface, and an export approval interface. Each of the import, deletion, and export approval interfaces is an artificial or other machine processing interface for data approval processing. Each approval interface is used to receive an approval application sent by the operation approval unit and sent to the corresponding artificial processing end or other machine processing end for approval operation, and returns the approval pass or approval fail conclusion returned by the artificial processing end or other machine processing end based on each approval application to the operation approval unit as the corresponding approval result.

[0022] Each project index record of the project index table corresponds to a database project in the compound database. The project index record corresponding to each database project in the project index table can only be added once before being deleted, but can be modified multiple times. The project index record at least includes an index record identifier, a project index identifier, a project member identifier set, an index record state, and a first attribute table identifier. The index record identifier is a unique record identifier of the current project index record. The project index identifier is a unique project identifier of the current database project. The project member identifier set includes one or more member user identifiers. Each member user identifier corresponds to a unique identity of a registered user who joins the current database project. The index record state includes not deleted and deleted. The first attribute table identifier is a unique identifier of the corresponding compound first attribute table.

[0023] Each of the compound primary attribute tables corresponds to one database item in the compound database; each of the compound primary attribute records in each of the compound primary attribute tables corresponds to one compound in the current database item; the compound primary attribute record corresponding to each compound in the compound primary attribute table can only be added once before being deleted, but can be modified multiple times; the compound primary attribute record at least includes a primary attribute record identifier, a SMILES sequence, a molecular chemical formula, a chemical element sequence, a first type of molecular fingerprint, a second type of molecular fingerprint, a third type of molecular fingerprint, a primary attribute set, a primary attribute record state, and a secondary attribute table identifier; the primary attribute record identifier is a unique record identifier of the current compound primary attribute record; the SMILES sequence is a SMILES sequence of the current compound; the molecular chemical formula is a chemical expression of a molecule of the current compound; the chemical element sequence is a chemical element set of a molecule of the current compound, which is composed of multiple chemical elements; the first, second, and third types of molecular fingerprints are torsionbv algorithm molecular fingerprints, mfp2 algorithm molecular fingerprints, and ffp2 algorithm molecular fingerprints of a molecule of the current compound, respectively; all attributes of each compound are divided into two attribute sets, i.e., a general attribute set and an individualized attribute set, wherein the general attribute set is composed of multiple general attributes, and the primary attribute set in the compound primary attribute record corresponding to each compound corresponds to the general attribute set of the current compound; the primary attribute set includes multiple primary attributes, each of which is composed of a pair of an attribute name and an attribute value, and each of the primary attributes corresponds to one general attribute in the general attribute set of the current compound; the primary attribute record state includes not deleted and deleted; and the secondary attribute table identifier is a unique identifier of the corresponding compound secondary attribute table;

[0024] Each of the secondary attribute tables of the compounds corresponds to one compound in one database item in the compound database; all attributes of each compound are divided into two attribute sets, general attributes and individualized attributes, and the individualized attribute set is further subdivided into multiple secondary attribute subsets, each of which has a unique classification name; each of the secondary attribute records in the secondary attribute table of the compound corresponding to the current compound corresponds to a secondary attribute update operation of one secondary attribute subset of the compound; the secondary attribute record at least includes secondary attribute record identification, secondary attribute classification name, secondary attribute set, secondary attribute version, secondary attribute addition time and secondary attribute record state; the secondary attribute record identification is the unique record identification of the current secondary attribute record; the secondary attribute classification name is the classification name of the secondary attribute subset updated this time; the secondary attribute set is the secondary attribute subset updated this time, which is composed of multiple secondary attributes, each of which has a pair of attribute name and attribute value; the secondary attribute version is the version information corresponding to the secondary attribute set; the secondary attribute addition time is the addition time of the current secondary attribute record; and the secondary attribute record state includes un-deleted and deleted.

[0025] Preferably, the database service gateway is specifically used for parsing the corresponding first message identification, first message source address, first message header and first message body from the first service request as the corresponding current message identification, current message source address, current message header and current message body based on a preset request message parsing rule when recording and adding the request message queue according to the first service request; a request message record is added in the request message queue as a corresponding current added record; the request message identification, request message source address, request message header and request message body of the current added record are set as the current message identification, current message source address, current message header and current message body; and the request message state of the current added record is set as unprocessed.

[0026] Preferably, the database service gateway is specifically configured to record all the feedback message records with the feedback message state as unprocessed in the feedback message queue as unprocessed records, and take the earliest one of the unprocessed records as a corresponding current record when performing the request feedback sending processing according to the feedback message queue; and when the current record is not empty, perform corresponding feedback message encapsulation processing according to the feedback message identifier, the feedback message target address, the feedback message header and the feedback message body of the current feedback message record to obtain a corresponding current feedback message according to a preset feedback message encapsulation rule; and send the current feedback message to the feedback message target address of the current feedback message record; and reset the feedback message state of the current record to processed after the message is successfully sent.

[0027] Preferably, the message processing module is specifically configured to record all the request message records with the request message state as unprocessed in the request message queue as unprocessed records, and take the earliest one of the unprocessed records as a corresponding current request message record when performing the cache message adding processing on the cache message queue according to the request message queue.

[0028] Preferably, the message processing module is specifically configured to record all the request message records with the request message state as unprocessed in the request message queue as unprocessed records, and take the earliest one of the unprocessed records as a corresponding current request message record when performing the cache message adding processing on the cache message queue according to the request message queue.

[0029] Preferably, the message processing module is specifically configured to record all the request message records with the request message state as unprocessed in the request message queue as unprocessed records, and take the earliest one of the unprocessed records as a corresponding current request message record when performing the cache message adding processing on the cache message queue according to the request message queue.

[0030] Preferably, the message processing module is specifically configured to record all the request message records with the request message state as unprocessed in the request message queue as unprocessed records, and take the earliest one of the unprocessed records as a corresponding current request message record when performing the cache message adding processing on the cache message queue according to the request message queue.

[0031] Preferably, the message processing module is specifically configured to record all the request message records with the request message state as unprocessed in the request message queue as unprocessed records, and take the earliest one of the unprocessed records as a corresponding current request message record when performing the cache message adding processing on the cache message queue according to the request message queue.

[0032] Preferably, the message processing module is specifically configured to record all the request message records with the request message state as unprocessed in the request message queue as unprocessed records, and take the earliest one of the unprocessed records as a corresponding current request message record when performing the cache message adding processing on the cache message queue according to the request message queue.

[0033] and the data audit state of the current cache message record are set as un-audited; and the request feedback data of the current cache message record is set as null; and the request message state of the current cache message record is set as unprocessed;

[0034] and at the end of the setting of the current cache message record, the request message state of the current cache message record is reset as processed.

[0035] Preferably, the message processing module is specifically used for, in the feedback message adding processing of the feedback message queue according to the cache message queue,

[0036] the cache message records with the request message state as feedback in the cache message queue are recorded as feedback records, and the earliest one in time is taken as the corresponding current cache message record;

[0037] and when the current cache message record is not null, whether the user permission state and the data audit state of the current cache message record are both satisfied is identified, if yes, the corresponding current instruction execution state is set as success, and if not, the corresponding current instruction execution state is set as exception;

[0038] and the request message identification and the request source address of the current cache message record are taken as the corresponding feedback message identification and feedback message target address; and the request user identification, the request item identification, the request instruction type and the current instruction execution state of the current cache message record are taken as the second user identification, the second item identification, the second instruction type and the first instruction execution state to form the feedback message head; and the request feedback data of the current cache message record is taken as the first instruction feedback data to form the feedback message body; and a corresponding feedback message state is set as unprocessed;

[0039] and a corresponding feedback message record is added to the feedback message queue by the obtained feedback message identification, feedback message target address, feedback message head, feedback message body and feedback message state.

[0040] and after the feedback message record is successfully added, the request message state of the current cache message record is set as processed.

[0041] Preferably, the user audit unit is specifically used for, in the user permission state updating processing of each cache message record in the cache message queue according to the user permission configuration table,

[0042] All cached message records in the cached message queue whose request message status is unprocessed are recorded as unprocessed records, and the unprocessed record with the earliest time is used as the corresponding current unprocessed record; the requesting user identifier, the requesting user token and the requesting project identifier of the current unprocessed record are used as the corresponding current user identifier, current user token and current project identifier; and the current time is used as the corresponding current token time;

[0043] and taking the user authority configuration record in the user authority configuration table in which the registered user identifier matches the current user identifier, the registered user token matches the current user token, and the token validity period meets the current token time as the corresponding current user authority configuration record;

[0044] and identifying whether the current user authority configuration record is empty;

[0045] If the current user authority configuration record is empty, the user authority status and the data review status of the current unprocessed record are both set to unsatisfied, and the request message status of the current unprocessed record is set to fed back;

[0046] If the current user authority configuration record is not empty, it is confirmed whether there is a registration project identifier matching the current project identifier in the registration project identifier set of the current user authority configuration record; if it is confirmed that it exists, the user authority status of the current unprocessed record is set to satisfied, and the request message status of the current unprocessed record is set to under review; if it is confirmed that it does not exist, the user authority status and the data review status of the current unprocessed record are both set to unsatisfied, and the request message status of the current unprocessed record is set to fed back.

[0047] Preferably, the operation approval unit is specifically configured to, when performing data review status update processing on each cache message record in the cache message queue according to the operation approval configuration table,

[0048] record in the request message state of being in review in the cache message queue as a record in review, and take the one with the earliest time as the corresponding current record in review; and take the request user identifier, request item identifier, request instruction type and request instruction parameter of the current record in review as the corresponding current user identifier, current item identifier, current instruction type and current instruction parameter; and take the registered user type of the user permission configuration record in the user permission configuration table matching the registered user identifier and the current user identifier as the corresponding current user type; and take the operation approval configuration record in the operation approval configuration table matching the approval item identifier and the current item identifier as the corresponding current operation approval configuration record;

[0049] and identify whether the current operation approval configuration record is empty;

[0050] If the current operation approval configuration record is empty, set the data review state of the current record in review as satisfied, and set the request message state of the current record in review as being in processing;

[0051] If the current operation approval configuration record is not empty, take the approval configuration in the approval configuration set of the current operation approval configuration record matching the approval user type and the current user type as the corresponding current approval configuration, and identify whether the current approval configuration is empty;

[0052] If the current approval configuration is empty, set the data review state of the current record in review as satisfied, and set the request message state of the current record in review as being in processing;

[0053] If the current approval configuration is not empty, confirm whether there is a configuration bit corresponding to the current instruction type in the import, delete and export configuration bits of the current approval configuration; if there is or there is not, set the data review state of the current record in review as satisfied, and set the request message state of the current record in review as being in processing; if it is confirmed that there is, take the configuration bit corresponding to the current instruction type in the import, delete and export configuration bits of the current approval configuration as the corresponding current configuration bit, and identify the current configuration bit;

[0054] If the current configuration bit is 0, set the data review state of the current record in review as satisfied, and set the request message state of the current record in review as being in processing;

[0055] If the current configuration bit is 1, the import, deletion and export approval interface corresponding to the current instruction type in the approval interface set of the current operation approval configuration record is taken as the corresponding current approval interface; and a unique timestamp is generated as a corresponding first application identifier based on the current time, and a corresponding first approval application is composed of the first application identifier, the current user identifier, the current project identifier, the current instruction type and the current instruction parameter, and is sent to the current approval interface; and after successful sending, the request message identifier recorded in the current audit is taken as a corresponding first message identifier, and a corresponding first approval record is composed of the first application identifier and the first message identifier and is saved; and after successful saving of the approval record, the request message state recorded in the current audit is set to processing.

[0056] Preferably, the operation approval unit is further configured to, when a corresponding first approval result is received from any approval interface, take the first approval result currently received as a corresponding current approval result; take the first application identifier matching the second application identifier of the current approval result from all the saved first approval records as a corresponding current approval record; take the cached message record with the request message identifier matching the first message identifier of the current approval record in the cached message queue as a corresponding current message record; take the first approval feedback of the current approval result as a corresponding current approval feedback; identify the current approval feedback; if the current approval feedback is approval, set the data audit state of the current message record to meet; if the current approval feedback is not approved, set the data audit state of the current message record to not meet, and set the request message state of the current message record to have been fed back; wherein the first approval result comprises the second application identifier and the first approval feedback; the first approval feedback comprises approval and non-approval.

[0057] Preferably, when the first instruction type of the first business request is import, deletion, export and query, the first instruction parameter corresponds to a CSV file, which is recorded as a corresponding import instruction file, a deletion instruction file, an export instruction file and a query instruction file.

[0058] The first row of the import, deletion, export and query instruction file is a column field row, and the second row to the last row is a data row; each data row corresponds to an import, deletion, export and query operation; the field format of the column field row of the import, deletion, export and query instruction file meets the corresponding import file field format requirement, deletion file field format requirement, export file field format requirement and query file field format requirement.

[0059] The column fields required by the import file field format are composed of an import classification field, a group member field, a SMILES field, a chemical formula field, an element sequence field, a one-type fingerprint field, a two-type fingerprint field, a three-type fingerprint field, a first-level attribute field, a second-level attribute classification field, a second-level attribute field, and a version field; the import classification field includes project creation, first-level attribute import, and second-level attribute import;

[0060] When the import classification field is project creation, the group member field is a set of project group member identifiers composed of one or more registered user identifiers; the SMILES field, the chemical formula field, the element sequence field, the one-type fingerprint field, the two-type fingerprint field, the three-type fingerprint field, the first-level attribute field, the second-level attribute classification field, the second-level attribute field, and the version field are all empty;

[0061] When the import classification field is first-level attribute import, the group member field, the second-level attribute classification field, the second-level attribute field, and the version field are all empty; the SMILES field, the chemical formula field, the element sequence field, the one-type fingerprint field, the two-type fingerprint field, the three-type fingerprint field, and the first-level attribute field are respectively a corresponding SMILES sequence, a molecular chemical formula, a chemical element sequence, a one-type molecular fingerprint, a two-type molecular fingerprint, a three-type molecular fingerprint, and a first-level attribute set;

[0062] When the import classification field is second-level attribute import, the group member field, the chemical formula field, the element sequence field, the one-type fingerprint field, the two-type fingerprint field, the three-type fingerprint field, and the first-level attribute field are empty; the SMILES field, the second-level attribute classification field, the second-level attribute field, and the version field are respectively a corresponding SMILES sequence, a second-level attribute classification name, a second-level attribute set, and a second-level attribute version;

[0063] The column fields required by the delete file field format are composed of a delete classification field, a delete SMILES field, a delete attribute field, and a delete version field; the delete classification field includes project deletion, compound deletion, and attribute deletion;

[0064] When the delete classification field is project deletion, the delete SMILES field, the delete attribute field, and the delete version field are all empty;

[0065] When the delete classification field is compound deletion, the delete SMILES field is a corresponding SMILES sequence; the delete attribute field and the delete version field are both empty;

[0066] The deletion classification field is an attribute deletion, the deletion SMILES field is a corresponding SMILES sequence, the deletion attribute field is empty or a corresponding secondary attribute classification name, the deletion version field is empty or a secondary attribute version, and the deletion attribute field and the deletion version field cannot be empty at the same time;

[0067] The export file field format required column field is composed of an export classification field and an export SMILES field; the export classification field includes project export and compound export; when the export classification field is project export, the export SMILES field is empty; when the export classification field is compound export, the export SMILES field is a corresponding SMILES sequence;

[0068] The query file field format required column field is composed of a query classification field, a SMILES configuration field, a chemical element configuration field, and a similarity configuration field; the query classification field includes SMILES-based query and chemical element-based query; when the query classification field is SMILES-based query, the SMILES configuration field is a corresponding SMILES sequence, the chemical element configuration field is empty, and the similarity configuration field is empty or a similarity; when the query classification field is chemical element-based query, the SMILES configuration field and the similarity configuration field are empty, and the chemical element configuration field is a chemical element sequence.

[0069] Preferably, the data import unit is specifically used for, when the compound database is processed for data addition or update according to the cache message queue,

[0070] The cache message records in which the user permission state and the data audit state both meet the requirements, the request message state is processing, and the request instruction type is import are recorded as import operation records, and the import operation record with the earliest time is taken as a corresponding current import operation record;

[0071] The request item identifier of the current import operation record is taken as a corresponding current item identifier, the CSV file of the request instruction parameter of the current import operation record is taken as a corresponding current import instruction file, a first data row sequence is obtained by performing data row extraction on the current import instruction file based on the import file field format requirement, and the first data row sequence is sequentially sorted by one or more first data rows;

[0072] and sequentially traversing all the first data rows of the first data row sequence; and in the process of traversal, taking the first data row currently traversed as a corresponding current data row; and extracting the sequence index of the current data row in the first data row sequence as a corresponding first processing index; and extracting the import classification field of the current data row as a corresponding current import classification; and identifying the current import classification; if the current import classification is project creation, performing corresponding database project creation or update processing in the compound database based on the current project identifier and the group member field of the current data row to obtain a corresponding first processing result; if the current import classification is primary attribute import, performing corresponding compound primary attribute addition or update processing in the compound database based on the current project identifier and the SMILES field, the chemical formula field, the element sequence field, the one-type fingerprint field, the two-type fingerprint field, the three-type fingerprint field, and the primary attribute field of the current data row to obtain a corresponding first processing result; if the current import classification is secondary attribute import, performing corresponding compound secondary attribute addition processing in the compound database based on the current project identifier and the SMILES field, the secondary attribute classification field, the secondary attribute field, and the version field of the current data row to obtain a corresponding first processing result; and a corresponding first processing feedback is composed of the first processing index and the first processing result; and at the end of traversal, a corresponding first processing feedback sequence is composed of all the first processing feedbacks obtained; the first processing result includes success and failure;

[0073] and the first processing feedback sequence is brought into a preset one-type feedback CSV file template to perform corresponding CSV file assembly to obtain a corresponding first feedback CSV file; and a preset file compression package tool is used to perform file compression on the first feedback CSV file to obtain a corresponding first compression package file; and the request feedback data of the current import operation record is set based on the first compression package file; and the request message state of the current import operation record is set as having been fed back.

[0074] Preferably, the data deletion unit is specifically used for, in the process of deleting data from the compound database according to the cache message queue,

[0075] the cache message records in which the user permission state and the data audit state both meet the requirements, the request message state is processing, and the request instruction type is deletion are all recorded as deletion operation records, and the deletion operation record with the earliest time is taken as a corresponding current deletion operation record;

[0076] and the request item identifier of the current deletion operation record as a corresponding current item identifier; and the CSV file of the request instruction parameter of the current deletion operation record as a corresponding current deletion instruction file; and extracting data rows formatted based on the deletion file field format requirement from the current deletion instruction file to obtain a corresponding second data row sequence; the second data row sequence is sequentially sorted by one or more second data rows;

[0077] and sequentially traversing all the second data rows of the second data row sequence; and in the traversal process, the second data row currently traversed as a corresponding current data row; and extracting the sequence index of the current data row in the second data row sequence as a corresponding second processing index; and extracting the deletion classification field of the current data row as a corresponding current deletion classification; and identifying the current deletion classification; if the current deletion classification is item deletion, performing corresponding database item deletion processing in the compound database based on the current item identifier to obtain a corresponding second processing result; if the current deletion classification is compound deletion, performing corresponding compound deletion processing in the compound database based on the current item identifier and the deletion SMILES field of the current data row to obtain a corresponding second processing result; if the current deletion classification is attribute deletion, performing corresponding compound attribute deletion processing in the compound database based on the current item identifier and the deletion SMILES field, the deletion attribute field and the deletion version field of the current data row to obtain a corresponding second processing result; and the second processing index and the second processing result obtained form a corresponding second processing feedback; and at the end of the traversal, all the second processing feedbacks obtained form a corresponding second processing feedback sequence; the second processing result includes success and failure;

[0078] and bringing the second processing feedback sequence into a preset feedback CSV file template to obtain a corresponding second feedback CSV file; and performing file compression on the second feedback CSV file based on a preset file compression package tool to obtain a corresponding second compression package file; and setting the request feedback data of the current deletion operation record based on the second compression package file; and setting the request message state of the current deletion operation record as feedback.

[0079] Preferably, the data export unit is specifically used for, when the compound database is processed for data export according to the cache message queue,

[0080] Recording all cached message records in the cached message queue whose user authority status and data audit status are both satisfied, whose request message status is processing, and whose request instruction type is export as export operation records, and taking the earliest export operation record as the corresponding current export operation record;

[0081] and using the request project identifier of the current export operation record as the corresponding current project identifier; and using the CSV file of the request instruction parameters of the current export operation record as the corresponding current export instruction file; and extracting the data rows formatted from the current export instruction file based on the export file field format requirements to obtain a corresponding third data row sequence; the third data row sequence is formed by sequentially sorting one or more third data rows;

[0082] and sequentially traverse all the third data rows of the third data row sequence; and in the traversal process, take the third data row currently traversed as the corresponding current data row; and extract the sequence index of the current data row in the third data row sequence as the corresponding third processing index; and extract the export classification field of the current data row as the corresponding current export classification; and identify the current export classification; if the current export classification is project export, then based on the current project identifier, perform corresponding database project export processing in the compound database to obtain a corresponding third processing result, and bring the third processing result and the corresponding third processing index into a preset second-category feedback CSV file template for corresponding CSV file assembly to obtain a corresponding third feedback CSV file; if the current export classification is compound export, then based on the current project identifier and the export SMILES field of the current data row, perform corresponding compound export processing in the compound database to obtain a corresponding third processing result, and bring the third processing result and the corresponding third processing index into a preset third-category feedback CSV file template for corresponding CSV file assembly to obtain a corresponding third feedback CSV file;

[0083] At the end of the traversal, all the third feedback CSV files obtained are saved in the same file directory, and the current file directory is compressed based on the preset file compression package tool to obtain the corresponding third compressed package file; and based on the third compressed package file, the request feedback data of the current export operation record is set; and the request message status of the current export operation record is set to feedback.

[0084] Preferably, the data query unit is specifically configured to, when performing data query processing on the compound database according to the cache message queue,

[0085] record all the cache message records in the cache message queue as query operation records, wherein the user permission state and the data audit state of the cache message records satisfy the condition, the request message state is in processing, and the request instruction type is query, and the query operation record with the earliest time is taken as the corresponding current query operation record;

[0086] and the request item identification of the current query operation record is taken as the corresponding current item identification; the CSV file of the request instruction parameter of the current query operation record is taken as the corresponding current query instruction file; and the fourth data row sequence is obtained by extracting the data rows formatted based on the query file field format requirement from the current query instruction file; the fourth data row sequence is sequentially sorted by one or more fourth data rows;

[0087] and all the fourth data rows of the fourth data row sequence are sequentially traversed; in the traversal process, the fourth data row being currently traversed is taken as the corresponding current data row; the sequence index of the current data row in the fourth data row sequence is extracted as the corresponding fourth processing index; the query classification field of the current data row is extracted as the corresponding current query classification; and the current query classification is identified; if the current query classification is based on SMILES query, the corresponding compound query processing is performed on the compound database based on the current item identification, the SMILES configuration field and the similarity configuration field of the current data row to obtain the corresponding fourth processing result, and the fourth processing result and the corresponding fourth processing index are taken into the preset four-category feedback CSV file template to obtain the corresponding fourth feedback CSV file by corresponding CSV file assembly; if the current query classification is based on chemical element query, the corresponding compound query processing is performed on the compound database based on the current item identification and the chemical element configuration field of the current data row to obtain the corresponding fourth processing result, and the fourth processing result and the corresponding fourth processing index are taken into the preset five-category feedback CSV file template to obtain the corresponding fourth feedback CSV file by corresponding CSV file assembly;

[0088] and at the end of the traversal, all the fourth feedback CSV files obtained are saved under the same file directory, and the current file directory is compressed into the corresponding fourth compression package file based on the preset file compression tool; the request feedback data of the current query operation record is set based on the fourth compression package file; and the request message state of the current query operation record is set as feedback.

[0089] The embodiment of the present application provides a database access system of a compound database, which comprises a database service gateway, a request message queue, a feedback message queue, a message processing module, a cache message queue, a database management module, a user permission configuration table, an operation approval configuration table and the compound database; wherein the database service gateway is used for recording and adding the request message queue according to the received first service request, and is also used for sending the request feedback according to the feedback message queue; the message processing module is used for adding the cache message queue according to the request message queue, and is also used for adding the feedback message queue according to the cache message queue; the user auditing unit of the database management module is used for updating the user permission state of each cache message record in the cache message queue according to the user permission configuration table, the operation approval unit is used for updating the data auditing state of each cache message record in the cache message queue according to the operation approval configuration table, the data import unit is used for adding or updating the data of the compound database according to the cache message queue, the data deletion unit is used for deleting the data of the compound database according to the cache message queue, the data export unit is used for exporting the data of the compound database according to the cache message queue, and the data query unit is used for querying the data of the compound database according to the cache message queue; the project index table of the compound database is used for storing a plurality of project index records, each project index record corresponds to a database project and a compound primary attribute table, the compound primary attribute table of the compound database is used for storing a plurality of compound primary attribute records, each compound primary attribute record corresponds to a general attribute set of a compound and a compound secondary attribute table, and the compound secondary attribute table of the compound database is used for storing a plurality of compound secondary attribute records, and the compound secondary attribute table of the compound database is used for updating a group of secondary attributes of a compound by adding the compound secondary attribute record. The embodiment of the present application divides the storage spaces of the general attributes and the individual attributes of the compound by using the compound primary / secondary attribute table, and divides the storage spaces of the individual attributes of each compound by using the compound secondary attribute table, so that the redundant field waste problem caused by the conventional full attribute record mode can be avoided, the storage resource waste rate is reduced, and the overall task processing performance of the database is improved. BRIEF DESCRIPTION OF DRAWINGS

[0090] Figure 1 A module structure diagram of the database access system of the compound database provided by the embodiment of the present application;

[0091] Figure 2 Column field data structure schematic diagrams of the import file field format requirement, the deletion file field format requirement, the export file field format requirement and the query file field format requirement provided by the embodiment of the present application;

[0092] Figure 3 The data structure schematic diagram of the request message record and the feedback message record provided by the embodiment of the present application is shown in the figure;

[0093] Figure 4 The data structure schematic diagram of the cache message record provided by the embodiment of the present application is shown in the figure;

[0094] Figure 5 The data structure schematic diagram of the user permission configuration record and the operation approval configuration record provided by the embodiment of the present application is shown in the figure;

[0095] Figure 6 The data structure schematic diagram of the project index record, the compound primary attribute record and the compound secondary attribute record provided by the embodiment of the present application is shown in the figure. DETAILED DESCRIPTION

[0096] In order to make the objects, technical solutions and advantages of the present application clearer, the present application will be further described in detail below with reference to the drawings. Obviously, the described embodiments are only a part of the embodiments of the present application, but not all the embodiments. Based on the embodiments in the present application, all the other embodiments obtained by those skilled in the art without creative work fall within the protection scope of the present application.

[0097] The embodiment of the present application provides a database access system of a compound database, which comprises a database service gateway 1, a request message queue 2, a feedback message queue 3, a message processing module 4, a cache message queue 5, a database management module 6, a user permission configuration table 7, an operation approval configuration table 8 and a compound database 9. Figure 1 The module structure diagram of the database access system of the compound database provided by the embodiment of the present application is shown in the figure, and the system mainly comprises the database service gateway 1, the request message queue 2, the feedback message queue 3, the message processing module 4, the cache message queue 5, the database management module 6, the user permission configuration table 7, the operation approval configuration table 8 and the compound database 9.

[0098] Among them, the connection relationship of each system component of the embodiment of the present application is that the database service gateway 1 is connected with the request message queue 2 and the feedback message queue 3 respectively; the message processing module 4 is connected with the request message queue 2, the feedback message queue 3 and the cache message queue 5 respectively; and the database management module 6 is connected with the cache message queue 5, the user permission configuration table 7, the operation approval configuration table 8 and the compound database 9 respectively.

[0099] (I) Database service gateway 1:

[0100] The database service gateway 1 of the embodiment of the present application is used for receiving a first service request and recording and adding the request message queue 2 according to the first service request. The database service gateway 1 is also used for sending a request feedback according to the feedback message queue 3.

[0101] Here, the first service request of the embodiment of the application comprises a first message identifier, a first message source address, a first message header and a first message body; the first message identifier is a unique message identifier of the current service request; the first message source address is a sender address of the current service request; the first message header comprises a first user identifier, a first user token, a first project identifier and a first instruction type; the first user identifier is a unique identity identifier of an initiating user initiating the current service request, the first user token is identity token information for the current user, and the first project identifier is a database project identifier corresponding to database data to be operated by the current service request; the first instruction type comprises import, deletion, export and query; and the first message body comprises a first instruction parameter; the first instruction parameter is a CSV file.

[0102] It should be noted that when the first instruction type of the first service request is import, deletion, export and query, the CSV file corresponding to the first instruction parameter is referred to as a corresponding import instruction file, a deletion instruction file, an export instruction file and a query instruction file. The first row of the import, deletion, export and query instruction files of the embodiment of the application is a column field row, and the second row to the last row is a data row; each data row corresponds to an import, deletion, export and query operation.

[0103] It should also be noted that the field format of the column field row of the import, deletion, export and query instruction files of the embodiment of the application meets the import file field format requirement, the deletion file field format requirement, the export file field format requirement and the query file field format requirement, which can be customized based on actual application requirements.

[0104] A customization scheme provided by the embodiment of the application is given below:

[0105] 1) Import file field format requirement:

[0106] For example, Figure 2 As shown in the column field data structure diagram of the import file field format requirement, the deletion file field format requirement, the export file field format requirement and the query file field format requirement provided by the embodiment of the application, the column field of the import file field format requirement comprises an import classification field, a group member field, a SMILES field, a chemical formula field, an element sequence field, a first type of fingerprint field, a second type of fingerprint field, a third type of fingerprint field, a first level attribute field, a second level attribute classification field, a second level attribute field and a version field; wherein the import classification field comprises project creation, first level attribute import and second level attribute import.

[0107] a. When the import classification field is project creation, the member field is a project member identification set consisting of one or more registered user identification, the SMILES field, the chemical formula field, the element sequence field, the one-class fingerprint field, the two-class fingerprint field, the three-class fingerprint field, the first-level attribute field, the second-level attribute classification field, the second-level attribute field, and the version field are all empty;

[0108] b. When the import classification field is first-level attribute import, the member field, the second-level attribute classification field, the second-level attribute field, and the version field are all empty; the SMILES field, the chemical formula field, the element sequence field, the one-class fingerprint field, the two-class fingerprint field, the three-class fingerprint field, and the first-level attribute field are respectively the corresponding SMILES sequence, the molecular chemical formula, the chemical element sequence, the one-class molecular fingerprint, the two-class molecular fingerprint, the three-class molecular fingerprint, and the first-level attribute set; the one-class, two-class, and three-class molecular fingerprints mentioned here refer to compound molecular fingerprints calculated based on the torsionbv (Topological-Torsion Bit Fingerprint) algorithm, compound molecular fingerprints calculated based on the mfp2 (Morgan Bit Fingerprint with Default Radius 2) algorithm, and compound molecular fingerprints calculated based on the ffp2 (Morgan FCFP Bit Fingerprint with Default Radius 2) algorithm; the first-level attribute set mentioned here is the general attribute set of the compound molecule;

[0109] c. When the import classification field is second-level attribute import, the member field, the chemical formula field, the element sequence field, the one-class fingerprint field, the two-class fingerprint field, the three-class fingerprint field, and the first-level attribute field are all empty; the SMILES field, the second-level attribute classification field, the second-level attribute field, and the version field are respectively the corresponding SMILES sequence, the second-level attribute classification name, the second-level attribute set, and the second-level attribute version;

[0110] 2) Deletion file field format requirements:

[0111] As shown in Figure 2 , the column field of the deletion file field format requirement consists of the deletion classification field, the deletion SMILES field, the deletion attribute field, and the deletion version field; among them, the deletion classification field includes project deletion, compound deletion, and attribute deletion;

[0112] a. When the deletion classification field is project deletion, the deletion SMILES field, the deletion attribute field, and the deletion version field are all empty;

[0113] b. When the deletion classification field is compound deletion, the SMILES field is a corresponding SMILES sequence; the deletion attribute field and the deletion version field are both empty;

[0114] c. When the deletion classification field is attribute deletion, the SMILES field is a corresponding SMILES sequence; the deletion attribute field is empty or a corresponding secondary attribute classification name; the deletion version field is empty or a secondary attribute version; the deletion attribute field and the deletion version field cannot be empty at the same time;

[0115] 3) Export file field format requirements:

[0116] As shown in Figure 2 , the column field of the export file field format requirement is composed of the export classification field and the export SMILES field; wherein the export classification field includes project export and compound export;

[0117] a. When the export classification field is project export, the export SMILES field is empty;

[0118] b. When the export classification field is compound export, the export SMILES field is a corresponding SMILES sequence;

[0119] 4) Query file field format requirements:

[0120] As shown in Figure 2 , the column field of the query file field format requirement is composed of the query classification field, the SMILES configuration field, the chemical element configuration field and the similarity configuration field; wherein the query classification field includes SMILES-based query and chemical element-based query;

[0121] a. When the query classification field is SMILES-based query, the SMILES configuration field is a corresponding SMILES sequence, the chemical element configuration field is empty, and the similarity configuration field is empty or a similarity;

[0122] b. When the query classification field is chemical element-based query, the SMILES configuration field and the similarity configuration field are empty, and the chemical element configuration field is a chemical element sequence.

[0123] In a specific implementation of the embodiment of the application, the database service gateway 1 is specifically configured to, when performing the record adding processing on the request message queue 2 according to the first service request, parse the corresponding first message identifier, first message source address, first message header and first message body from the first service request as the corresponding current message identifier, current message source address, current message header and current message body based on a preset request message parsing rule; add a request message record 21 in the request message queue 2 as the corresponding current added record; set the request message identifier, request message source address, request message header and request message body of the current added record as the corresponding current message identifier, current message source address, current message header and current message body; and set the request message state of the current added record as unprocessed. Here, the request message parsing rule is a preset message parsing rule, for example, a parsing rule of a HTTPS message based on TCP / IP.

[0124] In another specific implementation of the embodiment of the application, the database service gateway 1 is specifically configured to, when performing the request feedback sending processing according to the feedback message queue 3, record all the feedback message records 31 with the feedback message state as unprocessed in the feedback message queue 3 as unprocessed records, and take the earliest one of the unprocessed records as the corresponding current record; when the current record is not empty, perform corresponding feedback message encapsulation processing on the feedback message identifier, feedback message target address, feedback message header and feedback message body of the current feedback message record 31 according to a preset feedback message encapsulation rule to obtain the corresponding current feedback message; send the current feedback message to the feedback message target address of the current feedback message record 31; and reset the feedback message state of the current record as processed after the message is successfully sent. Here, the feedback message encapsulation rule corresponds to the request message parsing rule, for example, an encapsulation rule of a HTTPS message based on TCP / IP.

[0125] (II) The request message queue 2:

[0126] The request message queue 2 of the embodiment of the application is used to store a plurality of request message records 21.

[0127] Here, each request message record 21 of the embodiment of the application corresponds to one first service request. For example, Figure 3 As shown in the data structure diagram of the request message record and the feedback message record provided by the embodiment of the application, the request message record 21 of the embodiment of the application at least includes a request message identifier, a request message source address, a request message header, a request message body and a request message state; wherein the request message identifier, the request message source address, the request message header and the request message body are respectively the corresponding first message identifier, first message source address, first message header and first message body; and the request message state includes unprocessed and processed.

[0128] (3) Feedback message queue 3:

[0129] The feedback message queue 3 in the embodiment of the present invention is used to store multiple feedback message records 31 .

[0130] Here, each feedback message record 31 in the embodiment of the present invention corresponds to a request message record 21. Figure 3 As shown, the feedback message record 31 of the embodiment of the present invention includes at least a feedback message identifier, a feedback message target address, a feedback message header, a feedback message body and a feedback message status: wherein, the feedback message identifier matches the corresponding request message identifier; the feedback message target address matches the corresponding request message source address; the feedback message header includes a second user identifier, a second project identifier, a second instruction type and a first instruction execution status; the second user identifier, the second project identifier and the second instruction type respectively match the corresponding first user identifier, the first project identifier and the first instruction type; the second instruction type includes import, delete, export and query; the first instruction execution status includes success and exception; the feedback message body includes first feedback data; the first feedback data is a compressed package file with one or more CSV files; the feedback message status includes unprocessed and processed.

[0131] (IV) Message processing module 4:

[0132] The message processing module 4 of the embodiment of the present invention is used to perform a buffer message addition process on the buffer message queue 5 according to the request message queue 2. The message processing module 4 is also used to perform a feedback message addition process on the feedback message queue 3 according to the buffer message queue 5.

[0133] In another specific implementation of the embodiment of the present invention, the message processing module 4 is specifically configured to, when performing cache message addition processing on the cache message queue 5 according to the request message queue 2:

[0134] Step A1: All request message records 21 in the request message queue 2 with an unprocessed status are recorded as unprocessed records, and the earliest unprocessed record is used as the corresponding current request message record;

[0135] Step A2: When the current request message record is not empty, extract the request message identifier, request message source address, request message header, and request message body of the current request message record as the corresponding current message identifier, current message source address, current message header, and current message body;

[0136] Step A3: extract the first user identifier, the first user token, the first project identifier, and the first instruction type of the current message header and the first instruction parameter of the current message body as the corresponding current user identifier, current user token, current project identifier, current instruction type, and current instruction parameter;

[0137] Step A4, and add a cache message record 51 in the cache message queue 5 as a corresponding current cache message record;

[0138] Step A5, and set the request message identification, request source address, request user identification, request user token, request item identification, request instruction type and request instruction parameter of the current cache message record as the corresponding current message identification, current message source address, current user identification, current user token, current item identification, current instruction type and current instruction parameter;

[0139] Step A6, and set the user permission state and data audit state of the current cache message record as unreviewed; and set the request feedback data of the current cache message record as empty; and set the request message state of the current cache message record as unprocessed;

[0140] Step A7, and reset the request message state of the current request message record as processed when the setting of the current cache message record ends.

[0141] In another specific implementation manner of the embodiment of the application, the message processing module 4 is specifically used for performing feedback message addition processing on the feedback message queue 3 according to the cache message queue 5.

[0142] Step B1, record all the cache message records 51 with the request message state as feedback in the cache message queue 5 as feedback records, and take the earliest one of the feedback records as a corresponding current cache message record;

[0143] Step B2, and when the current cache message record is not empty, identify whether the user permission state and the data audit state of the current cache message record are both satisfied, if yes, set the corresponding current instruction execution state as success, and if not, set the corresponding current instruction execution state as abnormal;

[0144] Step B3, and take the request message identification and the request source address of the current cache message record as the corresponding feedback message identification and feedback message target address; take the corresponding request user identification, request item identification, request instruction type and current instruction execution state of the current cache message record as the corresponding second user identification, second item identification, second instruction type and first instruction execution state to form a corresponding feedback message head; take the request feedback data of the current cache message record as the corresponding first instruction feedback data to form a corresponding feedback message body; and set a corresponding feedback message state as unprocessed;

[0145] Step B4, and add a corresponding feedback message record 31 formed by the obtained feedback message identification, feedback message target address, feedback message head, feedback message body and feedback message state to the feedback message queue 3.

[0146] Step B5: After the feedback message record 31 is successfully added, the request message status of the current cached message record is set to processed.

[0147] (V) Cache message queue 5:

[0148] The cache message queue 5 of the embodiment of the present invention is used to store a plurality of cache message records 51 .

[0149] Here, each cache message record 51 in the embodiment of the present invention corresponds to a request message record 21. Figure 4 As shown in the data structure diagram of the cache message record provided for the embodiment of the present invention, the cache message record 51 of the embodiment of the present invention includes at least a request message identifier, a request source address, a request user identifier, a request user token, a request project identifier, a request instruction type, a request instruction parameter, a user authority status, a data review status, a request feedback data and a request message status: wherein the request message identifier, the request source address, the request user identifier, the request user token, the request project identifier, the request instruction type and the request instruction parameter respectively match the corresponding first message identifier, the first message source address, the first user identifier, the first user token, the first project identifier, the first instruction type and the first instruction parameter; the request instruction type includes import, delete, export and query; the user authority status and the data review status both include unreviewed, unsatisfied and satisfied; the request message status includes unprocessed, under review, under processing, feedback received and processed.

[0150] (VI) Database Management Module 6:

[0151] The database management module 6 of the embodiment of the present invention includes a user audit unit 61 , an operation approval unit 62 , a data import unit 63 , a data deletion unit 64 , a data export unit 65 and a data query unit 66 .

[0152] The user review unit 61 is configured to update the user authority status of each cached message record 51 in the cached message queue 5 according to the user authority configuration table 7. The operation approval unit 62 is configured to update the data review status of each cached message record 51 in the cached message queue 5 according to the operation approval configuration table 8. The data import unit 63 is configured to add or update data to the compound database 9 according to the cached message queue 5. The data deletion unit 64 is configured to delete data from the compound database 9 according to the cached message queue 5. The data export unit 65 is configured to export data from the compound database 9 according to the cached message queue 5. The data query unit 66 is configured to query data from the compound database 9 according to the cached message queue 5.

[0153] In another specific implementation manner of the embodiment of the present application, the user auditing unit 61 is specifically configured to, when performing user permission state updating processing on each cache message record 51 in the cache message queue 5 according to the user permission configuration table 7:

[0154] Step C1, record all cache message records 51 with the request message state of the cache message queue 5 as an unprocessed record, and take the unprocessed record with the earliest time as the corresponding current unprocessed record; and take the request user identifier, the request user token and the request item identifier of the current unprocessed record as the corresponding current user identifier, the current user token and the current item identifier; and take the current time as the corresponding current token time;

[0155] Step C2, and take the user permission configuration record 71 in the user permission configuration table 7 with the registered user identifier matched with the current user identifier, the registered user token matched with the current user token and the token validity period satisfying the current token time as the corresponding current user permission configuration record;

[0156] Step C3, and identify whether the current user permission configuration record is empty;

[0157] Step C4, if the current user permission configuration record is empty, set the user permission state and the data auditing state of the current unprocessed record as not satisfied, and set the request message state of the current unprocessed record as having been fed back;

[0158] Step C5, if the current user permission configuration record is not empty, confirm whether there is a registered item identifier matched with the current item identifier in the registered item identifier set of the current user permission configuration record; if it is confirmed that there is, set the user permission state of the current unprocessed record as satisfied, and set the request message state of the current unprocessed record as being audited; if it is confirmed that there is not, set the user permission state and the data auditing state of the current unprocessed record as not satisfied, and set the request message state of the current unprocessed record as having been fed back.

[0159] In another specific implementation manner of the embodiment of the present application, the operation approval unit 62 is specifically configured to, when performing data auditing state updating processing on each cache message record 51 in the cache message queue 5 according to the operation approval configuration table 8:

[0160] Step D1, record all the cached message records 51 in the request message state of the audit in the cache message queue 5 as the audit in records, and take the audit in record with the earliest time as the corresponding current audit in record; and take the request user identifier, request project identifier, request instruction type and request instruction parameter of the current audit in record as the corresponding current user identifier, current project identifier, current instruction type and current instruction parameter; and take the registered user type of the user permission configuration record 71 in the user permission configuration table 7 matched with the current user identifier as the corresponding current user type; and take the operation approval configuration record 81 in the operation approval configuration table 8 matched with the current project identifier as the corresponding current operation approval configuration record;

[0161] Step D2, identify whether the current operation approval configuration record is empty;

[0162] Step D3, if the current operation approval configuration record is empty, set the data audit state of the current audit in record as satisfied, and set the request message state of the current audit in record as processing;

[0163] Step D4, if the current operation approval configuration record is not empty, take the approval configuration of the current operation approval configuration record matched with the current user type as the corresponding current approval configuration, and identify whether the current approval configuration is empty;

[0164] Step D4-A, if the current approval configuration is empty, set the data audit state of the current audit in record as satisfied, and set the request message state of the current audit in record as processing;

[0165] Step D4-B, if the current approval configuration is not empty, confirm whether there is a configuration bit corresponding to the current instruction type in the import, delete and export configuration bits of the current approval configuration; if there is or not, set the data audit state of the current audit in record as satisfied, and set the request message state of the current audit in record as processing; if it is confirmed that there is, take the configuration bit corresponding to the current instruction type in the import, delete and export configuration bits of the current approval configuration as the corresponding current configuration bit, and identify the current configuration bit;

[0166] Step D4-B-A, if the current configuration bit is 0, set the data audit state of the current audit in record as satisfied, and set the request message state of the current audit in record as processing;

[0167] Step D4-B-B, if the current configuration bit is 1, the import, delete and export approval interface in the approval interface set of the current operation approval configuration record is taken as the corresponding current approval interface corresponding to the current instruction type; and a unique timestamp is generated based on the current time as the corresponding first application identifier, and a corresponding first approval application is composed of the first application identifier and the current user identifier, the current project identifier, the current instruction type, the current instruction parameter, and is sent to the current approval interface; and after successful sending, the request message identifier recorded in the current audit is taken as the corresponding first message identifier, and a corresponding first approval record is composed of the first application identifier and the first message identifier and saved; and after the approval record is saved successfully, the request message state recorded in the current audit is set to processing.

[0168] The operation approval unit 62 is also used to receive a corresponding first approval result from any approval interface, take the currently received first approval result as the corresponding current approval result; take the first application identifier in all saved first approval records matching the second application identifier of the current approval result as the corresponding current approval record; take the cached message record 51 in the cached message queue 5 matching the first message identifier of the current approval record as the corresponding current message record; take the first approval feedback of the current approval result as the corresponding current approval feedback; identify the current approval feedback; if the current approval feedback is approval, set the data audit state of the current message record to meet; if the current approval feedback is not approved, set the data audit state of the current message record to not meet, and set the request message state of the current message record to feedback; wherein the first approval result includes the second application identifier and the first approval feedback; the first approval feedback includes approval and disapproval.

[0169] In another specific implementation manner of the embodiment of the application, the data import unit 63 is specifically used for performing data addition or update processing on the compound database 9 according to the cached message queue 5:

[0170] Step E1, all cached message records 51 in the cached message queue 5 with the user permission state and the data audit state both meeting, the request message state being processing and the request instruction type being import are recorded as import operation records, and the import operation record with the earliest time is taken as the corresponding current import operation record;

[0171] Step E2, take the request project identifier of the current import operation record as the corresponding current project identifier; take the CSV file of the request instruction parameter of the current import operation record as the corresponding current import instruction file; and extract the corresponding first data row sequence from the data row formatted according to the import file field format requirement.

[0172] wherein the first data row sequence is ordered by one or more first data row sequences;

[0173] Here, as described above, the field format of the column field row of the CSV file of the request instruction parameter of the current import operation record should meet the corresponding import file field format requirements; the customization scheme of the import file field format requirements given by the embodiment of the application is as shown in the following table: Figure 2 Figure 2 The next step E3 is actually to perform the corresponding three types of import operations according to the three types of subdivided import instructions (project creation, primary attribute import, and secondary attribute import) and the corresponding subdivided instruction parameters, i.e., other fields corresponding to the subdivided import instructions.

[0174] Step E3, and sequentially traverses all the first data rows of the first data row sequence; in the traversal process, the currently traversed first data row is taken as the corresponding current data row; the sequence index of the current data row in the first data row sequence is extracted as the corresponding first processing index; the import classification field of the current data row is extracted as the corresponding current import classification; the current import classification is identified; if the current import classification is project creation, the corresponding database project creation or update processing is performed in the compound database 9 based on the current project identifier and the member field of the current data row to obtain the corresponding first processing result; if the current import classification is primary attribute import, the corresponding compound primary attribute addition or update processing is performed in the compound database 9 based on the current project identifier and the SMILES field, the chemical formula field, the element sequence field, the first type of fingerprint field, the second type of fingerprint field, the third type of fingerprint field, and the primary attribute field of the current data row to obtain the corresponding first processing result; if the current import classification is secondary attribute import, the corresponding compound secondary attribute addition processing is performed in the compound database 9 based on the current project identifier and the SMILES field, the secondary attribute classification field, the secondary attribute field, and the version field of the current data row to obtain the corresponding first processing result; the obtained first processing index and first processing result form a corresponding first processing feedback; at the end of the traversal, all the obtained first processing feedbacks form a corresponding first processing feedback sequence;

[0175] The first processing result includes success and failure.

[0176] ​Step E4, and the first processing feedback sequence is brought into a preset type of feedback CSV file template to assemble a corresponding CSV file to obtain a corresponding first feedback CSV file; and a file compression package tool is used for file compression of the first feedback CSV file to obtain a corresponding first compression package file; and the request feedback data of the current import operation record is set based on the first compression package file; and the request message state of the current import operation record is set as having been fed back.

[0177] Here, the type of feedback CSV file template is a pre-set CSV file assembly template, which can be customized based on actual application requirements, and the embodiments of the application do not specifically limit the type of feedback CSV file template.

[0178] In another specific implementation manner of the embodiments of the application, the data import unit 63 is specifically configured to, when a corresponding database project creation or update process is performed in the compound database 9 based on the current project identifier and the group member field of the current data row to obtain a corresponding first processing result:

[0179] Step F1, the group member field of the current data row is extracted as a corresponding current project group member identifier set; and the project index record 911 in the project index table 91 that matches the project index identifier and the current project identifier and has an index record state of not deleted is taken as a corresponding current project index record; and whether the current project index record is empty is identified;

[0180] Step F2, if the current project index record is not empty, the project group member identifier set of the current project index record is reset as the corresponding current project group member identifier set when the current project group member identifier set is empty; and after the reset is successful, the corresponding first processing result is set as successful.

[0181] Step F3, if the current project index record is empty, a project index record 911 is newly added in the project index table 91 as a corresponding newly added project index record 911; and a unique record identifier is assigned to the newly added project index record 911 as a corresponding current record identifier; and the index record identifier, the project index identifier and the project group member identifier set of the newly added project index record 911 are set as the corresponding current record identifier, the current project identifier and the current project group member identifier set; and the index record state of the newly added project index record 911 is set as not deleted; and an empty compound primary attribute table 92 is created as a corresponding current primary attribute table; and a unique data table identifier is assigned to the current primary attribute table as a corresponding current primary attribute table identifier; and the primary attribute table identifier of the newly added project index record 911 is set as the corresponding current primary attribute table identifier; and after all data items of the newly added project index record 911 are successfully set, the corresponding first processing result is set as successful.

[0182] In another specific implementation manner of the embodiment of the present application, the data import unit 63 is specifically used for, when the corresponding compound primary attribute addition or update processing based on the current project identification and the SMILES field, the chemical formula field, the element sequence field, the one-type fingerprint field, the two-type fingerprint field, the three-type fingerprint field and the primary attribute field of the current data row in the compound database 9 obtains the corresponding first processing result:

[0183] Step G1, the project index record 911 in the project index table 91 is matched with the current project identification and the index record state is not deleted, as the corresponding current project index record; and the primary attribute table identification of the current project index record is the corresponding compound primary attribute table 92; and the SMILES field, the chemical formula field, the element sequence field, the one-type fingerprint field, the two-type fingerprint field, the three-type fingerprint field and the primary attribute field of the current data row are extracted as the corresponding current SMILES sequence, the current molecular chemical formula, the current chemical element sequence, the current one-type molecular fingerprint, the current two-type molecular fingerprint, the current three-type molecular fingerprint and the current primary attribute set;

[0184] Step G2, the compound primary attribute record 921 in the current primary attribute table is matched with the current SMILES sequence and the primary attribute record state is not deleted, as the corresponding current primary attribute record; and whether the current primary attribute record is empty is identified;

[0185] Step G3, if the current primary attribute record is empty, a compound primary attribute record 921 is newly added in the current primary attribute table as the corresponding newly added primary attribute record; and a unique record identification is assigned to the newly added primary attribute record as the corresponding current record identification; and the primary attribute record identification, the SMILES sequence, the molecular chemical formula, the chemical element sequence, the one-type molecular fingerprint, the two-type molecular fingerprint, the three-type molecular fingerprint and the primary attribute set of the newly added primary attribute record are set as the current record identification, the current SMILES sequence, the current molecular chemical formula, the current chemical element sequence, the current one-type molecular fingerprint, the current two-type molecular fingerprint, the current three-type molecular fingerprint and the current primary attribute set; and the primary attribute record state of the newly added primary attribute record is set as not deleted; and an empty compound secondary attribute table 93 is created as the corresponding current secondary attribute table; and a unique data table identification is assigned to the current secondary attribute table as the corresponding current secondary attribute table identification; and the secondary attribute table identification of the newly added primary attribute record is set as the corresponding current secondary attribute table identification; and after all data items of the newly added primary attribute record are successfully set, the corresponding first processing result is set as successful;

[0186] Step G4, if the current primary attribute record is not empty, reset the corresponding SMILES sequence, molecular formula, chemical element sequence, one-class molecular fingerprint, two-class molecular fingerprint, three-class molecular fingerprint or primary attribute set in the current primary attribute record based on the non-empty current SMILES sequence, current molecular formula, current chemical element sequence, current one-class molecular fingerprint, current two-class molecular fingerprint, current three-class molecular fingerprint or current primary attribute set; and after all data items in the current primary attribute record are successfully reset, set the corresponding first processing result as success.

[0187] In another specific implementation manner of the embodiment of the present application, the data import unit 63 is specifically configured to, when the corresponding two-class compound attribute addition is performed in the compound database 9 based on the current project identification and the SMILES field, two-class attribute classification field, two-class attribute field and version field of the current data row, obtain the corresponding first processing result:

[0188] Step H1, extract the SMILES field, two-class attribute classification field, two-class attribute field and version field of the current data row as the corresponding current SMILES sequence, current two-class attribute classification name, current two-class attribute set and current two-class attribute version; and take the current time as the corresponding current addition time;

[0189] Step H2, and take the project index record 911 in the project index table 91 whose project index identification matches the current project identification and whose index record state is not deleted as the corresponding current project index record; and take the primary attribute table 92 of the current project index record as the corresponding current primary attribute table; and take the compound primary attribute record 921 in the current primary attribute table whose SMILES sequence matches the current SMILES sequence and whose primary attribute record state is not deleted as the corresponding current primary attribute record; and take the two-class attribute table 93 of the current primary attribute record as the corresponding current two-class attribute table;

[0190] Step H3, and add a compound two-class attribute record 931 in the current two-class attribute table as the corresponding new two-class attribute record; and assign a unique record identification to the new two-class attribute record as the corresponding current record identification; and set the two-class attribute record identification, two-class attribute classification name, two-class attribute set, two-class attribute version and two-class attribute addition time of the new two-class attribute record as the corresponding current record identification, current two-class attribute classification name, current two-class attribute set, current two-class attribute version and current addition time; and set the two-class attribute record state of the new two-class attribute record as not deleted; and after all data items in the new two-class attribute record are successfully set, set the corresponding first processing result as success.

[0191] In another specific implementation of the embodiment of the present invention, the data deleting unit 64 is specifically configured to:

[0192] Step J1: All cached message records 51 in the cached message queue 5 whose user authority status and data audit status are both satisfied, whose request message status is processing, and whose request instruction type is delete are recorded as delete operation records, and the earliest delete operation record is used as the corresponding current delete operation record;

[0193] Step J2: The request item identifier of the current deletion operation record is used as the corresponding current item identifier; the CSV file of the request instruction parameters of the current deletion operation record is used as the corresponding current deletion instruction file; and the data rows of the current deletion instruction file are formatted based on the deletion file field format requirements to obtain a corresponding second data row sequence;

[0194] Wherein, the second data row sequence is formed by sequentially sorting one or more second data rows;

[0195] As mentioned above, the field format of the column field row of the CSV file of the request instruction parameter of the current deletion operation record should meet the corresponding deletion file field format requirements; a customized solution for the deletion file field format requirements provided by the embodiment of the present invention is as follows Figure 2 As shown, the next step J3 is actually to press Figure 2 The three types of subdivision deletion instructions (project deletion, compound deletion, attribute deletion) and the corresponding subdivision instruction parameters, that is, the other fields corresponding to each subdivision deletion instruction, are used to perform the corresponding three types of deletion operations;

[0196] Step J3, and sequentially traverse all second data rows of the second data row sequence; and in the traversal process, take the second data row currently traversed as the corresponding current data row; and extract the sequence index of the current data row in the second data row sequence as the corresponding second processing index; and extract the deletion classification field of the current data row as the corresponding current deletion classification; and identify the current deletion classification; if the current deletion classification is project deletion, perform corresponding database project deletion processing in the compound database 9 based on the current project identifier to obtain a corresponding second processing result; if the current deletion classification is compound deletion, perform corresponding compound deletion processing in the compound database 9 based on the current project identifier and the deletion SMILES field of the current data row to obtain a corresponding second processing result; if the current deletion classification is attribute deletion, perform corresponding compound attribute deletion processing in the compound database 9 based on the current project identifier and the deletion SMILES field, the deletion attribute field and the deletion version field of the current data row to obtain a corresponding second processing result; and a corresponding second processing feedback is composed of the obtained second processing index and the second processing result; and at the end of the traversal, all second processing feedbacks obtained are composed of a corresponding second processing feedback sequence;

[0197] wherein the second processing result includes success and failure;

[0198] Step J4, and the second processing feedback sequence is brought into a feedback CSV file template to perform corresponding CSV file assembly to obtain a corresponding second feedback CSV file; and the second feedback CSV file is compressed based on a preset file compression package tool to obtain a corresponding second compression package file; and the request feedback data of the current deletion operation record is set based on the second compression package file; and the request message state of the current deletion operation record is set to feedback.

[0199] In another specific implementation manner of the embodiment of the application, the data deletion unit 64 is specifically configured to, when performing corresponding database project deletion processing in the compound database 9 based on the current project identifier to obtain a corresponding second processing result:

[0200] Step K1, take the project index record 911 in the project index table 91, which has a project index identifier matched with the current project identifier and an index record state of non-deleted, as a corresponding current project index record; and take the first attribute table identifier of the current project index record as a corresponding compound first attribute table 92 as a corresponding first attribute table; and take the second attribute table identifier of each compound first attribute record 921 of the current first attribute table as a corresponding compound second attribute table 93 as a corresponding second attribute table;

[0201] Step K2, set the index record state of the current project index record to deleted; set the first attribute record state of all compound first attribute records 921 in the first attribute table to deleted; set the second attribute record state of all compound second attribute records 931 in the second attribute table to deleted; and set the corresponding second processing result to success after successfully setting all record states corresponding to the current project index record to deleted.

[0202] In another specific implementation of the embodiment of the application, the data deletion unit 64 is specifically configured to, when the corresponding compound attribute deletion processing based on the current project identifier and the delete SMILES field, the delete attribute field and the delete version field of the current data row in the compound database 9 obtains the corresponding second processing result:

[0203] Step L1, extract the delete SMILES field of the current data row as the corresponding current SMILES sequence; and extract the project index record 911 in the project index table 91 whose project index identifier matches the current project identifier and whose index record state is not deleted as the corresponding current project index record; extract the compound first attribute table 92 corresponding to the first attribute table identifier of the current project index record as the corresponding current first attribute table; extract the compound first attribute record 921 in the current first attribute table whose SMILES sequence matches the current SMILES sequence as the corresponding current first attribute record; and extract the compound second attribute table 93 corresponding to the second attribute table identifier of the current first attribute record as the corresponding current second attribute table;

[0204] Step L2, set the first attribute record state of the current first attribute record to deleted; set the second attribute record state of all compound second attribute records 931 in the current second attribute table to deleted; and set the corresponding second processing result to success after successfully setting all record states corresponding to the current first attribute record to deleted.

[0205] In another specific implementation of the embodiment of the application, the data deletion unit 64 is specifically configured to, when the corresponding compound attribute deletion processing based on the current project identifier and the delete SMILES field, the delete attribute field and the delete version field of the current data row in the compound database 9 obtains the corresponding second processing result:

[0206] Step M1, extract the delete SMILES field, the delete attribute field and the delete version field of the current data row as the corresponding current SMILES sequence, current delete attribute and current delete version; and the project index record 911 in the project index table 91 that matches the current project identifier and whose index record state is not deleted as the corresponding current project index record; and the compound primary attribute table 92 corresponding to the primary attribute table identifier of the current project index record as the corresponding current primary attribute table; and the compound primary attribute record 921 in the current primary attribute table that matches the SMILES sequence as the corresponding current primary attribute record; and the compound secondary attribute table 93 corresponding to the secondary attribute table identifier of the current primary attribute record as the corresponding current secondary attribute table;

[0207] Step M2, and identify the current delete attribute and the current delete version; if the current delete attribute is not empty but the current delete version is empty, set the secondary attribute record state of the compound secondary attribute record 931 in the current secondary attribute table that matches the current delete attribute to be deleted; if the current delete attribute is empty but the current delete version is not empty, set the secondary attribute record state of the compound secondary attribute record 931 in the current secondary attribute table that matches the current delete version to be deleted; if neither the current delete attribute nor the current delete version is empty, set the secondary attribute record state of the compound secondary attribute record 931 in the current secondary attribute table that matches the current delete attribute and the secondary attribute version to be deleted;

[0208] Step M3, and after successfully setting all record states corresponding to the current delete attribute and the current delete version in the current secondary attribute table to be deleted, set the corresponding second processing result to be successful.

[0209] In another specific implementation manner of the embodiment of the application, the data export unit 65 is specifically configured to, when performing data export processing on the compound database 9 according to the cache message queue 5:

[0210] Step N1, record all the cache message records 51 in the cache message queue 5 that satisfy the user permission state and the data audit state, whose request message state is processing and whose request instruction type is export, as export operation records, and take the earliest one in time as the corresponding current export operation record;

[0211] Step N2, and use the request project identifier of the current export operation record as the corresponding current project identifier; and use the CSV file of the request instruction parameters of the current export operation record as the corresponding current export instruction file; and extract the data rows formatted from the current export instruction file based on the export file field format requirements to obtain a corresponding third data row sequence;

[0212] The third data row sequence is formed by sequentially sorting one or more third data rows;

[0213] As mentioned above, the field format of the column field row of the CSV file of the request instruction parameter of the current export operation record should meet the corresponding export file field format requirements; the embodiment of the present invention provides a customized solution for the export file field format requirements as shown in the following example. Figure 2 As shown, the next step N3 is actually to press Figure 2 The two types of subdivision export instructions (project export, compound export) and the corresponding subdivision instruction parameters, i.e., other fields corresponding to each subdivision export instruction, are used to perform the corresponding two types of export operations;

[0214] Step N3, and sequentially traverse all third data rows of the third data row sequence; and in the traversal process, take the third data row currently traversed as the corresponding current data row; and extract the sequence index of the current data row in the third data row sequence as the corresponding third processing index; and extract the export classification field of the current data row as the corresponding current export classification; and identify the current export classification; if the current export classification is project export, then based on the current project identifier, perform corresponding database project export processing in the compound database 9 to obtain a corresponding third processing result, and bring the third processing result and the corresponding third processing index into the preset second-category feedback CSV file template for corresponding CSV file assembly to obtain a corresponding third feedback CSV file; if the current export classification is compound export, then based on the current project identifier and the export SMILES field of the current data row, perform corresponding compound export processing in the compound database 9 to obtain a corresponding third processing result, and bring the third processing result and the corresponding third processing index into the preset third-category feedback CSV file template for corresponding CSV file assembly to obtain a corresponding third feedback CSV file;

[0215] Here, the second and third type feedback CSV file templates are each a pre-set CSV file assembly template, which can be customized based on actual application requirements. The embodiment of the present invention does not impose specific restrictions on the second and third type feedback CSV file templates;

[0216] Step N4, and at the end of the traversal, save all the obtained third feedback CSV files under the same file directory, and perform file compression on the current file directory based on a preset file compression package tool to obtain a corresponding third compressed package file; set the request feedback data of the current export operation record based on the third compressed package file; and set the request message state of the current export operation record to feedback.

[0217] In another specific implementation manner of the embodiment of the present application, the data export unit 65 is specifically configured to, when performing corresponding database project export processing in the compound database 9 based on the current project identifier to obtain a corresponding third processing result:

[0218] Step P1, match the project index identifier in the project index table 91 with the project index record 911 in the project index table 91, and set the index record state to not deleted; and set the first attribute table identifier of the current project index record to the corresponding compound first attribute table 92 as the corresponding current first attribute table;

[0219] Step P2, and set each compound first attribute record 921 in the current first attribute table to not deleted as the corresponding current first attribute record; and set the second attribute table identifier of the current first attribute record to the corresponding compound second attribute table 93 as the corresponding current second attribute table; and extract the SMILES sequence, molecular chemical formula, chemical element sequence, one-type molecular fingerprint, two-type molecular fingerprint, three-type molecular fingerprint, and first attribute set of the current first attribute record as the corresponding first SMILES sequence, first molecular chemical formula, first chemical element sequence, first molecular fingerprint A, first molecular fingerprint B, first molecular fingerprint C, and first attribute set; and count all second attribute classification names in the current second attribute table to obtain a corresponding second attribute classification name set; and set each second attribute classification name in the second attribute classification name set as the corresponding current classification name, and extract the second attribute set of the compound second attribute record 931 in the current second attribute table, which has the second attribute classification name, the second attribute record state of not deleted, and the second attribute version of the latest version, as the corresponding current second attribute set, and when the current second attribute set is not empty, compose a corresponding second attribute set from the current classification name and the current second attribute set; and compose a corresponding first compound export data set from the first SMILES sequence, first molecular chemical formula, first chemical element sequence, first molecular fingerprint A, first molecular fingerprint B, first molecular fingerprint C, first attribute set, and all second attribute sets of the current first attribute record;

[0220] Step P3, and compose a corresponding third processing result from all the obtained first compound export data sets.

[0221] In another specific implementation manner of the embodiment of the present application, the data export unit 65 is specifically configured to, when performing corresponding compound export processing in the compound database 9 based on the current project identifier and the export SMILES field of the current data row to obtain a corresponding third processing result:

[0222] Step Q1, the export SMILES field of the current data row is extracted as a corresponding current SMILES sequence; and the project index record 911 in the project index table 91 that matches the current project identifier and has an index record state of not being deleted is taken as a corresponding current project index record; and the compound primary attribute table 92 corresponding to the primary attribute table identifier of the current project index record is taken as a corresponding current primary attribute table; and the compound primary attribute record 921 in the current primary attribute table that matches the current SMILES sequence and has a primary attribute record state of not being deleted is taken as a corresponding current primary attribute record;

[0223] Step Q2, the SMILES sequence, the molecular chemical formula, the chemical element sequence, the molecular fingerprint A, the molecular fingerprint B, the molecular fingerprint C and the third attribute set of the current primary attribute record are extracted as a second SMILES sequence, a second molecular chemical formula, a second chemical element sequence, a second molecular fingerprint A, a second molecular fingerprint B, a second molecular fingerprint C and a third attribute set;

[0224] Step Q3, the compound secondary attribute table 93 corresponding to the secondary attribute table identifier of the current primary attribute record is taken as a corresponding current secondary attribute table; the secondary attribute classification names in the current secondary attribute table are counted to obtain a corresponding secondary attribute classification name set; each secondary attribute classification name in the secondary attribute classification name set is taken as a corresponding current classification name, and the secondary attribute set of the compound secondary attribute record 931 in the current secondary attribute table that matches the current classification name, has a secondary attribute record state of not being deleted and has a latest version of secondary attribute version is extracted as a corresponding current secondary attribute set, and when the current secondary attribute set is not empty, a fourth attribute set is formed by the current classification name and the current secondary attribute set;

[0225] Step Q4, the second SMILES sequence, the second molecular chemical formula, the second chemical element sequence, the second molecular fingerprint A, the second molecular fingerprint B, the second molecular fingerprint C, the third attribute set and all fourth attribute sets corresponding to the current primary attribute record are taken to form a corresponding third processing result.

[0226] In another specific implementation manner of the embodiment of the present application, the data query unit 66 is specifically configured to, when performing data query processing on the compound database 9 according to the cache message queue 5:

[0227] Step R1, record all the cached message records 51 in the cache message queue 5 as query operation records, which meet the following conditions: the user permission state and the data audit state are both satisfied, the request message state is in processing, and the request instruction type is query; and take the query operation record with the earliest time as the corresponding current query operation record;

[0228] Step R2, take the request item identification of the current query operation record as the corresponding current item identification; take the CSV file of the request instruction parameter of the current query operation record as the corresponding current query instruction file; and extract the data rows of the current query instruction file based on the query file field format requirement to obtain the corresponding fourth data row sequence;

[0229] The fourth data row sequence is sequentially sorted by one or more fourth data rows;

[0230] Here, as described above, the field format of the column field row of the CSV file of the request instruction parameter of the current query operation record should meet the corresponding query file field format requirement; a customization scheme of a query file field format requirement given by the embodiment of the application is as shown in Figure 2 The next step R3 is actually to perform the corresponding two types of query operations according to the two types of subdivided query instructions (based on SMILES query, based on chemical element query) and the corresponding subdivided instruction parameters, i.e., other fields corresponding to each subdivided query instruction, given in Figure 2

[0231] Step R3, sequentially traverse all the fourth data rows of the fourth data row sequence; in the traversal process, take the currently traversed fourth data row as the corresponding current data row; extract the sequence index of the current data row in the fourth data row sequence as the corresponding fourth processing index; extract the query classification field of the current data row as the corresponding current query classification; identify the current query classification; if the current query classification is based on SMILES query, perform corresponding compound query processing on the compound database 9 based on the current item identification and the SMILES configuration field and the similarity configuration field of the current data row to obtain the corresponding fourth processing result, and bring the fourth processing result and the corresponding fourth processing index into the preset four types of feedback CSV file template to obtain the corresponding fourth feedback CSV file; if the current query classification is based on chemical element query, perform corresponding compound query processing on the compound database 9 based on the current item identification and the chemical element configuration field of the current data row to obtain the corresponding fourth processing result, and bring the fourth processing result and the corresponding fourth processing index into the preset five types of feedback CSV file template to obtain the corresponding fourth feedback CSV file;

[0232] ​Here, the four and five category feedback CSV file templates are each a pre-set CSV file assembly template, which can be customized based on actual application requirements, and the embodiments of the present application do not specifically limit the four and five category feedback CSV file templates;

[0233] Step R4, and at the end of the iteration, save all the obtained fourth feedback CSV files under the same file directory, and perform file compression on the current file directory based on a pre-set file compression package tool to obtain a corresponding fourth compression package file; and set the request feedback data of the current query operation record based on the fourth compression package file; and set the request message state of the current query operation record as having been fed back.

[0234] In another specific implementation manner of the embodiment of the present application, the data query unit 66 is specifically configured to, when performing corresponding compound query processing on the compound database 9 based on the current project identifier, the SMILES configuration field and the similarity configuration field of the current data row to obtain a corresponding fourth processing result:

[0235] Step S1, extract the SMILES configuration field and the similarity configuration field of the current data row as a corresponding current SMILES sequence and a current similarity; and extract the project index record 911 in the project index table 91 that matches the current project identifier and has an index record state of not being deleted as a corresponding current project index record; and extract the compound primary attribute table 92 corresponding to the primary attribute table identifier of the current project index record as a corresponding current primary attribute table;

[0236] Step S2, and identify whether the current similarity is empty; if the current similarity is not empty, set the corresponding current similarity threshold value as the current similarity; if the current similarity is empty, set the corresponding current similarity threshold value as a pre-set first similarity threshold value;

[0237] Here, the first similarity threshold value is a pre-set default threshold value;

[0238] Step S3, and extract the compound primary attribute record 921 in the current primary attribute table that has a primary attribute record state of not being deleted and a similarity between the SMILES sequence and the current SMILES sequence exceeding the corresponding current similarity threshold value, and sort the compound primary attribute record 921 in descending order of similarity to form a corresponding first record sequence;

[0239] Step S4, and when the first record sequence is not empty, a round of traversal is performed on all compound primary attribute records 921 in the first record sequence; and during the round of traversal, the compound primary attribute record 921 currently being traversed is taken as a corresponding current primary attribute record; the SMILES sequence, molecular chemical formula, chemical element sequence, one-type molecular fingerprint, two-type molecular fingerprint, three-type molecular fingerprint, and primary attribute set of the current primary attribute record are extracted as a corresponding third SMILES sequence, third molecular chemical formula, third chemical element sequence, third molecular fingerprint A, third molecular fingerprint B, third molecular fingerprint C, and fifth attribute set; the two-type attribute table identifier of the current primary attribute record is taken as a corresponding current two-type attribute table; the two-type attribute classification names in the current two-type attribute table are counted to obtain a corresponding two-type attribute classification name set; each two-type attribute classification name in the two-type attribute classification name set is taken as a corresponding current classification name, and the two-type attribute set of the compound two-type attribute record 931 in the current two-type attribute table, which has the two-type attribute classification name and the current classification name, and whose two-type attribute record state is not deleted and whose two-type attribute version is the latest version, is extracted as a corresponding current two-type attribute set, and when the current two-type attribute set is not empty, a corresponding sixth attribute set is formed by the current classification name and the current two-type attribute set; a corresponding first query record is formed by the third SMILES sequence, third molecular chemical formula, third chemical element sequence, third molecular fingerprint A, third molecular fingerprint B, third molecular fingerprint C, fifth attribute set, and all sixth attribute sets corresponding to the current primary attribute record; and when the round of traversal ends, a corresponding fourth processing result is formed by all the obtained first query records.

[0240] In another specific implementation manner of the embodiment of the present application, the data query unit 66 is specifically used for, when performing corresponding compound query processing on the compound database 9 based on the current project identifier and the chemical element configuration field of the current data row to obtain a corresponding fourth processing result:

[0241] Step T1, the chemical element configuration field of the current data row is extracted as a corresponding current chemical element sequence; the project index record 911 in the project index table 91, which has a project index identifier matching the current project identifier and an index record state of not being deleted, is taken as a corresponding current project index record; and the primary attribute table 92 corresponding to the primary attribute table identifier of the current project index record is taken as a corresponding current primary attribute table;

[0242] Step T2, and the compound primary attribute record 921 in the current primary attribute table, which has a primary attribute record state of not being deleted and a chemical element sequence containing the current chemical element sequence, is extracted and sorted in the order of record identifiers to form a corresponding second record sequence;

[0243] Step T3, and when the second record sequence is not empty, a round of traversal is performed on all compound primary attribute records 921 of the second record sequence; and during the current round of traversal, the compound primary attribute record 921 being currently traversed is taken as the corresponding current primary attribute record; and the SMILES sequence, molecular formula, chemical element sequence, one-type molecular fingerprint, two-type molecular fingerprint, three-type molecular fingerprint, and primary attribute set of the current primary attribute record are extracted as the corresponding fourth SMILES sequence, fourth molecular formula, fourth chemical element sequence, fourth molecular fingerprint A, fourth molecular fingerprint B, fourth molecular fingerprint C, and seventh attribute set; the two-level attribute table identifier of the current primary attribute record is taken as the corresponding current two-level attribute table; the two-level attribute classification names in the current two-level attribute table are counted to obtain the corresponding two-level attribute classification name set; each two-level attribute classification name in the two-level attribute classification name set is taken as the corresponding current classification name, and the two-level attribute set of the compound two-level attribute record 931 in the current two-level attribute table, which has the two-level attribute classification name and the current classification name, and has a non-deleted two-level attribute record state and a latest two-level attribute version, is extracted as the corresponding current two-level attribute set, and when the current two-level attribute set is not empty, an eighth attribute set is formed by the current classification name and the current two-level attribute set; a fourth query record is formed by the fourth SMILES sequence, fourth molecular formula, fourth chemical element sequence, fourth molecular fingerprint A, fourth molecular fingerprint B, fourth molecular fingerprint C, seventh attribute set, and all eighth attribute sets corresponding to the current primary attribute record; and when the current round of traversal ends, all fourth query records obtained are taken as the corresponding fourth processing result.

[0244] From the above description of the processing units of the database management module 6, it can be seen that the data import unit 63, data deletion unit 64, data export unit 65, and data query unit 66 of the embodiment of the present application are actually four batch processors for performing batch read-write operations on the compound database 9. The working principle of the four batch processors (data import unit 63, data deletion unit 64, data export unit 65, and data query unit 66) is as follows: according to four types of pre-customized batch processing file parsing rules (i.e. Figure 2The illustrated import, delete, export and query file field format requirements) a series of read and write operations on the input batch file (i.e. the request instruction parameter of the cache message record 51 CSV file) are parsed and executed and the corresponding batch feedback file (i.e. the CSV file compression package stored in the request feedback data of the cache message record 51) is returned. It should be noted that the compound database 9 of the embodiment of the present application is a logical database, and various data table items in it can be stored in different types of physical databases (such as relational databases, distributed non-relational databases, etc.) based on application requirements. Therefore, the above four batch processors need to perform corresponding physical database instruction conversion to obtain one or more physical database instructions based on the database instruction format of the target physical database corresponding to each parsed database read and write operation when executing each parsed database read and write operation.

[0245] It should also be noted that based on the design principles of the above four batch processors (data import unit 63, data deletion unit 64, data export unit 65 and data query unit 66) of the embodiment of the present application, the following adjustments can also be made during the specific implementation process according to actual application requirements: 1) During the specific implementation process, the parsing process of the import / delete / export / query sub-instruction is modified by modifying the batch file parsing rules according to actual application requirements, or more import / delete / export / query sub-instructions are added, or other major instructions in addition to import / delete / export / query are added; 2) During the specific implementation process, the CSV file type of the batch file is changed to other text file types such as txt file type, ini file type, xml file type, json file, etc. by modifying the batch file parsing rules according to actual application requirements; 3) During the specific implementation process, the CSV file type of the batch feedback file is changed to other text file types such as txt file type, xml file type, json file, etc. according to actual application requirements.

[0246] (Seven) User permission configuration table 7:

[0247] The user permission configuration table 7 of the embodiment of the present application is used to store a plurality of user permission configuration records 71.

[0248] Here, as Figure 5As shown in a data structure diagram of a user permission configuration record and an operation approval configuration record provided by an embodiment of the present application, the user permission configuration record 71 of the embodiment of the present application at least includes a permission configuration record identifier, a registered user identifier, a registered user type, a registered user token, a token validity period and a registered project identifier set; wherein the permission configuration record identifier is a unique record identifier corresponding to the current user permission configuration record; each user permission configuration record 71 corresponds to a registered user, and the registered user identifier is a unique identity identifier of the current registered user; the registered user type includes an administrator type and a plurality of non-administrator types; the registered user token is identity token information pre-allocated for the current registered user, and the token validity period is validity period information of the current token; the registered project identifier set is composed of one or more registered project identifiers when the registered project identifier set is not empty; each registered user can be added to one or more database projects, and each registered project identifier in the registered project identifier set is a project identifier of a database project in which the current registered user is located.

[0249] It should be noted that the user permission configuration table 7 of the embodiment of the present application is a logical data table item, and the embodiment of the present application can select a corresponding physical database (for example, a relational database, a distributed non-relational database, etc.) for the user permission configuration table 7 based on application requirements to perform physical data storage, thereby obtaining a plurality of permission configuration table storage customization schemes. The relational databases commonly used by the embodiment of the present application include SQL, MySQL, PostgreSQL and the like, and the distributed non-relational databases commonly used by the embodiment of the present application include MongoDB, Redis, SequoiaDB and the like. One of the plurality of permission configuration table storage customization schemes that can be provided by the embodiment of the present application is to use a SQL or MySQL database to store the user permission configuration table 7.

[0250] (Eight) Operation Approval Configuration Table 8:

[0251] The operation approval configuration table 8 of the embodiment of the present application is used to store a plurality of operation approval configuration records 81.

[0252] Here, as shown in Figure 5 the operation approval configuration record 81 of the embodiment of the present application at least includes an approval configuration record identifier, an approval project identifier, an approval configuration set and an approval interface set; wherein:

[0253] 1) The approval configuration record identifier is a unique record identifier corresponding to the current operation approval configuration record;

[0254] 2) Each operation approval configuration record 81 corresponds to a database project that needs to be subjected to data approval, and the approval project identifier is a unique project identifier of the current database project;

[0255] 3) The approval configuration set is composed of one or more approval configurations; each approval configuration is used to set whether a type of user type needs to approve a type of operation type, and each approval configuration is composed of an approval user type, an import configuration bit, a deletion configuration bit, and an export configuration bit; among them, the approval user type includes an administrator type and all non-administrator types; the values of the import, deletion, and export configuration bits include 0 and 1, and the import, deletion, or export configuration bit is 0, indicating that the current user type does not need to be approved when processing data import, deletion, or export operations in the current database project, and the import, deletion, or export configuration bit is 1, indicating that the current user type needs to be approved when processing data import, deletion, or export operations in the current database project; the embodiment of the application provides that at least one of the import, deletion, and export configuration bits is 1;

[0256] 4) The approval interface set includes an import approval interface, a deletion approval interface, and an export approval interface; among them, the import, deletion, and export approval interfaces are each an artificial or other machine processing interface for performing data approval processing; each approval interface of the embodiment of the application is used to receive the approval application sent by the operation approval unit 62 and sent to the corresponding artificial processing end or other machine processing end for approval operation, and returns the approval pass or approval fail conclusion returned by the artificial processing end or other machine processing end based on each approval application to the operation approval unit 62 as the corresponding approval result.

[0257] It should be noted that the operation approval configuration table 8 of the embodiment of the application is a logical data table item, and the embodiment of the application can select a corresponding physical database (such as a relational database, a distributed non-relational database, etc.) for the operation approval configuration table 8 based on application requirements to perform physical data storage and thus obtain a variety of approval configuration table storage customization schemes. One of the various approval configuration table storage customization schemes that can be provided by the embodiment of the application is to use a SQL or MySQL database to store the operation approval configuration table 8.

[0258] (Nine) Compound database 9:

[0259] The compound database 9 of the embodiment of the application is a logical database, and the data table items therein at least include a project index table 91, a plurality of compound primary attribute tables 92, and a plurality of compound secondary attribute tables 93. Among them, the project index table 91 is used to store a plurality of project index records 911; the compound primary attribute table 92 is used to store a plurality of compound primary attribute records 921; and the compound secondary attribute table 93 is used to store a plurality of compound secondary attribute records 931. The project index record 911 of the embodiment of the application corresponds one-to-one to the compound primary attribute table 92; and the compound primary attribute record 921 of the compound primary attribute table 92 corresponds one-to-one to the compound secondary attribute table 93.

[0260] Each item index record 911 of the embodiment of the present application corresponds to one database item in the compound database 9; it is to be noted that the item index record 911 corresponding to each database item in the item index table 91 can only be added once before being deleted, but can be modified multiple times.

[0261] As Figure 6 As shown in the data structure diagram of the item index record, the compound primary attribute record and the compound secondary attribute record provided by the embodiment of the present application, the item index record 911 of the embodiment of the present application at least includes an index record identifier, an item index identifier, an item group member identifier set, an index record state and a primary attribute table identifier; wherein the index record identifier is the unique record identifier of the current item index record; the item index identifier is the unique item identifier of the current database item; the item group member identifier set includes one or more group member user identifiers, each of which corresponds to the unique identity identifier of a registered user who joins the current database item; the index record state includes not deleted and deleted; and the primary attribute table identifier is the unique identifier of the corresponding compound primary attribute table 92.

[0262] Each compound primary attribute table 92 of the embodiment of the present application corresponds to one database item in the compound database 9; each compound primary attribute record 921 in each compound primary attribute table 92 corresponds to one compound in the current database item; it is to be noted that the compound primary attribute record 921 corresponding to each compound in the compound primary attribute table 92 can only be added once before being deleted, but can be modified multiple times.

[0263] As Figure 6As shown, the compound primary attribute record 921 of the embodiment of the present invention includes at least a primary attribute record identifier, a SMILES sequence, a molecular chemical formula, a chemical element sequence, a first-class molecular fingerprint, a second-class molecular fingerprint, a third-class molecular fingerprint, a primary attribute set, a primary attribute record state and a secondary attribute table identifier; wherein, the primary attribute record identifier is the unique record identifier of the current compound primary attribute record 921; the SMILES sequence is the SMILES sequence of the current compound; the molecular chemical formula is the chemical expression of the current compound molecule; the chemical element sequence is the chemical element collection of the current compound molecule, which is composed of multiple chemical elements; the first, second and third class molecular fingerprints are the tors of the current compound molecule respectively. IONBV algorithm molecular fingerprint, MFP2 algorithm molecular fingerprint and FFP2 algorithm molecular fingerprint; all attributes of each compound are divided into two attribute sets: general attributes and personalized attributes, among which the general attribute set is composed of multiple general attributes, and the first-level attribute set in the compound first-level attribute record 921 corresponding to each compound corresponds to the general attribute set of the current compound; the first-level attribute set includes multiple first-level attributes, each first-level attribute is composed of a pair of attribute name and attribute value, and each first-level attribute corresponds to a general attribute in the general attribute set of the current compound; the first-level attribute record status includes not deleted and deleted; the second-level attribute table identifier is the unique identifier of the corresponding compound second-level attribute table 93.

[0264] Each compound secondary attribute table 93 in the embodiment of the present invention corresponds to a compound in a database item in the compound database 9; all attributes of each compound are divided into two attribute sets: general attributes and personalized attributes, wherein the personalized attribute set is further subdivided into multiple secondary attribute subsets and each secondary attribute subset has a unique classification name, and each compound secondary attribute record 931 in the compound secondary attribute table 93 corresponding to each compound corresponds to an attribute update operation of a class of secondary attribute subsets of the current compound.

[0265] like Figure 6 As shown, the compound secondary attribute record 931 of the embodiment of the present invention includes at least a secondary attribute record identifier, a secondary attribute classification name, a secondary attribute set, a secondary attribute version, a secondary attribute addition time and a secondary attribute record status; wherein, the secondary attribute record identifier is a unique record identifier of the current compound secondary attribute record 931; the secondary attribute classification name is the classification name of the secondary attribute subset updated at the time; the secondary attribute set is the secondary attribute subset updated at the time, consisting of multiple secondary attributes, each secondary attribute consisting of a pair of attribute name and attribute value; the secondary attribute version is the version information corresponding to the secondary attribute set; the secondary attribute addition time is the addition time of the current compound secondary attribute record 931; the secondary attribute record status includes not deleted and deleted.

[0266] It should be noted that the project index table 91, the compound primary attribute table 92, and the compound secondary attribute table 93 of the embodiments of the present application are each a type of logical data table item, and the project index record 911, the compound primary attribute record 921, and the compound secondary attribute record 931 in each table are each a type of logical data record. The embodiments of the present application can select a corresponding type of physical database (for example, a relational database, a distributed non-relational database, etc.) for the project index table 91, the compound primary attribute table 92, and the compound secondary attribute table 93 based on application requirements to perform physical data storage, thereby obtaining a variety of compound database storage customization schemes. One of the variety of compound database storage customization schemes that can be provided by the embodiments of the present application is that the project index table 91 is stored using an SQL or MySQL database, the compound primary attribute table 92 is stored using a PostgreSQL database, and the compound secondary attribute table 93 is stored using a MongoDB or Redis database.

[0267] It should also be noted that the division of each module of the above system is only a logical functional division, and all or part of the actual implementation can be integrated into one physical entity, or can be physically separated. Moreover, these modules can all be implemented in the form of software called by a processing element; all can be implemented in the form of hardware; or some modules can be implemented in the form of software called by a processing element, and some modules can be implemented in the form of hardware. For example, the message processing module can be a separately established processing element, or can be integrated into a chip of the above device, and in addition, can be stored in the form of program code in the memory of the above device, and the function of the above determination module can be called and executed by a processing element of the above system. The implementation of other modules is similar. Moreover, all or part of these modules can be integrated together, or can be independently implemented. The processing element described herein can be an integrated circuit having a signal processing capability. In the implementation process, each method step of the foregoing method or each module processing step of the foregoing system can be completed by an integrated logic circuit of hardware in the processor element or an instruction in the form of software.

[0268] For example, the modules of the above system can be one or more integrated circuits configured to implement the aforementioned methods, such as one or more Application Specific Integrated Circuits (ASICs), or, one or more Digital Signal Processors (DSPs), or, one or more Field Programmable Gate Arrays (FPGAs), etc. For another example, when a module of the above system is implemented by means of a processing element scheduling program codes, the processing element can be a general purpose processor, such as a Central Processing Unit (CPU) or other processor capable of executing program codes. For yet another example, the modules can be integrated together to be implemented in the form of a System-on-a-chip (SOC).

[0269] In the above embodiments, the implementation can be wholly or partially by software, hardware, firmware, or any combination thereof. When implemented by software, the implementation can be wholly or partially in the form of a computer program product. The computer program product includes one or more computer instructions. When loaded and executed by a computer, the computer instructions wholly or partially produce the processes or functions described in the above method embodiments. The computer can be a general purpose computer, a special purpose computer, a computer network, or other programmable apparatus. The computer instructions can be stored in a computer readable storage medium, or transferred from one computer readable storage medium to another, such as transferred from one website site, computer, server or data center to another by wire (such as coaxial cable, optical fiber, Digital Subscriber Line (DSL), or wireless (such as infrared, wireless, Bluetooth, microwave, etc.) manner. The computer readable storage medium can be any available medium accessible by a computer or data storage device such as a server, data center, etc. including one or more available media integrated. The available medium can be a magnetic medium (such as a floppy disk, a hard disk, a magnetic tape), an optical medium (such as a DVD), or a semiconductor medium (such as a solid state disk (SSD)), etc.

[0270] The embodiment of the present application provides a database access system of a compound database, which comprises a database service gateway, a request message queue, a feedback message queue, a message processing module, a cache message queue, a database management module, a user permission configuration table, an operation approval configuration table and the compound database; wherein the database service gateway is used for recording and adding the request message queue according to the received first service request, and is also used for sending the request feedback according to the feedback message queue; the message processing module is used for adding the cache message queue according to the request message queue, and is also used for adding the feedback message queue according to the cache message queue; the user auditing unit of the database management module is used for updating the user permission state of each cache message record in the cache message queue according to the user permission configuration table, the operation approval unit is used for updating the data auditing state of each cache message record in the cache message queue according to the operation approval configuration table, the data import unit is used for adding or updating the data of the compound database according to the cache message queue, the data deletion unit is used for deleting the data of the compound database according to the cache message queue, the data export unit is used for exporting the data of the compound database according to the cache message queue, and the data query unit is used for querying the data of the compound database according to the cache message queue; the project index table of the compound database is used for storing a plurality of project index records, each project index record corresponds to a database project and a compound primary attribute table, the compound primary attribute table of the compound database is used for storing a plurality of compound primary attribute records, each compound primary attribute record corresponds to a general attribute set of a compound and a compound secondary attribute table, and the compound secondary attribute table of the compound database is used for storing a plurality of compound secondary attribute records, and the compound secondary attribute table of the compound database is used for updating a group of secondary attributes of a compound by adding the compound secondary attribute record. The embodiment of the present application divides the storage spaces of the general attributes and the individual attributes of the compound by using the compound primary / secondary attribute table, and divides the storage spaces of the individual attributes of each compound by using the compound secondary attribute table, so that the problem of redundant field waste caused by the conventional full attribute record mode can be avoided, the storage resource waste rate is reduced, and the overall task processing performance of the database is improved.

[0271] Those skilled in the art should further appreciate that the elements and algorithms described in connection with the examples disclosed herein can be embodied in electronic hardware, computer software, or in combinations of both. To clearly illustrate this interchangeability of hardware and software, various examples have been described herein in terms of their general functionality. Whether such functionality is implemented as hardware or software depends upon the particular application and design constraints imposed on the overall system. Skilled artisans can implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present application.

[0272] The steps of a method or algorithm described in connection with the examples disclosed herein can be embodied directly in hardware, in a software module executed by a processor, or in a combination of the two. A software module can reside in random access memory (RAM), flash memory, read-only memory (ROM), electrically programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM), registers, hard disk, a removable disk, a CD-ROM, or any other form of storage medium known in the art.

[0273] The specific implementation described above is for the purpose of further illustrating the objects, technical solutions, and advantages of the present application. It should be understood that the above description is merely a specific implementation of the present application and is not intended to limit the protection scope of the present application. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present application shall be included in the protection scope of the present application.

Claims

1. A database access system for a database of compounds, characterized by The system comprises a database service gateway, a request message queue, a feedback message queue, a message processing module, a cache message queue, a database management module, a user permission configuration table, an operation approval configuration table and a compound database; The database service gateway is connected with the request message queue and the feedback message queue respectively; the message processing module is connected with the request message queue, the feedback message queue and the cache message queue respectively; the database management module is connected with the cache message queue, the user permission configuration table, the operation approval configuration table and the compound database respectively; The database service gateway is used for receiving a first service request and recording and adding the request message queue according to the first service request; the database service gateway is also used for sending a request feedback according to the feedback message queue; The request message queue is used for storing a plurality of request message records; The feedback message queue is used for storing a plurality of feedback message records; The message processing module is used for adding cache messages to the cache message queue according to the request message queue; the message processing module is also used for adding feedback messages to the feedback message queue according to the cache message queue; The cache message queue is used for storing a plurality of cache message records; The database management module comprises a user review unit, an operation approval unit, a data import unit, a data deletion unit, a data export unit and a data query unit; the user review unit is used for updating the user permission state of each cache message record in the cache message queue according to the user permission configuration table; the operation approval unit is used for updating the data review state of each cache message record in the cache message queue according to the operation approval configuration table; the data import unit is used for adding or updating data to the compound database according to the cache message queue; the data deletion unit is used for deleting data from the compound database according to the cache message queue; the data export unit is used for exporting data from the compound database according to the cache message queue; the data query unit is used for querying data in the compound database according to the cache message queue; The user permission configuration table is used for storing a plurality of user permission configuration records; The operation approval configuration table is used for storing a plurality of operation approval configuration records; The compound database comprises a project index table, a plurality of compound first-level attribute tables and a plurality of compound second-level attribute tables; the project index table is used for storing a plurality of project index records; the compound first-level attribute table is used for storing a plurality of compound first-level attribute records; the compound second-level attribute table is used for storing a plurality of compound second-level attribute records; the project index record corresponds to the compound first-level attribute table one by one; the compound first-level attribute record corresponds to the compound second-level attribute table one by one. The compound primary attribute table corresponds to one database item in the compound database; each compound primary attribute record in the compound primary attribute table corresponds to one compound in the current database item; the compound primary attribute record corresponding to each compound in the compound primary attribute table can be added only once before being deleted, but can be modified multiple times; the compound primary attribute record comprises at least a primary attribute record identifier, a SMILES sequence, a molecular chemical formula, a chemical element sequence, a first-type molecular fingerprint, a second-type molecular fingerprint, a third-type molecular fingerprint, a primary attribute set, a primary attribute record state and a secondary attribute table identifier; the primary attribute record identifier is a unique record identifier of the current compound primary attribute record; the SMILES sequence is a SMILES sequence of the current compound; the molecular chemical formula is a chemical expression of a molecule of the current compound; the chemical element sequence is a chemical element set of a molecule of the current compound, which comprises a plurality of chemical elements; the first-type, second-type and third-type molecular fingerprints are torsionbv algorithm molecular fingerprints, mfp2 algorithm molecular fingerprints and ffp2 algorithm molecular fingerprints of a molecule of the current compound respectively; all attributes of each compound are divided into two attribute sets, i.e. a general attribute set and an individualized attribute set, wherein the general attribute set comprises a plurality of general attributes, the primary attribute set in the compound primary attribute record corresponding to each compound corresponds to the general attribute set of the current compound; the primary attribute set comprises a plurality of primary attributes, each primary attribute comprises a pair of an attribute name and an attribute value, and each primary attribute corresponds to one general attribute in the general attribute set of the current compound; the primary attribute record state comprises an un-deleted state and a deleted state; and the secondary attribute table identifier is a unique identifier of the corresponding compound secondary attribute table. Each of the secondary attribute tables of the compounds corresponds to a compound in a database item in the compound database; all attributes of each compound are divided into two attribute sets, general attributes and individualized attributes, and the individualized attribute set is further subdivided into multiple secondary attribute subsets, each of which has a unique classification name, and each of the secondary attribute records in the secondary attribute table of the compound corresponding to the compound corresponds to a one-time attribute update operation of a secondary attribute subset of the current compound; the secondary attribute record at least includes secondary attribute record identification, secondary attribute classification name, secondary attribute set, secondary attribute version, secondary attribute addition time and secondary attribute record state; the secondary attribute record identification is the unique record identification of the current compound secondary attribute record; the secondary attribute classification name is the classification name of the secondary attribute subset updated this time; the secondary attribute set is the secondary attribute subset updated this time, which is composed of multiple secondary attributes, each of which is composed of a pair of attribute name and attribute value; the secondary attribute version is the version information corresponding to the secondary attribute set; the secondary attribute addition time is the addition time of the current compound secondary attribute record; and the secondary attribute record state includes un-deleted and deleted.

2. The database access system of the compound database according to claim 1, characterized in that, the first service request includes a first message identification, a first message source address, a first message header and a first message body; the first message identification is the unique message identification of the current service request; the first message source address is the sender address of the current service request; the first message header includes a first user identification, a first user token, a first item identification and a first instruction type; the first user identification is the unique identity of the initiating user initiating the current service request, the first user token is the identity token information for the current user, and the first item identification is the database item identification corresponding to the database data to be operated by the current service request; the first instruction type includes import, deletion, export and query; the first message body includes a first instruction parameter; and the first instruction parameter is a CSV file; each of the request message records corresponds to a first service request; and the request message record at least includes a request message identification, a request message source address, a request message header, a request message body and a request message state; the request message identification, the request message source address, the request message header and the request message body are respectively the corresponding first message identification, first message source address, first message header and first message body; and the request message state includes unprocessed and processed. Each of the feedback message records corresponds to one of the request message records; the feedback message record at least includes a feedback message identification, a feedback message target address, a feedback message header, a feedback message body, and a feedback message state; the feedback message identification matches the corresponding request message identification; the feedback message target address matches the corresponding request message source address; the feedback message header includes a second user identification, a second project identification, a second instruction type, and a first instruction execution state; the second user identification, the second project identification, and the second instruction type match the corresponding first user identification, the first project identification, and the first instruction type respectively; the second instruction type includes import, deletion, export, and query; the first instruction execution state includes success and exception; the feedback message body includes first feedback data; the first feedback data is a compressed package file with one or more CSV files; and the feedback message state includes unprocessed and processed. Each of the cache message records corresponds to one of the request message records. The cache message record at least includes a request message identification, a request source address, a request user identification, a request user token, a request project identification, a request instruction type, a request instruction parameter, a user permission state, a data audit state, request feedback data, and a request message state; the request message identification, the request source address, the request user identification, the request user token, the request project identification, the request instruction type, and the request instruction parameter match the corresponding first message identification, first message source address, first user identification, first user token, first project identification, first instruction type, and first instruction parameter respectively; the request instruction type includes import, deletion, export, and query; the user permission state and the data audit state both include unreviewed, not satisfied, and satisfied; and the request message state includes unprocessed, under review, under processing, has been fed back, and has been processed. The user permission configuration record at least includes a permission configuration record identification, a registered user identification, a registered user type, a registered user token, a token validity period, and a registered project identification set; the permission configuration record identification is a unique record identification corresponding to the current user permission configuration record; each of the user permission configuration records corresponds to a registered user, and the registered user identification is a unique identity of the current registered user; the registered user type includes an administrator type and a plurality of non-administrator types; the registered user token is an identity token information pre-allocated for the current registered user, and the token validity period is the validity period information of the current token; when the registered project identification set is not empty, it is composed of one or more registered project identifications; each registered user can join one or more database projects, and each registered project identification in the registered project identification set is the project identification of a database project where the current registered user is located. The operation approval configuration record at least includes an approval configuration record identifier, an approval project identifier, an approval configuration set, and an approval interface set; the approval configuration record identifier is a unique record identifier corresponding to the current operation approval configuration record; each operation approval configuration record corresponds to a database project that needs data approval; the approval project identifier is a unique project identifier of the current database project; the approval configuration set is composed of one or more approval configurations; each approval configuration is used to set whether a type of user type corresponding to three types of operation types needs approval; each approval configuration is composed of an approval user type, an import configuration bit, a deletion configuration bit, and an export configuration bit; the approval user type includes an administrator type and all non-administrator types; the import, deletion, and export configuration bits have values of 0 and 1; when the import, deletion, or export configuration bit is 0, it means that the current user type does not need to be approved when handling data import, deletion, or export operations in the current database project; when the import, deletion, or export configuration bit is 1, it means that the current user type needs to be approved when handling data import, deletion, or export operations in the current database project; at least one of the import, deletion, and export configuration bits of the approval configuration is 1; the approval interface set includes an import approval interface, a deletion approval interface, and an export approval interface; each of the import, deletion, and export approval interfaces is an artificial or other machine processing interface for data approval processing; each approval interface is used to receive an approval application sent by the operation approval unit and send it to a corresponding artificial processing end or other machine processing end for approval operation, and return an approval pass or an approval fail conclusion returned by the artificial processing end or other machine processing end based on each approval application to the operation approval unit as a corresponding approval result; Each project index record of the project index table corresponds to a database project in the compound database; the project index record corresponding to each database project in the project index table can only be added once before being deleted, but can be modified multiple times; the project index record at least includes an index record identifier, a project index identifier, a project member identifier set, an index record state, and a first attribute table identifier; the index record identifier is a unique record identifier of the current project index record; the project index identifier is a unique project identifier of the current database project; The project member identifier set includes one or more member user identifiers, each of which corresponds to a unique identity of a registered user who joins the current database project; the index record state includes not deleted and deleted; the first attribute table identifier is a unique identifier of the corresponding compound first attribute table.

3. The database access system of the compound database according to claim 2, characterized in that, The database service gateway is specifically configured to, when recording and adding processing is performed on the request message queue according to the first service request, parse the first message identifier, the first message source address, the first message header and the first message body from the first service request based on a preset request message parsing rule as a corresponding current message identifier, a current message source address, a current message header and a current message body; a request message record is added in the request message queue as a corresponding current added record; the request message identifier, the request message source address, the request message header and the request message body of the current added record are set as the current message identifier, the current message source address, the current message header and the current message body; and the request message state of the current added record is set as unprocessed.

4. The database access system of the compound database according to claim 2, wherein, The database service gateway is specifically configured to, when request feedback sending processing is performed according to the feedback message queue, record all the feedback message records with the feedback message state as unprocessed in the feedback message queue as unprocessed records, and take the earliest one of the unprocessed records as a corresponding current record; when the current record is not empty, perform corresponding feedback message encapsulation processing on the feedback message identifier, the feedback message target address, the feedback message header and the feedback message body of the current feedback message record according to a preset feedback message encapsulation rule to obtain a corresponding current feedback message; and send the current feedback message to the feedback message target address of the current feedback message record; and reset the feedback message state of the current record to processed after the message is successfully sent.

5. The database access system of the compound database according to claim 2, wherein, The message processing module is specifically configured to, when cache message adding processing is performed on the cache message queue according to the request message queue, record all the request message records with the request message state as unprocessed in the request message queue as unprocessed records, and take the earliest one of the unprocessed records as a corresponding current request message record; when the current request message record is not empty, extract the request message identifier, the request message source address, the request message header and the request message body of the current request message record as a corresponding current message identifier, a current message source address, a current message header and a current message body; extract the first user identifier, the first user token, the first project identifier and the first instruction type of the current message header and the first instruction parameter of the current message body as a corresponding current user identifier, a current user token, a current project identifier, a current instruction type and a current instruction parameter; and add a cache message record in the cache message queue as a corresponding current cache message record; and the request message identification, the request source address, the request user identification, the request user token, the request item identification, the request instruction type and the request instruction parameter of the current cache message record are set as the current message identification, the current message source address, the current user identification, the current user token, the current item identification, the current instruction type and the current instruction parameter respectively; and the user permission state and the data audit state of the current cache message record are both set as unverified; the request feedback data of the current cache message record is set as empty; and the request message state of the current cache message record is set as unprocessed; and the request message state of the current request message record is reset as processed when the setting of the current cache message record ends.

6. The database access system of the compound database according to claim 2, wherein the message processing module is specifically configured to, when the feedback message queue is added according to the cache message queue, the cache message record with the request message state of the cache message queue as feedback is recorded as a feedback record, and the earliest one of the feedback records is taken as a corresponding current cache message record; and when the current cache message record is not empty, whether the user permission state and the data audit state of the current cache message record are both satisfied is identified, if yes, the corresponding current instruction execution state is set as success, if not, the corresponding current instruction execution state is set as exception; the request message identification and the request source address of the current cache message record are taken as the feedback message identification and the feedback message target address respectively; the request user identification, the request item identification, the request instruction type and the current instruction execution state of the current cache message record are taken as the second user identification, the second item identification, the second instruction type and the first instruction execution state respectively to form the feedback message header; the request feedback data of the current cache message record is taken as the first instruction feedback data to form the feedback message body; and a corresponding feedback message state is set as unprocessed; a corresponding feedback message record is added to the feedback message queue by the obtained feedback message identification, feedback message target address, feedback message header, feedback message body and feedback message state; and the request message state of the current cache message record is set as processed after the feedback message record is successfully added.

7. The database access system of the compound database according to claim 2, wherein the user audit unit is specifically configured to, when the user permission state of each cache message record in the cache message queue is updated according to the user permission configuration table, record the request message state in the cache message queue as an unprocessed record, and take the earliest one in time as the corresponding current unprocessed record; and take the request user identifier, the request user token, and the request item identifier of the current unprocessed record as the corresponding current user identifier, current user token, and current item identifier; and take the current time as the corresponding current token time; and take the user permission configuration record in the user permission configuration table that matches the registered user identifier and the current user identifier, the registered user token and the current user token, and the token validity period satisfying the current token time as the corresponding current user permission configuration record; and identify whether the current user permission configuration record is empty; if the current user permission configuration record is empty, set the user permission state and the data audit state of the current unprocessed record as not satisfying, and set the request message state of the current unprocessed record as having been fed back; if the current user permission configuration record is not empty, confirm whether there is a registered item identifier in the registered item identifier set of the current user permission configuration record that matches the current item identifier; if it is confirmed that there is, set the user permission state of the current unprocessed record as satisfying, and set the request message state of the current unprocessed record as being in audit; if it is confirmed that there is not, set the user permission state and the data audit state of the current unprocessed record as not satisfying, and set the request message state of the current unprocessed record as having been fed back.

8. The database access system of the compound database according to claim 2, wherein when the operation approval unit updates the data audit state of each cache message record in the cache message queue according to the operation approval configuration table, record the request message state in the cache message queue as an unprocessed record, and take the earliest one in time as the corresponding current unprocessed record; and take the request user identifier, the request item identifier, the request instruction type, and the request instruction parameter of the current unprocessed record as the corresponding current user identifier, current item identifier, current instruction type, and current instruction parameter; and take the registered user type of the user permission configuration record in the user permission configuration table that matches the registered user identifier and the current user identifier as the corresponding current user type; and take the operation approval configuration record in the operation approval configuration table that matches the approval item identifier and the current item identifier as the corresponding current operation approval configuration record; and identify whether the current operation approval configuration record is empty; if the current operation approval configuration record is empty, set the data audit state of the current unprocessed record as satisfying, and set the request message state of the current unprocessed record as being in processing; If the current operation approval configuration record is not empty, the approval configuration in the approval configuration set of the current operation approval configuration record that matches the approval user type and the current user type is taken as the corresponding current approval configuration, and whether the current approval configuration is empty is identified; If the current approval configuration is empty, the data audit state of the current audit record is set to meet, and the request message state of the current audit record is set to processing. If the current approval configuration is not empty, whether there is a configuration bit corresponding to the current instruction type in the import, delete, and export configuration bits of the current approval configuration is confirmed. If there is or is not, the data audit state of the current audit record is set to meet, and the request message state of the current audit record is set to processing. If it is confirmed that there is, the configuration bit corresponding to the current instruction type in the import, delete, and export configuration bits of the current approval configuration is taken as the corresponding current configuration bit, and the current configuration bit is identified. If the current configuration bit is 0, the data audit state of the current audit record is set to meet, and the request message state of the current audit record is set to processing. If the current configuration bit is 1, the approval interface corresponding to the current instruction type in the import, delete, and export approval interface of the approval interface set of the current operation approval configuration record is taken as the corresponding current approval interface. And a unique timestamp is generated based on the current time as a corresponding first application identifier, and the first application identifier and the current user identifier, the current project identifier, the current instruction type, the current instruction parameter form a corresponding first approval application to the current approval interface; and after sending successfully, the request message identifier of the current audit record is taken as a corresponding first message identifier, and the first application identifier and the first message identifier form a corresponding first approval record and are saved; and after the approval record is saved successfully, the request message state of the current audit record is set to processing.

9. The database access system of the compound database according to claim 8, wherein The operation approval unit is further configured to, when a corresponding first approval result is received from any approval interface, take the first approval result currently received as a corresponding current approval result. The saved first approval record in which the first application identifier matches the second application identifier of the current approval result is taken as a corresponding current approval record; the cached message record in the cache message queue in which the request message identifier matches the first message identifier of the current approval record is taken as a corresponding current message record; the first approval feedback of the current approval result is taken as a corresponding current approval feedback; the current approval feedback is identified; if the current approval feedback is approval passed, the data audit state of the current message record is set as satisfied; if the current approval feedback is approval failed, the data audit state of the current message record is set as not satisfied, and the request message state of the current message record is set as feedbacked; wherein the first approval result comprises the second application identifier and the first approval feedback; the first approval feedback comprises approval passed and approval failed.

10. The database access system of the compound database according to claim 2, wherein, when the first instruction type of the first service request is import, deletion, export and query, the first instruction parameter corresponds to a CSV file, which is recorded as a corresponding import instruction file, a deletion instruction file, an export instruction file and a query instruction file; the first row of the import, deletion, export and query instruction file is a column field row, and the second row to the last row is a data row; each data row corresponds to an import, deletion, export and query operation; the field format of the column field row of the import, deletion, export and query instruction file meets the corresponding import file field format requirement, deletion file field format requirement, export file field format requirement and query file field format requirement; the column fields of the import file field format requirement include import classification field, group member field, SMILES field, chemical formula field, element sequence field, one-type fingerprint field, two-type fingerprint field, three-type fingerprint field, first-level attribute field, second-level attribute classification field, second-level attribute field and version field; the import classification field includes project creation, first-level attribute import and second-level attribute import; when the import classification field is project creation, the group member field is a set of project group member identifiers, which is composed of one or more registered user identifiers; the SMILES field, the chemical formula field, the element sequence field, the one-type fingerprint field, the two-type fingerprint field, the three-type fingerprint field, the first-level attribute field, the second-level attribute classification field, the second-level attribute field and the version field are all empty; When the import classification field is a first-level attribute import, the group member field, the second-level attribute classification field, the second-level attribute field, and the version field are all empty; the SMILES field, the chemical formula field, the element sequence field, the first-level attribute field, the one-type fingerprint field, the two-type fingerprint field, and the three-type fingerprint field are respectively a corresponding SMILES sequence, a molecular chemical formula, a chemical element sequence, a one-type molecular fingerprint, a two-type molecular fingerprint, a three-type molecular fingerprint, and a first-level attribute set; When the import classification field is a second-level attribute import, the group member field, the chemical formula field, the element sequence field, the one-type fingerprint field, the two-type fingerprint field, the three-type fingerprint field, and the first-level attribute field are empty; the SMILES field, the second-level attribute classification field, the second-level attribute field, and the version field are respectively a corresponding SMILES sequence, a second-level attribute classification name, a second-level attribute set, and a second-level attribute version; The column field required by the format of the delete file field is composed of a delete classification field, a delete SMILES field, a delete attribute field, and a delete version field; the delete classification field includes project deletion, compound deletion, and attribute deletion; When the delete classification field is project deletion, the delete SMILES field, the delete attribute field, and the delete version field are all empty; When the delete classification field is compound deletion, the delete SMILES field is a corresponding SMILES sequence; the delete attribute field and the delete version field are both empty; When the delete classification field is attribute deletion, the delete SMILES field is a corresponding SMILES sequence; the delete attribute field is empty or a corresponding second-level attribute classification name; the delete version field is empty or a second-level attribute version; the delete attribute field and the delete version field cannot be empty at the same time; The column field required by the format of the export file field is composed of an export classification field and an export SMILES field; the export classification field includes project export and compound export; When the export classification field is project export, the export SMILES field is empty; When the export classification field is compound export, the export SMILES field is a corresponding SMILES sequence; The column field required by the format of the query file field is composed of a query classification field, a SMILES configuration field, a chemical element configuration field, and a similarity configuration field; the query classification field includes SMILES-based query and chemical element-based query; When the query classification field is SMILES-based query, the SMILES configuration field is a corresponding SMILES sequence, the chemical element configuration field is empty, and the similarity configuration field is empty or a similarity; when the query classification field is chemical element-based query, the SMILES configuration field and the similarity configuration field are empty, and the chemical element configuration field is a chemical element sequence.

11. The database access system of a compound database according to claim 10, wherein, the data import unit is specifically configured to, when the compound database is subjected to data addition or update processing according to the cache message queue, record all the cache message records in which the user permission state and the data review state both satisfy the condition, the request message state is processing, and the request instruction type is import as import operation records, and take the earliest one in time as a corresponding current import operation record; take the request item identifier of the current import operation record as a corresponding current item identifier; take the CSV file of the request instruction parameter of the current import operation record as a corresponding current import instruction file; and extract a first data row sequence from the data rows of the current import instruction file formatted based on the import file field format requirement; the first data row sequence is sequentially sorted by one or more first data rows; sequentially traverse all the first data rows of the first data row sequence; in the traversal process, take the first data row being currently traversed as a corresponding current data row; take the sequence index of the current data row in the first data row sequence as a corresponding first processing index; take the import classification field of the current data row as a corresponding current import classification; and identify the current import classification; if the current import classification is item creation, perform corresponding database item creation or update processing in the compound database based on the current item identifier and the group member field of the current data row to obtain a corresponding first processing result; if the current import classification is primary attribute import, perform corresponding compound primary attribute addition or update processing in the compound database based on the current item identifier and the SMILES field, the chemical formula field, the element sequence field, the one-type fingerprint field, the two-type fingerprint field, the three-type fingerprint field, and the primary attribute field of the current data row to obtain a corresponding first processing result; if the current import classification is secondary attribute import, perform corresponding compound secondary attribute addition processing in the compound database based on the current item identifier and the SMILES field, the secondary attribute classification field, the secondary attribute field, and the version field of the current data row to obtain a corresponding first processing result; and the first processing index and the first processing result obtained are combined to form a corresponding first processing feedback; and at the end of the traversal, all the first processing feedbacks obtained are combined to form a corresponding first processing feedback sequence; the first processing result includes success and failure. And the first processing feedback sequence is brought into a preset type of feedback CSV file template for corresponding CSV file assembly to obtain a corresponding first feedback CSV file; and a first compression package file is obtained by file compression of the first feedback CSV file based on a preset file compression package tool; And the request feedback data of the current import operation record is set based on the first compression package file; and the request message state of the current import operation record is set as having been fed back.

12. The database access system of the compound database according to claim 10, wherein, The data deletion unit is specifically configured to, when the compound database is subjected to data deletion processing according to the cache message queue, The cache message records in which the user permission state and the data audit state both meet the requirements, the request message state is processing, and the request instruction type is deletion are all recorded as deletion operation records, and the deletion operation record with the earliest time is taken as a corresponding current deletion operation record; The request item identifier of the current deletion operation record is taken as a corresponding current item identifier; The CSV file of the request instruction parameter of the current deletion operation record is taken as a corresponding current deletion instruction file; A second data row sequence is obtained by data row extraction of the current deletion instruction file based on the deletion file field format requirement; the second data row sequence is sequentially sorted by one or more second data rows; All the second data rows of the second data row sequence are sequentially traversed; in the traversal process, the second data row being currently traversed is taken as a corresponding current data row; the sequence index of the current data row in the second data row sequence is extracted as a corresponding second processing index; the deletion classification field of the current data row is extracted as a corresponding current deletion classification; and the current deletion classification is identified; If the current deletion classification is item deletion, corresponding database item deletion processing is performed in the compound database based on the current item identifier to obtain a corresponding second processing result; If the current deletion classification is compound deletion, corresponding compound deletion processing is performed in the compound database based on the current item identifier and the deletion SMILES field of the current data row to obtain a corresponding second processing result; If the current deletion classification is attribute deletion, corresponding compound attribute deletion processing is performed in the compound database based on the current item identifier and the deletion SMILES field, the deletion attribute field, and the deletion version field of the current data row to obtain a corresponding second processing result; A corresponding second processing feedback is composed of the second processing index and the second processing result; At the end of the traversal, a corresponding second processing feedback sequence is composed of all the second processing feedbacks obtained; the second processing result includes success and failure. And the second processing feedback sequence is brought into a preset type of feedback CSV file template for corresponding CSV file assembly to obtain a corresponding second feedback CSV file; and a file compression package tool is used for file compression of the second feedback CSV file to obtain a corresponding second compression package file; And the request feedback data of the current deletion operation record is set based on the second compression package file; and the request message state of the current deletion operation record is set as having been fed back.

13. The database access system of the compound database according to claim 10, wherein, The data exporting unit is specifically configured to, when the compound database is exported according to the cache message queue, The cache message record in which the user permission state and the data audit state both meet the requirements, the request message state is processing, and the request instruction type is export is recorded as an export operation record, and the export operation record with the earliest time is taken as a corresponding current export operation record; The request item identifier of the current export operation record is taken as a corresponding current item identifier; The CSV file of the request instruction parameter of the current export operation record is taken as a corresponding current export instruction file; A third data row sequence is extracted from the current export instruction file based on the export file field format requirement, and the third data row sequence is sequentially sorted by one or more third data rows; All the third data rows in the third data row sequence are sequentially traversed, and the third data row currently traversed is taken as a corresponding current data row; the sequence index of the current data row in the third data row sequence is extracted as a corresponding third processing index; the export classification field of the current data row is extracted as a corresponding current export classification; and the current export classification is identified; If the current export classification is item export, a corresponding database item export process is performed in the compound database based on the current item identifier to obtain a corresponding third processing result, and the third processing result and the corresponding third processing index are brought into a preset type of feedback CSV file template for corresponding CSV file assembly to obtain a corresponding third feedback CSV file; If the current export classification is compound export, a corresponding compound export process is performed in the compound database based on the current item identifier and the export SMILES field of the current data row to obtain a corresponding third processing result, and the third processing result and the corresponding third processing index are brought into a preset type of feedback CSV file template for corresponding CSV file assembly to obtain a corresponding third feedback CSV file; And at the end of the traversal, save all the third feedback CSV files obtained in the same file directory, and perform file compression on the current file directory based on the preset file compression package tool to obtain the corresponding third compressed package file; And set the request feedback data of the current export operation record based on the third compressed package file; and set the request message state of the current export operation record to feedback.

14. The database access system of the compound database according to claim 10, wherein, The data query unit is specifically configured to, when performing data query processing on the compound database according to the cache message queue, record all the cache message records in the cache message queue as query operation records, when the user permission state and the data audit state of the cache message records meet the requirements, the request message state is processing, and the request instruction type is query, and take the query operation record with the earliest time as the corresponding current query operation record; take the request item identifier of the current query operation record as the corresponding current item identifier; and take the CSV file of the request instruction parameter of the current query operation record as the corresponding current query instruction file; extract the data rows formatted based on the query file field format requirement from the current query instruction file to obtain a fourth data row sequence; the fourth data row sequence is sequentially sorted by one or more fourth data rows; sequentially traverse all the fourth data rows of the fourth data row sequence; in the traversal process, take the fourth data row currently traversed as the corresponding current data row; extract the sequence index of the current data row in the fourth data row sequence as the corresponding fourth processing index; extract the query classification field of the current data row as the corresponding current query classification; and identify the current query classification; if the current query classification is based on SMILES query, perform corresponding compound query processing on the compound database based on the current item identifier, the SMILES configuration field of the current data row, and the similarity configuration field to obtain a fourth processing result; and take the fourth processing result and the corresponding fourth processing index into a preset four-type feedback CSV file template to assemble a corresponding fourth feedback CSV file; if the current query classification is based on chemical element query, perform corresponding compound query processing on the compound database based on the current item identifier and the chemical element configuration field of the current data row to obtain the fourth processing result; and take the fourth processing result and the corresponding fourth processing index into a preset five-type feedback CSV file template to assemble the corresponding fourth feedback CSV file. At the end of the traversal, all the obtained fourth feedback CSV files are saved in the same file directory, and file compression is performed on the current file directory based on a preset file compression package tool to obtain a corresponding fourth compressed package file; The request feedback data of the current query operation record is set based on the fourth compressed package file, and the request message state of the current query operation record is set to feedbacked.

Citation Information

Patent Citations

  • WEB-based compound management method and system

    CN103426049A

  • Method and device for storing attribute data of metadata object

    CN118193531A