Migration library for Clickhouse
Project description
Clickhouse Migrator
Clickhouse is known for its scale to store and fetch large datasets.
Development and Maintenance of large-scale db systems many times requires constant changes to the actual DB system. Holding off the scripts to migrate these will be painful.
We found there is nothing existing earlier and developed one inspired by, Flyway, Alembic
This is a python library, which you can execute as a pre-hook using sys python. Or as a migration framework before deployment/server-startup in your application as required.
Installation
You can install from pypi using pip install clickhouse-migrator
.
These latest available working version is 1.0.0
Usage
migrate(db_name, migrations_home, db_host, db_user, db_password, create_db_if_no_exists)
Parameter | Description | Default |
---|---|---|
db_name | Clickhouse database name | None |
migrations_home | Path to list of migration files | <project_root> |
db_host | Clickhouse database hostname | localhost |
db_password | ***** | **** |
create_db_if_no_exists | If the db_name is not present, enabling this will create the db |
True |
Folder and Migration file patterns
The filenames are pretty similar to how flyway
keeps it.
Your first version filename should be prefixed with V1__
(double underscore)
These migrations are executed one by one, failures in between will stop and not further version files will be executed.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distribution
Hashes for clickhouse_migrator-1.0.1-py3.6.egg
Algorithm | Hash digest | |
---|---|---|
SHA256 | d70ddb683e2de8c22334d28cf2fb97df531389a41f4abc50fde48145a6ac6fe2 |
|
MD5 | 6e16983eab627026f32b277891dfb667 |
|
BLAKE2b-256 | 944be48677d83f9a54ee3b39853ba378d4e6f755f9df6b11d1a7d102e08b916e |