A method for storing multi-model data using a relational database management system
Patent Information
- Application Number
- CN202410248304.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-03-05
- Publication Date
- 2026-11-03
- Estimated Expiration
- 2044-03-05
AI Technical Summary
Existing relational database management systems lack effective intelligent optimization algorithms when storing multiple data models, resulting in long query times and wasted storage space.
Genetic algorithms are used to optimize relational patterns. Multi-model data is transformed into attribute tables, and the optimal relational pattern is found through genetic algorithms to optimize query time and storage space. This includes attribute table generation, encoding processing, exchange and mutation operations, generating the optimal chromosome to determine the optimal relational pattern.
It effectively speeds up query speed, reduces storage space consumption, provides a unified method for managing multi-model data, avoids the extra overhead of using multiple database management systems, and improves query and storage efficiency.
Smart Images

Figure CN118035365B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the fields of relational database management systems, multi-model data storage, and genetic algorithms, and particularly to a method for storing multi-model data using a relational database management system. Background Technology
[0002] Different database management system use cases result in different data models. For example, web page data is exchanged using JSON format, knowledge graphs are often stored in RDF format, and traditional industries such as bank accounts often use relational data. Complex database management system use cases can generate multiple data models.
[0003] There are two common methods for storing multiple data models. The first method uses middleware and leverages multiple database management systems (DBMS) to process the data. The advantage of this method is that it can effectively utilize existing mature DBMSs without developing new ones. The disadvantage is that as the data volume increases and the operations become more complex, the middleware struggles to process the data efficiently and correctly. The second method is to develop a multi-model data management system (MMS) that uses a new framework to handle multi-model data. Many mainstream commercial DBMSs have been extended into MMSs. This method primarily uses one or more existing mature data models to store and process other data models. Since relational database management systems are the most mature, using relational DBMSs to store multi-model data is the most common approach.
[0004] Since relational database management systems require predefined relational schemas, existing methods generally propose a predefined transformation process, such as directly converting JSON data values into attributes in a relational table. However, there are few algorithms that utilize intelligent optimization to optimize storage for both query time and storage space. Summary of the Invention
[0005] The purpose of this invention is to address the shortcomings of existing technologies by providing a method for storing multi-model data using a relational database management system.
[0006] The objective of this invention is achieved through the following technical solution:
[0007] (I) A method for storing multi-model data using a relational database management system
[0008] The method includes the following steps:
[0009] S1) Implement the initial transformation of multi-model data in relational database management system according to the attributes of multi-model data: obtain the information of all attributes in multi-model data, and transform the information of all attributes into multiple attribute tables, the attribute tables including object number column and attribute value column.
[0010] In step S1), the multi-model data is a combination of at least two of relational data, semi-structured data (JSON data), and graph data (RDF).
[0011] In step S1), the process of generating the attribute table of relational data is as follows:
[0012] Each attribute of the relational data is stored in an attribute table. The attribute value column of the attribute table stores the attribute value, and the object number column of the attribute table stores the primary key of the table to which the attribute belongs. The primary key can be a single primary key or a composite primary key. If the primary key is a single primary key, the object number is stored in one column. If the primary key is a composite primary key, the object number is stored in multiple columns, each corresponding to a field that constitutes the primary key.
[0013] In step S1), the generation process of the attribute table for the semi-structured data is as follows:
[0014] If the attributes of the semi-structured data are arrays, the information of each array element is stored in an attribute table. The attribute value column of the attribute table stores the value of the array element, and the object number column stores the number of the object to which the array belongs. If the attributes of the semi-structured data are nested objects, a nested object is stored as an attribute table. The attribute name of the attribute table stores "nested object name_attribute name", the object number column stores the primary key of the outer object of the nested object type attribute, and the attribute value column stores the value of the attribute. If the attributes of the semi-structured data are ordinary attributes, an attribute is stored as an attribute table. The attribute value column of the attribute table stores the value of the attribute, and the object number column stores the primary key of the table to which the attribute belongs.
[0015] In step S1), the generation process of the attribute table for the graph data is as follows:
[0016] Each attribute of the graph data is stored as an attribute table. The attribute value column of the attribute table stores the object, the object number column stores the subject, and the attribute name stores the predicate.
[0017] S2) Optimization using genetic algorithm: Number all attribute tables obtained in step S1) in numerical order to obtain a number sequence. After encoding the number sequence, an initial population consisting of several chromosomes is obtained. Each chromosome corresponds to a relational pattern. Combine the genetic algorithm to optimize the initial population and obtain at least one intermediate chromosome with the highest fitness value.
[0018] The fitness function is presented / represented in terms of query speed.
[0019] Step S2) includes the following steps:
[0020] S2.1) Obtain the number sequence: Number all the attribute tables obtained in step S1) in numerical order (starting from the number "1" and numbering with integers), and sort and connect the numerical order numbers to obtain a single continuous number sequence; for example, numbering 6 attribute tables will result in the number sequence 123456.
[0021] S2.2) Obtain the initial population through encoding: By randomly inserting several "0"s into the numerical ID, several number strings composed of the numerical ID and several "0"s are randomly generated, and each number string is used as a chromosome to form an initial population composed of several chromosomes; the number of "0"s is equal to the number of attribute tables.
[0022] S2.3) Perform optimization processing on the population; specifically:
[0023] S2.3.1) Decode the population and calculate the fitness value of each chromosome: Decode each chromosome separately and calculate the fitness value of each chromosome according to the fitness function to obtain the fitness values of all chromosomes; the fitness function is:
[0024]
[0025] In the formula, fitness is the fitness function, and t is the execution time of any chromosome.
[0026] S2.3.2) Based on the fitness values of all chromosomes, select half of the chromosomes with higher fitness from the population to form a chromosome set that remains unchanged, and select half of the chromosomes with lower fitness from the population to form a chromosome set that needs to be exchanged and mutated. Each chromosome in the chromosome set that needs to be exchanged and mutated is subjected to exchange and mutation treatments in sequence to obtain a new chromosome. All the new chromosomes obtained are combined with the chromosome sets that need to be exchanged and mutated to obtain a new population.
[0027] S2.3.3) Determine whether the maximum number of iterations has been reached. If the maximum number of iterations has not been reached, return to step S2.3.1) and perform decoding processing on the new population and calculate the fitness value of each chromosome according to step S2.3.1). If the maximum number of iterations has been reached, output one or more chromosomes with the highest fitness value as intermediate chromosomes.
[0028] In step S2.3.1), the decoding process specifically involves: reading a number string of a chromosome, where the number "0" divides the number string into several sub-number strings, each sub-number string including at least one non-zero number, and each non-zero number corresponding to an attribute table; and connecting and storing the attribute tables corresponding to at least one consecutive non-zero number in each sub-number string as a relation table.
[0029] In step S2.3.1), the process of calculating the fitness value of each chromosome is as follows: if the attribute tables corresponding to consecutive non-zero numbers in the sub-number string cannot be connected, the decoding fails and the fitness value of the chromosome is 0; if the attribute tables corresponding to consecutive non-zero numbers in the sub-number string can be connected, the corresponding relation schema is generated in the relational database management system, and then a pre-set query statement is executed in the relational database management system to calculate the execution time t. The fitness value of the chromosome is obtained by combining the fitness function and the execution time t.
[0030] In step S2.3.3), the exchange process specifically includes:
[0031] First, read a chromosome that needs to be exchanged and mutated, and then randomly select one chromosome from the set of chromosomes that remain unchanged.
[0032] Next, randomly select several digits from the number string of the chromosomes that remain unchanged (preferably one-fifth of the total number of digits in the attribute table), and replace the corresponding positions of the chromosomes to be exchanged and mutated with the selected digits. In order to ensure that each attribute table has one and only one, determine whether there are duplicate / missing digits, i.e., number numbers, in the chromosomes to be exchanged and mutated. If so, determine the duplicate and missing digits, and replace the duplicate digits with the missing digits. Chromosomes with high fitness are not exchanged.
[0033] In step S2.3.3), the mutation process specifically involves randomly selecting several pairs of numbers from a chromosome that needs to be exchanged and mutated (selecting one pair of numbers when the preset mutation probability is 50%, selecting two pairs of numbers when the preset mutation probability is 30%, and selecting three pairs of numbers when the preset mutation probability is 20%) and randomly exchanging their positions.
[0034] S3) Optimize storage space: If the number of intermediate chromosomes is 1, then the intermediate chromosome is selected as the optimal chromosome; if the number of intermediate chromosomes in step S2) is greater than 1, then the storage space occupied by the relational schema corresponding to each chromosome is calculated, and the chromosome with the smallest storage space occupied is selected from the intermediate chromosomes as the optimal chromosome. The multi-model data is stored in the relational database management system according to the relational schema corresponding to the obtained optimal chromosome.
[0035] (ii) A computer device
[0036] The computer device includes:
[0037] One or more processors;
[0038] Memory, used to store one or more programs;
[0039] When the one or more programs are executed by the one or more processors, the one or more processors implement the above-described method of storing multi-model data using a relational database management system.
[0040] (iii) A computer-readable storage medium storing computer instructions
[0041] When the computer instructions are executed by one or more processors, the one or more processors perform the steps in the method described above for storing multi-model data using a relational database management system.
[0042] The beneficial effects of this invention are as follows:
[0043] (1) This invention proposes for the first time a method of using genetic algorithms to optimize relational patterns and store multi-model data in a relational database management system, which can effectively speed up query speed and reduce storage space consumption.
[0044] (2) This invention proposes a method for storing multi-model data using a relational database management system, providing a unified method for managing multi-model data and avoiding the additional overhead caused by using multiple database management systems.
[0045] (3) Based on a set of preset query statements and genetic algorithms, the present invention automatically generates relational patterns for multi-model data, optimizes the storage for query time and storage space, improves query efficiency and reduces space consumption, which is superior to existing methods and has the advantages of being universal and simple. Attached Figure Description
[0046] Figure 1 This is a diagram illustrating relational data, semi-structured data (JSON data), and graph data (RDF data).
[0047] Figure 2 The results of applying this method to multi-model data are shown in the figure. The curves in the figure represent the change in query time as the number of genetic generations increases.
[0048] Figure 3 A flowchart for storing multi-model data using a relational database management system. Detailed Implementation
[0049] The present invention will be further described in detail below with reference to the accompanying drawings and specific embodiments.
[0050] This invention proposes a method for storing multi-model data using a relational database management system, comprising the following steps:
[0051] S1) Store multi-model data by attributes, thereby achieving the initial transformation of the relational database management system for storing multi-model data: Each attribute of the multi-model data is transformed into several attribute tables. Each attribute table is a two-column table; the first column is the object ID column, representing the object ID, and the second column is the attribute value column, representing an attribute. For example, Figure 1 The relational data in the data is decomposed into two lists: (scholar ID, name) and (scholar ID, school).
[0052] Step S1) includes the following sub-steps:
[0053] S1.1) In multi-model data, each data type consists of several attributes. Each attribute is listed separately and combined with its corresponding object number to generate a two-column table, which serves as an attribute table. One column stores the object number, and the other stores the attribute value. This achieves the initial transformation of a relational database management system for storing multi-model data. For example... Figure 1 As shown, multi-model data can include at least two of the following: relational data, semi-structured data (JSON data), and graph data (RDF).
[0054] S1.2) For relational data, the object number, i.e., the primary key of the table containing that attribute, if the primary key consists of multiple attributes, then each attribute of the relational data is stored as a multi-list. That is, the multi-list transformed from each attribute consists of all the attributes that make up the primary key and the attribute itself. For example... Figure 1 The scholar's ID number.
[0055] S1.3) For semi-structured data (JSON data), there are ordinary attributes, array attributes, and nested objects. If an attribute's value is an array, then each array element is stored as an attribute value, and elements within the same array have the same object ID. If an attribute is a nested object class attribute, then its object ID should be set as the primary key of its outer object, and its attribute name should be named "nested object name_attribute name". If it is an ordinary attribute, it can be handled the same as relational data. Figure 1 The paper number in the document.
[0056] S1.4) For graph data (RDF data), the object number stores the subject, the attribute name stores the predicate, and the attribute value stores the object. For example, Figure 1 In the data, there are multiple pairs of data, such as object number Li Ming, attribute name Wang Wei, and attribute value Teacher.
[0057] S2) Use genetic algorithm to find the best: Use genetic algorithm to randomly generate several relation patterns (i.e. several different strings of numbers), and run query statements on the relation patterns. Use the reciprocal of the query time as the fitness, and use genetic algorithm to find the relation pattern with the fastest query speed (i.e. the highest fitness).
[0058] Specifically, the process is as follows: initialization, generating an initial population, decoding to calculate fitness, selecting chromosomes to retain as unchanged and those to be exchanged or mutated, recording the best-performing chromosome sequence, performing exchange and mutation, generating a new population, and if the specified number of generations has not been reached, continuing from the decoding stage; otherwise, stopping the algorithm and generating the result. Step S2) specifically includes the following steps:
[0059] S2.1) Initialization: Generate the initial population. From the several attribute tables generated in step S1), some attribute tables can be joined into a new table. Each attribute table is assigned a numerical number (starting from 1 and numbered sequentially by integers), resulting in a string of consecutive non-zero digits as the numbering sequence. Next, several number strings are randomly generated, consisting of these assigned numbers and an equal number of "0"s. Each number string is a chromosome, and all chromosomes constitute the initial population.
[0060] Specifically, chromosomes are generated by randomly inserting several "0"s into the numbered sequence.
[0061] Each chromosome is a string of numbers containing all the assigned digits and a number of zeros. Within a chromosome, consecutive non-zero digits represent a new table formed by concatenating the attribute tables represented by these digits. The digit "0" is used to separate two tables; the table following "0" is not concatenated with the table preceding "0". Consecutive "0"s, such as "000", are treated as a single "0". For example, the consecutive digits 123 represent three tables joined together to form a new table, while 1230456 represents tables before and after the zero that do not belong to the same table.
[0062] During initialization, a relation schema is encoded into a string of numbers, meaning each chromosome corresponds to a unique relation schema. For example, Figure 1 In the schema, number 1 represents (scholar ID, name), and number 2 represents (scholar ID, school). Relation schema 102 has two tables: (scholar ID, name) and (scholar ID, school). Relation schema 120 has only one table: (scholar ID, name, school).
[0063] S2.2) Decoding and calculating fitness: Decoding and calculating the fitness value of each chromosome in the population.
[0064] The decoding method is as follows: read a chromosome, and connect the attribute tables together in numerical order. If they cannot be connected, the fitness is set to 0. If all the attribute tables represented by consecutive non-zero numbers can be connected, the corresponding schema is generated in the relational database management system.
[0065] Fitness is calculated as follows: A set of commonly used query statements is pre-written. For chromosomes that can generate relational schemas, the query statements are executed, and the execution time *t* is calculated. The fitness value is then calculated based on the execution time. The fitness function is:
[0066]
[0067] S2.3) Select the chromosome sets to be retained unchanged and the chromosome sets to be exchanged and mutated: Sort the chromosomes from high to low according to their fitness values. Select all chromosomes in the first half of the sorted chromosomes to form the chromosome sets to be retained unchanged. The chromosome sets to be retained unchanged do not undergo exchange or mutation. Select all chromosomes in the second half of the sorted chromosomes to form the chromosome sets to be exchanged and mutated. After the chromosomes in the chromosome sets to be exchanged and mutated are randomly exchanged with the chromosomes in the chromosome sets to be retained unchanged, the chromosomes in the chromosome sets to be exchanged and mutated will randomly mutate, generating a new population.
[0068] The selection method is as follows: all chromosomes in the population are sorted from high to low according to their fitness values. The chromosomes in the first half remain unchanged, while the chromosomes in the second half are exchanged with those in the first half, and random mutations occur.
[0069] The exchange method is as follows: one chromosome to be exchanged and mutated is exchanged with any chromosome that remains unchanged (the chromosome that remains unchanged is randomly selected). The exchange method involves randomly selecting a few digits from the chromosome that remains unchanged, and replacing the corresponding positions on the chromosome to be exchanged and mutated with the selected digits. To ensure that each attribute table has exactly one instance, after the exchange, the duplicate digits in the chromosome to be exchanged and mutated are replaced with the digits that are missing from that chromosome.
[0070] The mutation method is as follows: randomly select several pairs of numbers from a chromosome that needs to be exchanged and mutated (the number of pairs can be determined according to the probability, such as selecting one pair with a 50% probability, two pairs with a 30% probability, and three pairs with a 20% probability), and then exchange their positions (the exchange positions are randomly selected).
[0071] S2.4) Determine if the maximum number of iterations has been reached. If the specified number of iterations has not been reached, continue execution from S2.2) decoding. Otherwise, stop the algorithm and generate the result.
[0072] During the execution of the genetic algorithm, the chromosome with the fastest query speed (highest fitness value) is saved. If several chromosomes have similar query speeds, they are all saved and results are generated.
[0073] S3) Improve storage efficiency: Compare several relation schemas with the same (optimal) query speed and select the relation schema that occupies the least storage:
[0074] If there are several chromosomes with similar query speeds, calculate the storage space occupied by the relation schema corresponding to each chromosome. Select the chromosome with the smallest storage space as the final result.
[0075] Specific embodiments of the present invention are as follows:
[0076] Example
[0077] An implementation example of the invention was carried out on a machine equipped with an Intel Core i3-8100 CPU, an NVIDIA GTX 1050 Ti GPU, and 16GB of RAM. The initial population size was 4 chromosomes, and after 20 iterations, the following results were obtained: Figure 2 The experimental results are shown in the figure. The results show that the query speed is well optimized within a certain number of algebras, and the relation schema is generated effectively.
[0078] Those skilled in the art will understand that embodiments of the present invention can be provided as methods, systems, or computer program products. Therefore, the present invention can take the form of a completely hardware embodiment, a completely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, the present invention can take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.
[0079] This invention is described with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the invention. It will be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, special-purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, generate instructions for implementing the flowchart illustrations and / or block diagrams. Figure 1 One or more processes and / or boxes Figure 1 A device that provides the functions specified in one or more boxes.
[0080] These computer program instructions may also be stored in a computer-readable storage medium that can direct a computer or other programmable data processing device to function in a particular manner, such that the instructions stored in the computer-readable storage medium produce an article of manufacture including instruction means, which are implemented in a process Figure 1 One or more processes and / or boxes Figure 1 The function specified in one or more boxes.
[0081] These computer program instructions may also be loaded onto a computer or other programmable data processing equipment to cause a series of operational steps to be performed on the computer or other programmable equipment to produce a computer-implemented process, thereby providing instructions that execute on the computer or other programmable equipment for implementing the process. Figure 1 One or more processes and / or boxes Figure 1 The steps of the function specified in one or more boxes.
Claims
1. A method for storing multi-model data using a relational database management system, characterized in that: The method includes the following steps: Step S1) Preliminary transformation: Obtain information on all attributes in the multi-model data, and transform all attribute information into multiple attribute tables, which include an object number column and an attribute value column; The multi-model data is a combination of at least two of relational data, semi-structured data, and graph data; The generation process of the attribute table of the relational data is as follows: the information of each attribute of the relational data is stored as an attribute table, the attribute value column of the attribute table stores the value of the attribute, and the object number column of the attribute table stores the primary key of the table where the attribute is located. The generation process of the attribute table for the semi-structured data is as follows: If the attribute of the semi-structured data is an array, the information of each array element is stored as an attribute table, the attribute value column of the attribute table stores the value of the array element, and the object number column of the attribute table stores the number of the object to which the array belongs; if the attribute of the semi-structured data is a nested object, a nested object is stored as an attribute table, the attribute name of the attribute table stores "nested object name_attribute name", the object number column of the attribute table stores the primary key of the outer object of the nested object type attribute, and the attribute value column of the attribute table stores the value of the attribute; if the attribute of the semi-structured data is a regular attribute, an attribute is stored as an attribute table, the attribute value column of the attribute table stores the value of the attribute, and the object number column of the attribute table stores the primary key of the table to which the attribute belongs. The generation process of the attribute table of the graph data is as follows: each attribute of the graph data is stored as an attribute table, the attribute value column of the attribute table stores the object, the object number column of the attribute table stores the subject, and the attribute name of the attribute table stores the predicate. Step S2) Use genetic algorithm to optimize: Number all attribute tables obtained in step S1 in numerical order to obtain number sequence. After encoding the number sequence, an initial population consisting of several chromosomes is obtained. Combine the genetic algorithm to optimize the initial population to obtain at least one intermediate chromosome with the highest fitness value. The encoding process specifically involves: randomly generating several number strings composed of the number ID and several "0"s by randomly inserting several "0"s into the number ID, and using each number string as a chromosome to form an initial population composed of several chromosomes; the number of "0"s is equal to the number of attribute tables; the number "0" is used to separate two tables, and the table after "0" and the table before "0" are not connected; During the optimization process of the initial population using a genetic algorithm, the fitness value of each chromosome is calculated through the following steps: Decode the chromosome: Read the number string of a chromosome. The number "0" divides the number string into several sub-number strings. Connect the attribute tables corresponding to the consecutive non-zero numbers in each sub-number string and store them as a relation table. Calculate the fitness value: If the attribute tables corresponding to consecutive non-zero numbers in the sub-number string cannot be connected, the fitness value of the chromosome is 0; if the attribute tables corresponding to consecutive non-zero numbers in the sub-number string can be connected, the corresponding relation schema is generated in the relational database management system, and then the pre-set query statement is executed in the relational database management system to calculate the execution time t. The fitness value of the chromosome is obtained by combining the fitness function and the execution time t. The fitness function is: fitness = 1 / t; In the formula, fitness is the fitness function, and t is the execution time of any chromosome; Step S3) Optimize storage space: If the number of intermediate chromosomes is 1, then the intermediate chromosome is selected as the optimal chromosome; if the number of intermediate chromosomes in step S2 is greater than 1, then the storage space occupied by the relational schema corresponding to each chromosome is calculated, and the chromosome with the smallest storage space occupied is selected from the intermediate chromosomes as the optimal chromosome. The multi-model data is stored in the relational database management system according to the relational schema corresponding to the obtained optimal chromosome.
2. The method for storing multi-model data using a relational database management system according to claim 1, characterized in that: Step S2 includes the following steps: Step S2.1) Obtain the number sequence: Number all the attribute tables obtained in step S1 in numerical order, sort the numerical order numbers in sequence and connect them to obtain a string of numbers; Step S2.2) Obtain the initial population through encoding processing; Step S2.3) Perform optimization processing on the population; Specifically: Step S2.3.1) Decode the population and calculate the fitness value of each chromosome; Step S2.3.2) Based on the fitness values of all chromosomes, select half of the chromosomes with higher fitness from the population to form a chromosome set that remains unchanged, and select half of the chromosomes with lower fitness from the population to form a chromosome set that needs to be exchanged and mutated. Each chromosome in the chromosome set that needs to be exchanged and mutated is subjected to exchange and mutation treatments in sequence to obtain a new chromosome. All the new chromosomes obtained are combined with the chromosome sets that need to be exchanged and mutated to obtain a new population. Step S2.3.3) Determine whether the maximum number of iterations has been reached. If the maximum number of iterations has not been reached, return to step S2.3.1 and perform decoding processing on the new population and calculate the fitness value of each chromosome according to step S2.3.
1. If the maximum number of iterations has been reached, output one or more chromosomes with the highest fitness value as intermediate chromosomes.
3. The method for storing multi-model data using a relational database management system according to claim 2, characterized in that: In step S2.3.3, the exchange process specifically includes: First, read a chromosome that needs to be exchanged and mutated, and then randomly select one chromosome from the set of chromosomes that remain unchanged. Next, several numbers are randomly selected from the number string of the chromosomes that remain unchanged. The corresponding positions of the chromosomes to be exchanged and mutated are replaced with the selected numbers. It is determined whether there are duplicate / missing numbers in the chromosomes to be exchanged and mutated. If so, the duplicate and missing numbers are identified, and the missing numbers are used to replace the duplicate numbers. Chromosomes with high fitness are not exchanged.
4. The method for storing multi-model data using a relational database management system according to claim 2, characterized in that: In step S2.3.3, the mutation process specifically involves randomly selecting several pairs of numbers from a chromosome that needs to be exchanged and mutated, and then exchanging their positions.
5. A computer device, characterized in that: The computer device includes: One or more processors; Memory, used to store one or more programs; When the one or more programs are executed by the one or more processors, the one or more processors implement the method for storing multi-model data using a relational database management system as described in any one of claims 1 to 4.
6. A computer-readable storage medium storing computer instructions, characterized in that: When the computer instructions are executed by one or more processors, the one or more processors perform the steps of the method for storing multi-model data using a relational database management system as described in any one of claims 1 to 4.
