DBJoules, a tool designed to measure the energy consumption of database queries across four databases, i.e., MySQL, PostgreSQL, MongoDB, and Couchbase. This tool measures the energy consumption of queries by gathering the information about CPU and RAM usage, by utilizing psutil package.
STEP1: Clone or download this github repository:
git clone https://github.com/rishalab/DBJoules.git
STEP2: Navigate to the directory
cd DBJoules
STEP3: Run "setup.py" file to install necessary dependencies
python setup.py
STEP4: Run "stop_background_processes.py" file to stop all the currently running background processes.
python stop_background_processes.py
STEP5: Start the tool
python main_app.py
Comparing energy consumption of query execution among MySQL, PostgreSQL, MongoDB and Couchbase databases.
DBJoules uses psutil package to measure energy consumption. The tool is developed to compare energy consumed by CPU and RAM for query execuation. The internal workflow is described in the below figure.
Following are the results for executing select query in all 4 databases using Netflix Userbase dataset
Hemasri Sai Lella, Kurra Manasa, Rajrupa chattaraj, Sridhar Chimalakonda