Skip to content

An Efficient Transfer Learning Based Configuration Adviser for Database Tuning

License

Notifications You must be signed in to change notification settings

Blairruc-pku/OpAdviser

 
 

Repository files navigation

OpAdviser: An Efficient Transfer Learning Based Configuration Adviser for Database Tuning

OpAdviser is a customized and efficient tuning system that addresses the search space construction and the search optimizer selection problems for database configuration tuning.

Installation

Installation Requirements:

  • Python >= 3.6
  git clone [email protected]:Blairruc-pku/OpAdviser.git && cd OpAdviser
  pip install -r requirements.txt
  pip install .

Preparation

Workload Preparation

Please reffer to the details instuction for preparing the workloads.

Database Connection Setup

To provide the database connection information, the users need to edit the config_auto.ini.

db = mysql
host = 127.0.0.1
port = 3306
user = root
passwd =

Quick Start

  1. Specify the tuning objective in config_auto.ini. Here are some examples.

    Performance tuning, e.g., maximizing throughputs.

    task_id = op1
    performance_metric = ['tps']

    Setup automatic space construction and optimizer recommendation

    ##path of data repository
    data_repo = ../repo
    ##Turn on space construction
    space_transfer = True
    only_knob = False
    only_range = False
    ##Turn on optimizer recommendation
    auto_optimizer = True
    auto_optimizer_type = learned
  2. Conduct Tuning.

    cd scripts
    python optimize.py  --config=config_auto.ini

Contact

If you have any technical questions, please submit new issues.

If you have any other questions, please contact Xinyi Zhang[[email protected]].

About

An Efficient Transfer Learning Based Configuration Adviser for Database Tuning

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Languages

  • Python 99.7%
  • Shell 0.3%