BigQuery backup scripts
Project description
bqup
bqup is a backup tool for BigQuery projects. It can export a BigQuery project's structure and source code while mimicking the hierarchy of datasets and tables.
For the full story of why we made bqup, check out our blog post!
Installation
bqup can be installed using pip
.
pip install bqup
Alternatively, you can also clone the repository then run install
.
git clone https://github.com/thinkingmachines/bqup.git
cd bqup
python3 setup.py install
Usage
Command line options
You can list down the options by running bqup --help
.
bqup [-p PROJECT_ID] [-d TARGET_DIR] [-fvxr] [-e REGEX]
Options:
-p PROJECT_ID, --project PROJECT_ID Project ID to load. If unspecified,
defaults to current project in
configuration.
-d TARGET_DIR, --dir TARGET_DIR The target directory where the project
will be written. Defaults to current
timestamp.
-f --force Overwrite target directory if it exists.
-v --verbose Print a summary of the loaded project.
-x --schema Export table schemata as json.
-r --routine Include routines in export.
-e REGEX, --regex REGEX Regex pattern to filter datasets to be exported.
Development
-
Set up
gcloud
to run with your personal account (aka run with scissors). -
Set up application-default.
gcloud auth application-default login
-
Install
wheel
.pip3 install wheel
-
Install bqup.
pip3 install -e .
Alternatively, you can also install it using:
python3 setup.py develop
-
Run bqup (see Usage).
Setting up regular backups
Check out bqup-starter to set up regular bqups using GitHub's workflows!
Distribution
Run make test
to try a test upload.
Run make dist
to upload a distribution.
Both of these will call make build
, which rebuilds the package locally.
Contributing
If you wish to contribute, check out our contributing guide!
A list is maintained for all external contributors who have submitted pull requests that were subsequently approved. Users are allowed and encouraged to fork the project and submit pull requests and issues. We only request that contributions adhere to these guidelines:
The official maintainers in charge of responding to issues and merging pull requests are:
Contributors
Thanks to all these wonderful people who've helped out with bqup:
Jess | Ram | Pepe Berba | Tim Pron | Enzo | Ardie |
Disclaimers
bqup is maintained on a best effort basis:
- No amount of official time is currently being dedicated to the regular maintenance of this project.
- Thinking Machines does not make any guarantees about the quality of the software.
Thinking Machines reserves the rights to:
- refuse to resolve issues
- close issues without resolution
- request changes to pull requests
- reject pull requests outright
Project details
Release history Release notifications | RSS feed
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
File details
Details for the file bqup-0.0.14-py3-none-any.whl
.
File metadata
- Download URL: bqup-0.0.14-py3-none-any.whl
- Upload date:
- Size: 10.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.4.2 requests/2.22.0 setuptools/45.2.0 requests-toolbelt/0.8.0 tqdm/4.30.0 CPython/3.8.10
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5636e96c91cb57e720ca7d23ce601bd8bbe7c0db7defe2aeef086c44e332bb95 |
|
MD5 | 8f4403c676d72244a2d18908985b330e |
|
BLAKE2b-256 | f157c7ec40c36e00eb9b7796a0fb30a8de3ad496c3fd2e16a4ab7f409a374651 |