Database parameter tuning method and system therefor
The model enhances database parameter tuning by data augmentation and latent space optimization, addressing high-dimensional challenges and improving performance efficiency.
Patent Information
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-09-23
- Publication Date
- 2026-03-12
AI Technical Summary
Existing database parameter tuning methods face challenges with high-dimensional parameter spaces, varying results due to algorithmic selection, and reduced accuracy from workload similarity, leading to inefficient parameter selection.
A model that performs data augmentation on parameter sets, encodes them into a latent space, and tunes this space using Bayesian optimization to optimize database performance indicators, enabling comprehensive parameter tuning.
This approach reduces time consumption in data generation and allows for tuning all parameters, improving database performance by maximizing objective functions.
Smart Images

Figure KR2024014280_12032026_PF_FP_ABST
Abstract
Description
Database Parameter Tuning Methods and Systems
[0001] The present disclosure relates to a database parameter tuning method and a system thereof, and more specifically, to a method and a system thereof for tuning database parameters by augmenting database-related parameters and their performance indicators, encoding them into a latent space, and then tuning the latent space.
[0002] Recently, as the volume of data has become massive, interest in the performance of databases managing data is also increasing in order to efficiently process large volumes. One method to enhance such database performance is database parameter tuning. Database parameter tuning is the process of improving database performance by appropriately adjusting the parameter settings within the database used by the user. Traditionally, database parameter tuning was performed by Database Administrators (DBAs) by changing parameter values, but this approach had several limitations.
[0003] Recently, research on automated tuning utilizing machine learning has been actively conducted, and algorithms such as Bayesian Optimization (BO) and Reinforcement Learning (RL) have been used. However, there is a problem in that optimization is difficult because database parameters occupy a high-dimensional space. Furthermore, using algorithms that select high-level parameters leads to varying results each time the algorithm is applied; parameters that contribute to performance improvement may not be selected and could be excluded from tuning, while information regarding parameters other than the selected ones may be missed. Moreover, tuning methods based on workload similarity may suffer from reduced accuracy, and if incorrect mapping occurs, there is a possibility that inefficient parameters will be selected. Therefore, a method for optimizing database parameters that can overcome these limitations is required.
[0004] The technical problem we aim to solve through the embodiments of the present disclosure is to provide a model that can solve the time-consuming problem of generating data by adding a sample augmentation process.
[0005] Furthermore, the technical problem to be solved through the embodiments of the present disclosure is to provide a model that optimizes a latent space by compressing information about all parameters and workloads, deviating from the basic architecture of existing database parameter tuning models.
[0006] The problems that this disclosure aims to solve are not limited to those described above, and other unmentioned problems will be clearly understood by a person skilled in the art from the description below.
[0007] A database parameter tuning method according to an embodiment of the present disclosure may be performed by at least one computing device, and may include the steps of performing data augmentation on a first parameter set including a plurality of parameters related to a first database to generate a second parameter set, inputting the first parameter set into a first model to output a first performance set including a performance indicator of the first database corresponding to the first parameter set, inputting the second parameter set into the first model to output a second performance set including a performance indicator of the first database corresponding to the second parameter set, encoding an input data set generated based on the first and second parameter sets and the first and second performance sets into a latent space to generate a latent representation, inputting the latent representation into a second model different from the first model to tune the latent space such that an output objective function is maximized, and decoding the tuned latent space to generate an output data set including a plurality of tuned parameters related to the first database.
[0008] In one embodiment, the performance indicator of the first database may include at least one of a query throughput of the first database, a data processing delay time of the first database, a number of operations processed per second in the first database, a write amplification ratio of the first database, and a space amplification ratio of the first database.
[0009] In one embodiment, the step of generating the second parameter set may include the step of generating the second parameter set by applying Latin Hypercube Sampling (LHS) to the first parameter set.
[0010] In one embodiment, the input data set is generated by concatenating the first and second parameter sets and the first and second performance sets, and the dimension of the input data set may be the sum of the number of parameters included in the first and second parameter sets and the number of performance indicators included in the first and second performance sets.
[0011] In one embodiment, the objective function is a function related to the performance indicator of the first database, and the step of tuning the latent space may include the step of determining a latent representation that maximizes the objective function using Bayesian optimization on the latent representation.
[0012] In one embodiment, the method may further include the step of applying the plurality of tuned parameters to the first database.
[0013] According to another embodiment of the present disclosure, a data parameter tuning system includes a processor and a memory storing instructions, wherein the instructions, when executed by the processor, cause the processor to perform data augmentation on a first parameter set including a plurality of parameters related to a first database to generate a second parameter set, input the first parameter set into a first model and output a first performance set including a performance indicator of the first database corresponding to the first parameter set, input the second parameter set into the first model and output a second performance set including a performance indicator of the first database corresponding to the second parameter set, encode an input data set generated based on the first and second parameter sets and the first and second performance sets into a latent space to generate a latent representation, input the latent representation into a second model different from the first model and tune the latent space such that an output objective function is maximized, and tune the tuned latent space. It is possible to perform an operation of decoding to generate an output data set containing a plurality of tuned parameters related to the first database.
[0014] In one embodiment, the input data set is generated by concatenating the first and second parameter sets and the first and second performance sets, and the dimension of the input data set may be the sum of the number of parameters included in the first and second parameter sets and the number of performance indicators included in the first and second performance sets.
[0015] In one embodiment, the objective function is a function related to the performance indicator of the first database, and the operation of tuning the latent space may include the operation of determining a latent representation that maximizes the objective function using Bayesian optimization on the latent representation.
[0016] A computer-readable recording medium according to another embodiment of the present disclosure stores computer program code, and when the computer program code is executed by a processor, the processor performs the following operations: generating a second parameter set by performing data augmentation on a first parameter set comprising a plurality of parameters related to a first database; inputting the first parameter set into a first model and outputting a first performance set comprising performance indicators of the first database corresponding to the first parameter set; inputting the second parameter set into the first model and outputting a second performance set comprising performance indicators of the first database corresponding to the second parameter set; encoding an input data set generated based on the first and second parameter sets and the first and second performance sets into a latent space to generate a latent representation; inputting the latent representation into a second model different from the first model and tuning the latent space such that the output objective function is maximized; and decoding the tuned latent space to the extent that the first database related It is possible to perform an operation that generates an output data set containing multiple tuned parameters.
[0017] According to an embodiment of the present disclosure, data augmentation can be performed on a small amount of data set, thereby saving time required to increase the data set.
[0018] Additionally, according to an embodiment of the present disclosure, by encoding a high-dimensional data parameter set into a low-dimensional latent space and then performing parameter tuning, tuning of all parameters rather than some parameters may be possible.
[0019] Furthermore, according to an embodiment of the present disclosure, in the process of encoding into a latent space, not only database parameters but also performance indicators of the database corresponding to the parameters are used, thereby enabling database tuning for various workloads.
[0020] The effects according to the present disclosure are not limited to the effects described above, and other effects not mentioned will be clearly understood by those skilled in the art from the description below.
[0021] FIG. 1 is an exemplary block diagram showing the configuration of the entire system according to an embodiment of the present disclosure.
[0022] Figure 2 illustrates the operation of the prediction module of Figure 1 in an exemplary manner.
[0023] Figure 3 illustrates the operation of the augmentation module of Figure 1 in an exemplary manner.
[0024] Figure 4 illustrates the operation of the tuning module of Figure 1.
[0025] FIG. 5 is a flowchart exemplarily illustrating a data parameter tuning method according to an embodiment of the present disclosure.
[0026] FIG. 6 is a block diagram showing the hardware configuration of a computing device for performing a parameter tuning method according to an embodiment of the present disclosure.
[0027] Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the contents described in the attached drawings. However, the present invention is not limited or restricted by the exemplary embodiments. Unless otherwise defined, all terms (including technical and scientific terms) used in this specification shall be used with meanings that can be commonly understood by those of ordinary skill in the technical field to which this disclosure pertains. However, this may vary depending on the intentions of those skilled in the art, precedents, the emergence of new technologies, etc.
[0028] Additionally, terms defined in commonly used dictionaries should not be interpreted ideally or excessively unless explicitly and specifically defined otherwise. In certain cases, terms may be arbitrarily selected by the applicant, in which case their meanings will be described in detail in the relevant description. Therefore, the terms used in this disclosure should be defined based on their meaning and the overall content of this disclosure, rather than simply their names.
[0029] Throughout this specification, when a part is said to "include" a certain component, this does not mean that other components may be included, but rather that other components may be excluded, unless specifically stated otherwise. Furthermore, the singular forms used herein also include plural forms unless specifically stated otherwise. Furthermore, the expression "at least one of a, b, and / or c" used throughout this specification can encompass "a alone," "b alone," "c alone," "a and b," "a and c," "b and c," or "all of a, b, and c."
[0030] Meanwhile, terms such as "first and / or second" used in this specification may be used to describe various components, but are only used to distinguish one component from another and are not intended to be limited to the components referred to by those terms. For example, without departing from the scope of the present invention, the first component may be referred to as the second component, and the second component may also be referred to as the first component.
[0031] In addition, terms such as “unit”, “module”, etc. described in this specification mean a unit that processes at least one function or operation, which may be implemented by hardware or software, or a combination of hardware and software. In addition, embodiments of the present disclosure in this specification may be represented by functional block configurations and various processing steps. These functional blocks may be implemented by various numbers of hardware or / and software configurations that execute specific functions. For example, embodiments of the present disclosure may employ direct circuit configurations such as memory, processing, logic, look-up tables, etc. that may execute various functions under the control of one or more microprocessors or other control devices.
[0032] In embodiments according to the present disclosure, functions related to artificial intelligence may be implemented through a processor and memory. In this case, the processor may be any one of a general-purpose processor such as a CPU (Center Processing Unit), an AP (Application Processor), a DSP (Digital Signal Processor), a graphics-only processor such as a GPU (Graphics Processing Unit), a VPU (Vision Processing Unit), and an AI-only processor such as an NPU (Neural Network Processing Unit). The processor may process input data according to predefined operation rules or AI models stored in the memory. Alternatively, if the processor is an AI-only processor, the AI-only processor may be designed with a hardware structure specialized for processing a specific AI model. In some embodiments according to the present disclosure, functions related to artificial intelligence may be implemented through a plurality of processors.
[0033] In embodiments of the present disclosure, predefined operating rules or artificial intelligence models may be configured to perform machine learning. Here, "configured to perform machine learning" means that the predefined operating rules or artificial intelligence models are trained using a learning algorithm and a plurality of learning data sets to perform a desired characteristic (or purpose). This learning may be performed within the device itself implementing the artificial intelligence according to the present disclosure, or may be performed through a separate server and / or system.
[0034] Artificial intelligence models can be implemented as neural networks (or artificial neural networks) and operate based on statistical learning algorithms that mimic biological neurons in machine learning and cognitive science. A neural network can refer to a general model in which artificial neurons (nodes) form a network by combining synapses, and through learning, the strength of the synaptic connections changes, thereby achieving problem-solving capabilities. A neural network can be composed of multiple neural network layers. For example, a neural network can include an input layer, a hidden layer, and an output layer. Each of the multiple neural network layers can include at least one node and at least one weight, and can perform neural network operations through operations between the weights and the computational results of previous layers. At least one weight of the multiple neural network layers can be optimized based on the learning results of the artificial intelligence model. For example, at least one weight can be updated during the learning process to reduce or minimize the loss or cost values obtained from the artificial intelligence model. Neural networks can infer a result to be predicted from an arbitrary input.
[0035] The learning methods of artificial intelligence models can be categorized into supervised learning, where input and output data are provided as training data, and the correct answer (output data) corresponding to the problem (input data) is determined, unsupervised learning, where only input data is provided without output data, and the correct answer (output data) corresponding to the problem (input data) is not determined, and reinforcement learning, where a reward is given whenever an action is taken in the current state, and learning progresses in the direction of maximizing this reward. Alternatively, they can be categorized according to the architecture, which is the structure of the learning model.
[0036] In an embodiment of the present disclosure, the artificial intelligence model is a CNN (Convolution Neural Network) such as GoogleNet, AlexNet, VGG Network, etc., R-CNN (Region with Convolution Neural Network), RPN (Region Proposal Network), RNN (Recurrent Neural Network), S-DNN (Stacking-based deep Neural Network), S-SDNN (State-Space Dynamic Neural Network), Deconvolution Network, DBN (Deep Belief Network), RBM (Restrcted Boltzman Machine), Fully Convolutional Network, LSTM (Long Short-Term Memory) Network, Classification Network, Generative Modeling, eXplainable AI, Continual AI, Representation Learning, AI for Material Design, BERT for natural language processing, SP-BERT, MRC / QA, Text Analysis, Dialog System, GPT-3, GPT-4, Visual Analytics for vision processing, Visual Understanding, Video Synthesis, ResNet for data intelligence, Anomaly Detection, Prediction, Time-Series Forecasting, Optimization, At least one of various artificial intelligence structures and algorithms, such as Recommendation, Data Creation, etc., may be used, and the above-described examples are merely listing examples of artificial intelligence structures and algorithms used according to embodiments of the present disclosure, and do not limit the artificial intelligence structures and algorithms used according to embodiments of the present disclosure.
[0037] Hereinafter, various embodiments of the present disclosure will be described in detail with reference to the accompanying drawings. In describing the embodiments, technical details that are well known in the art to which the present invention pertains and are not directly related to the present invention will be omitted. This is to ensure that the essence of the present invention is conveyed more clearly without obscuring it by omitting unnecessary explanations. For the same reason, some components in the accompanying drawings may be exaggerated, omitted, or schematically depicted. Furthermore, the size of each component does not entirely reflect its actual size. Throughout this specification, the same reference numerals may refer to the same or corresponding components.
[0038] In this specification, database parameter tuning refers to a method of maximizing database performance by optimizing database parameters. Additionally, while performance indicators in this specification refer to performance indicators of a database management system (DBMS), the performance indicators of a database management system and the performance indicators of a database may be used interchangeably throughout this specification.
[0039] FIG. 1 is an exemplary block diagram showing the configuration of an overall system according to an embodiment of the present disclosure. Referring to FIG. 1, the overall system may include a database parameter tuning system (10), a database management system (DBMS) (20), and a database (30). The database parameter tuning system (10) may include a prediction module (11), an augmentation module (13), and a tuning module (14).
[0040] Meanwhile, the components (modules) of the database parameter tuning system (10) illustrated in FIG. 1 represent functionally distinct functional elements, and it should be noted that at least one component (module) may be implemented in an integrated manner in an actual physical environment. That is, the components (modules) of the database parameter tuning system (10) may be implemented in a single physical server, or may be implemented by dividing them across multiple servers.
[0041] The database parameter tuning system (10) can output a performance indicator when the database (30) has a plurality of parameters based on a plurality of parameters related to the database (30) through a prediction module (11). The prediction module (11) can include a first model (12), which is an artificial intelligence model for receiving a plurality of parameters and outputting a performance indicator. For example, the first model (12) can be a model implemented using TabNet. The operation of the prediction module (11) will be described in detail below with reference to FIG. 2.
[0042] FIG. 2 illustrates the operation of the prediction module (11) of FIG. 1 as an example. Referring to FIG. 2, a plurality of parameter sets conf0, conf1, conf2, , conf k is shown. Each parameter set may include multiple parameters related to the database (30). For example, the multiple parameters related to the database (30) may include the block size of the database, the buffer pool size, the log file size, the minimum token size, the cache size, the compression ratio, the waiting delay, etc. Each parameter set (conf0, conf1, conf2, 쪋, conf k ) can include different values for multiple parameters of the same type.
[0043] Multiple parameter sets can be input into the first model (12), and multiple performance sets corresponding to the multiple parameter sets can be output. For example, a performance set corresponding to a parameter set (conf0) may correspond to a performance indicator of the database (30) when the database (30) has multiple parameters having values corresponding to the parameter set (conf0). For example, the performance indicator of the database (30) may include at least one of query throughput, data processing latency, work rate, write amplification factor (WAF), and space amplification factor (SAF). Meanwhile, the performance indicator of the database (30) may vary depending on the type of database management system (20) (e.g., whether it is MySQL, RocksDB, etc.).
[0044] Returning to FIG. 1, the database parameter tuning system (10) can augment multiple parameter sets through the augmentation module (13). Then, multiple parameters included in the augmented parameter sets are input back into the first model (12) of the prediction module (11) to output performance indicators corresponding to the augmented multiple parameters. The operation of the augmentation module (13) will be described in detail below with reference to FIG. 3.
[0045] FIG. 3 illustrates the operation of the augmentation module (13) of FIG. 1. Referring to FIG. 3, the augmentation module (13) comprises a plurality of parameter sets (conf0, conf1, conf2, , conf k Multiple augmented parameter sets can be generated by performing data augmentation on ). More specifically, as a result of performing data augmentation, each parameter set (conf0, conf1, conf2, 쪋, conf kn parameter sets can be generated for each ). For example, parameter set (conf k The augmented parameter set corresponding to ) is AUG_conf k+1 , AUG_conf k+2 , AUG_conf k+3 , 쪋, AUG_conf k+n . These can each be input into the first model (12), and a performance set corresponding to each augmented parameter set will be output. The performance set corresponding to the augmented parameter set will correspond to the augmented data set generated with reference to FIG. 2.
[0046] For example, data augmentation is for each parameter set (conf0, conf1, conf2, 쪋, conf k ) can be performed by applying Latin Hypercube Sampling (LHS). By applying LHS, each parameter set (conf0, conf1, conf2, 쪋, conf k Uniform sampling may be performed for all possible values of ). However, the present disclosure is not limited thereto, and data augmentation may be performed through methods other than LHS. By performing data augmentation in this way, the time required to generate multiple data sets for database parameter tuning may be reduced.
[0047] Returning to FIG. 1 again, the data parameter tuning system (10) can encode the parameter set, the performance set, the augmented parameter set, and the augmented performance set of FIG. 3 into a latent space through the tuning module (14), and can tune a plurality of parameters to maximize an objective function related to a performance index of the database (30) on the latent space. Then, the data parameter tuning system (10) can decode the tuning result and apply the output tuned parameter set to the database (30) through the database management system (20). The tuning module (14) can include an autoencoder (15) for encoding into the latent space and decoding from the latent space, and a second model (16), which is an artificial intelligence model for inputting a latent representation corresponding to the latent space and outputting an objective function. Hereinafter, the operation of the tuning module (14) will be described in detail with reference to FIG. 4.
[0048] FIG. 4 illustrates the operation of the tuning module (14) of FIG. 1. Referring to FIG. 4, the input data set is a plurality of parameter sets (conf0, conf1, conf2, , conf k ), a performance set output by inputting a plurality of parameter sets into the first model (12), an augmented plurality of parameter sets (e.g., AUG_conf k+1 , AUG_conf k+2 , AUG_conf k+3 , 쪋, AUG_conf k+n ), can be generated by inputting a plurality of augmented parameter sets into the first model (12) and concatenating the output performance sets. For example, the dimension of the input data set can correspond to the sum of the number of parameters included in each parameter set (or each augmented parameter set) and the number of performance indicators included in the performance set.
[0049] The input data set can be encoded into a latent space through the encoder of the autoencoder (15), and a corresponding latent representation can be generated. For example, the dimension of the latent representation is smaller than the dimension of the input data set and can have a value between 0 and 1. The latent representation generated through the encoder can be tuned using Bayesian optimization (BO). Tuning of the latent representation can be performed by maximizing the objective function f(x).
[0050] Here, the objective function f(x) is a function related to the performance indicator of the database (30) (i.e., a function that includes the performance indicator as a variable) and can be output by inputting a latent representation into the second model (16). For example, the objective function f(x) may be a function that includes at least one of query throughput, data processing latency, number of operations processed per second, write amplification ratio, and space amplification ratio as a variable, and the values of these variables may vary depending on the latent representation, and the objective function representing the performance indicator may also be tuned depending on the tuning of the latent representation. That is, maximizing the objective function f(x) may mean that a combination of parameters that maximizes the performance indicator has been determined. Here, the second model (16) may be implemented using TabNet in the same way as the first model (12), but may be a different model trained to have different weights.
[0051] The autoencoder (15) can use Bayesian optimization on latent representations to determine a latent representation that maximizes the objective function f(x). In other words, the latent representation determined to maximize the objective function may correspond to a tuned latent representation (tuned latent space). The tuned latent representation (tuned latent space) can be decoded by a decoder and generated as an output data set having the same dimension as the input data set. That is, the output data set may include a plurality of tuned parameters associated with the database (30) and performance indicators when the database (30) has the tuned parameters.
[0052] The database parameter tuning system (10) may be implemented with at least one computing device. For example, all functions of the database parameter tuning system (10) may be implemented with a single computing device, or a first function of the database parameter tuning system (10) may be implemented with a first computing device, and a second function may be implemented with a second computing device. Alternatively, specific functions of the database parameter tuning system (10) may be implemented with multiple computing devices. For example, the computing devices may include all types of devices equipped with computing means and communication means, such as smartphones, desktops, laptops, and tablets. Furthermore, the database parameter tuning system (10) may be configured using one or more physical servers included in a server farm based on cloud technologies such as virtual machines. An embodiment in which the database parameter tuning system (10) is implemented with a computing device is described with reference to FIG. 6.
[0053] A database management system (DBMS) (20) is a set of software tools that enables multiple users to access data within a database (30), and can receive requests from users and output corresponding responses from the database (30), and can manage parameters of the database (30). For example, the database management system (20) may include MySQL, Oracle, MS-SQL, PostgreSQL, MongoDB, Redis, SQLite, RocksDB, etc., but the present disclosure is not limited thereto. Depending on the type of database management system (20), the types of performance indicators may vary slightly. As described above, in this specification, the performance indicators of the database management system (20) and the performance indicators of the database (30) may be used interchangeably.
[0054] The components illustrated in Figure 1 can communicate over a network. For example, the network can be implemented as any type of wired or wireless network, such as a Local Area Network (LAN), a Wide Area Network (WAN), a mobile radio communication network, or Wibro (Wireless Broadband Internet).
[0055] FIG. 5 is a flowchart illustrating an exemplary data parameter tuning method according to an embodiment of the present disclosure. For reference, FIG. 5 illustrates the steps / operations of a database parameter tuning method performed in the database parameter tuning system (10) of FIG. 1. Accordingly, in the following descriptions, if the subject of a specific step / operation is omitted, it can be understood as being performed in the database parameter tuning system (10).
[0056] In step S110, data augmentation may be performed on a first parameter set containing multiple parameters related to a first database, thereby generating a second parameter set. For example, Latin hypercube sampling (LHS) may be used as a data augmentation method.
[0057] In step S120, a first parameter set may be input to a first model, and a first performance set including performance indicators of a first database corresponding to the first parameter set may be output. Then, in step S130, a second parameter set may be input to the first model, and a second performance set including performance indicators of a first database corresponding to the second parameter set may be output. That is, the second performance set may correspond to a data set augmented with the first performance set.
[0058] In step S140, an input data set generated based on the first and second parameter sets and the first and second performance sets may be encoded into a latent space to generate a latent representation. Here, the input data set may be a data set generated by concatenating the first and second parameter sets and the first and second performance sets. The latent representation may be input into a second model different from the first model, and an objective function may be output. Here, the objective function may be a function related to the performance indicators of the first database (i.e., a function with performance indicators as variables).
[0059] In step S150, the latent space can be tuned so that the output objective function is maximized. For example, tuning of the latent space can be performed by determining a latent representation that maximizes the objective function using Bayesian optimization (BO) on the latent representation. In step S160, the tuned latent space can be decoded, and an output data set containing a plurality of tuned parameters related to the first database can be generated. Finally, in step S170, the plurality of tuned parameters included in the output data set can be applied to the first database through a database management system. By doing so, the performance indicators of the first database can also be optimized.
[0060] FIG. 6 is a block diagram showing the hardware configuration of a computing device (500) for performing a parameter tuning method according to an embodiment of the present disclosure.
[0061] A computing device (500) may include one or more processors (510), a bus (530), a communication interface (540), a memory (520) for loading a computer program executed by the processor (510), and a storage (550) for storing a computer program (560). However, only components related to the embodiment of the present disclosure are illustrated in FIG. 6. Therefore, a person skilled in the art to which the present disclosure belongs will understand that other general-purpose components may be included in addition to the components illustrated in FIG. 6. That is, the computing device (500) may include various additional components in addition to the components illustrated in FIG. 6. Furthermore, depending on the case, the computing device (500) may be configured in a form in which some of the components illustrated in FIG. 6 are omitted. Each component of the computing device (500) will be described below.
[0062] The processor (510) can control the overall operation of each component of the computing device (500). The processor (510) can be configured to include at least one of a Central Processing Unit (CPU), a Micro Processor Unit (MPU), a Micro Controller Unit (MCU), a Graphics Processing Unit (GPU), or any other type of processor well known in the art of the present disclosure. In addition, the processor (510) can perform operations for at least one application or program for executing operations / methods according to embodiments of the present disclosure. The computing device (500) can include one or more processors.
[0063] Next, the memory (520) can store various data, commands, and / or information. The memory (520) can load a computer program (560) from the storage (550) to execute operations / methods according to embodiments of the present disclosure. The memory (520) may be implemented as a volatile memory such as RAM, but the present disclosure is not limited thereto.
[0064] Next, the bus (530) can provide communication functions between components of the computing device (500). The bus (530) can be implemented as various types of buses, such as an address bus, a data bus, and a control bus.
[0065] Next, the communication interface (540) can support wired and wireless Internet communication of the computing device (500). Furthermore, the communication interface (540) can also support various communication methods other than Internet communication. To this end, the communication interface (540) can be configured to include a communication module well known in the technical field of the present disclosure.
[0066] Next, the storage (550) may store one or more computer programs (560) non-temporarily. The storage (550) may be configured to include non-volatile memory such as ROM (Read Only Memory), EPROM (Erasable Programmable ROM), EEPROM (Electrically Erasable Programmable ROM), flash memory, a hard disk, a removable disk, or any form of computer-readable recording medium well known in the art to which this disclosure belongs.
[0067] Next, the computer program (560) may include one or more instructions that cause the processor (510) to perform an operation / method according to various embodiments of the present disclosure when loaded into memory (520). That is, the processor (510) may perform an operation / method according to various embodiments of the present disclosure by executing one or more loaded instructions.
[0068] For example, the computer program (560) may be configured to perform the following operations: performing data augmentation on a first parameter set including a plurality of parameters associated with a first database to generate a second parameter set; inputting the first parameter set into a first model to output a first performance set including performance indicators of the first database corresponding to the first parameter set; inputting the second parameter set into the first model to output a second performance set including performance indicators of the first database corresponding to the second parameter set; encoding an input data set generated based on the first and second parameter sets and the first and second performance sets into a latent space to generate a latent representation; inputting the latent representation into the first model and the second model to tune the latent space such that an output objective function is maximized; and decoding the tuned latent space to generate an output data set including a plurality of tuned parameters associated with the first database.
[0069] Meanwhile, the embodiments disclosed in this specification may be implemented in the form of a recording medium that stores computer-executable instructions. The instructions may be stored in the form of program code, and when executed by a processor, may generate program modules to perform the operations of the disclosed embodiments. The recording medium may be implemented as a computer-readable recording medium. The computer-readable recording medium may include any type of recording medium that stores instructions that can be deciphered by a computer. Examples thereof include ROM, RAM, magnetic tape, magnetic disk, flash memory, and optical data storage devices.
[0070] According to embodiments of the present disclosure, data augmentation for database parameters can reduce the time required to create a data set for parameter tuning and AI model training. Furthermore, by compressing information on all database parameters into a low-dimensional latent space, tuning can be performed on all parameters, rather than just a subset of the database parameters.
[0071] The above-described embodiments are specific examples for implementing the present disclosure. The present disclosure will encompass not only the above-described embodiments, but also embodiments that can be simply designed or easily modified. Furthermore, the present disclosure will encompass techniques that can be easily modified and implemented using the above-described embodiments. Therefore, the scope of the present disclosure should not be limited to the above-described embodiments, but should be defined not only by the claims set forth below, but also by equivalents of the claims of the present disclosure.
[0072] Meanwhile, this disclosure is derived from research conducted as part of the Development of In-Memory Distributed DBMS Based on High-Performance Flash Memory Storage for IoT Environment (Project Identification Number: 2710008456, Project Number: 2017-0-00477-007, Project Management (Specialized) Organization Name: National IT Industry Planning and Evaluation Institute, Research Project Name: SW Computing Industry Core Technology Development, Project Performing Organization Name: Yonsei University Industry-Academic Cooperation Foundation, Research Period: 2024.01.01~2024.12.31) of the Ministry of Science and ICT of Korea (SW Star Lab). There is no property interest in Korea Information, the project provider, in any aspect of this disclosure.
Claims
1. A method for tuning database parameters performed by at least one computing device, A step of performing data augmentation on a first parameter set including a plurality of parameters related to a first database to generate a second parameter set; A step of inputting the first parameter set into the first model and outputting a first performance set including performance indicators of the first database corresponding to the first parameter set; A step of inputting the second parameter set into the first model and outputting a second performance set including performance indicators of the first database corresponding to the second parameter set; A step of generating a latent representation by encoding the input data set generated based on the first and second parameter sets and the first and second performance sets into a latent space; A step of tuning the latent space so that the output objective function is maximized by inputting the latent representation into a second model different from the first model; and A step of decoding the tuned latent space to generate an output data set including a plurality of tuned parameters related to the first database, How to tune database parameters.
2. In paragraph 1, The performance indicator of the first database includes at least one of a query throughput of the first database, a data processing delay time of the first database, a number of operations processed per second in the first database, a write amplification ratio of the first database, and a space amplification ratio of the first database. How to tune database parameters.
3. In paragraph 1, The step of generating the second parameter set is: A step of generating the second parameter set by applying Latin Hypercube Sampling (LHS) to the first parameter set, How to tune database parameters.
4. In paragraph 1, The above input data set is generated by concatenating the first and second parameter sets and the first and second performance sets, The dimension of the input data set is characterized in that the number of parameters included in the first and second parameter sets and the number of performance indicators included in the first and second performance sets are summed. How to tune database parameters.
5. In paragraph 1, The above objective function is a function related to the performance indicator of the first database, The step of tuning the above potential space is: A step of determining a latent representation that maximizes the objective function using Bayesian optimization for the latent representation, How to tune database parameters.
6. In paragraph 1, Further comprising a step of applying the plurality of tuned parameters to the first database, How to tune database parameters.
7. Processor; and Contains memory that stores instructions, The above instructions, when executed by the processor, cause the processor to: An operation of generating a second parameter set by performing data augmentation on a first parameter set including a plurality of parameters related to a first database; An operation of inputting the first parameter set into the first model and outputting a first performance set including performance indicators of the first database corresponding to the first parameter set; An operation of inputting the second parameter set into the first model and outputting a second performance set including performance indicators of the first database corresponding to the second parameter set; An operation of generating a latent representation by encoding an input data set generated based on the first and second parameter sets and the first and second performance sets into a latent space; An operation of tuning the latent space so that the output objective function is maximized by inputting the latent representation into a second model different from the first model; and An operation of decoding the tuned latent space to generate an output data set including a plurality of tuned parameters related to the first database, Database parameter tuning system.
8. In paragraph 7, The above input data set is generated by concatenating the first and second parameter sets and the first and second performance sets, The dimension of the input data set is characterized in that the number of parameters included in the first and second parameter sets and the number of performance indicators included in the first and second performance sets are summed. Database parameter tuning system.
9. In paragraph 7, The above objective function is a function related to the performance indicator of the first database, The operation of tuning the above potential space is: Including an action of determining a latent representation that maximizes the objective function using Bayesian optimization for the latent representation. Database parameter tuning system.
10. In a computer-readable recording medium storing a computer program code, when the computer program code is executed by a processor, the processor: An operation of generating a second parameter set by performing data augmentation on a first parameter set including a plurality of parameters related to a first database; An operation of inputting the first parameter set into the first model and outputting a first performance set including performance indicators of the first database corresponding to the first parameter set; An operation of inputting the second parameter set into the first model and outputting a second performance set including performance indicators of the first database corresponding to the second parameter set; An operation of generating a latent representation by encoding an input data set generated based on the first and second parameter sets and the first and second performance sets into a latent space; An operation of tuning the latent space so that the output objective function is maximized by inputting the latent representation into a second model different from the first model; and An operation of decoding the tuned latent space to generate an output data set including a plurality of tuned parameters related to the first database, A computer-readable recording medium.
Citation Information
Patent Citations
Supervised VAE for optimizing the value function and generating the desired data
JP2024502177A
Ammonia Cooling System For Ship
KR1020250036634A
Method and apparatus for automated machine learning
KR102271736B1
User-selectable meta verse space combination design system incorporating the concept of unit space
KR102523515B1
KR20220102551A