Skip to content
This repository has been archived by the owner on Mar 20, 2021. It is now read-only.

Getting Started

Justin Wang edited this page Aug 16, 2018 · 8 revisions

This section introduces how to create a test website initialized with fake data. We are writing the documentation on how to use OtterTune to tune the real world database in another development section.

Before initializing OtterTune's development website, make sure that you have followed the Quick Setup with Vagrant instructions and are connected to the running Vagrant machine over SSH.

Initialize the website & load the database

First, verify that the ottertune directory exists in the VM user's home directory, and then navigate to the website's root directory. Next, to initialize the OtterTune website and load the test_website fixture, run:

WARNING: This will delete everything from the website's database and reload it with fake data for testing/development.

cd /ottertune/server/website
fab create_test_website

This will create a test user with two sessions. One of the sessions already has data loaded into it.

Start the server and load the URL in your browser

Start the development server:

fab start_debug_server

Now open up a browser on your host machine and navigate to http://localhost:8000. You should see OtterTune's login page being served from the VM that was setup by Vagrant. Sign in as the test user using the following credentials:

  • username: user
  • password: abcd123

Explore the website structure

Click on the link to the user's test_project. We see that the user has two sessions:

  1. A basic session for uploading and visualizing the values of the DBMS's internal runtime metrics for different knob configurations. Explore the user's basic_session session to see the graphs, tables, and other visualizations that OtterTune provides for comparing the performance of different workloads and/or knob configurations.

  2. A tuning session where OtterTune recommends new DBMS knob configurations that optimize a target objective specified by the user (note that in this session, it's set to be the throughput). OtterTune chooses the next DBMS knob configuration based on the knowledge it has gathered so far about the user's workload as well as the knowledge that it has gained from tuning DBMSs for other workloads in the past.