Skip to main content

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.

How bqup works

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

  1. Set up gcloud to run with your personal account (aka run with scissors).

  2. Set up application-default.

    gcloud auth application-default login
    
  3. Install wheel.

    pip3 install wheel
    
  4. Install bqup.

    pip3 install -e .
    

    Alternatively, you can also install it using:

    python3 setup.py develop
    
  5. 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
Jess
Ram
Ram
Pepe Berba
Pepe Berba
Tim Pron
Tim Pron
Enzo
Enzo

Ardie
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

Metadata

Release files for bqup 0.0.14

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distribution (wheel)

Table of built distributions (wheels) for bqup 0.0.14
File Interpreter ABI Platform
bqup-0.0.14-py3-none-any.whl Python 3 none any Details

Release files / bqup-0.0.14-py3-none-any.whl

Download URL bqup-0.0.14-py3-none-any.whl
Size 10.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
5636e96c91cb57e720ca7d23ce601bd8bbe7c0db7defe2aeef086c44e332bb95
BLAKE2b-256 checksum
How to use checksums
f157c7ec40c36e00eb9b7796a0fb30a8de3ad496c3fd2e16a4ab7f409a374651
Upload date
Uploaded using Trusted Publishing?
What is 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

Release history Release notifications | RSS feed

This release

0.0.14 This release

1 release file

0.0.13

1 release file

0.0.12

1 release file

0.0.11

1 release file

0.0.10

1 release file

0.0.9

1 release file

0.0.8

1 release file

0.0.7

1 release file

0.0.6

2 release files

0.0.5

1 release file

0.0.4

1 release file

0.0.3

1 release file

0.0.2

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page