-
Notifications
You must be signed in to change notification settings - Fork 1
6. Eager Migration
In eager migration, the system immediately physically moves all data stored under the old schema into tables in the new schema prior to becoming available to client requests over the new schema.
The implementation of eager migration is based on PostgreSQL with zero changes. This post will show you how to set up the raw PostgreSQL and how to run the TPC-C benchmark on top of that.
Using the following as a guide, we will walk you through the setup of BullFrog. To make it smoother, we record terminal sessions and share them on the web.
TODO
This tutorial assumes you have a current version of Docker installed on your machine. If you do not have Docker installed, choose your preferred operating system below to download Docker:
After you installed Docker, you can issue a command to pull our docker image and start a container:
# Pulls Docker image and run it on your local machine.
$ docker run --rm -it -d --name bullfrog gangliao/bullfrog:eager_migration bash
# Enters the container.
$ docker exec -u postgres -it bullfrog bash
# Output:
#
# postgres@968c58c4b04d:/$-
Deploy a DB instance:
# Deploys the postgres backend $ cd /home/postgres/BullFrog && ./deploy.sh
-
Run a TPC-C Benchmark (without migration) where data is already loaded into the database.
-
You may want to shut down the database for any reason:
$ cd /home/postgres/BullFrog && ./shutdown.sh # Output: # ... # pg_ctl: no server running
-
You may stop a running container when you finish the tutorial:
$ docker stop bullfrog