Skip to content

Releases: Altinity/clickhouse-backup

v0.6.2

01 Dec 09:01
Compare
Choose a tag to compare

IMPROVEMENTS
Added integration with clickhouse cli. Now backups can be managed via clickhouse-client
How it works:

  1. Run clickhouse-backup api
clickhouse-backup server
  1. Create backup_actions and backup_list tables
CREATE TABLE system.backup_actions (command String, start DateTime, finish DateTime, status String, error String) ENGINE=URL('http://127.0.0.1:7171/backup/actions', JSONEachRow)
CREATE TABLE system.backup_list (name String, created DateTime, size Int64, location String) ENGINE=URL('http://127.0.0.1:7171/backup/list', JSONEachRow)
  1. Manage backup via clickhouse queries
INSERT INTO system.backup_actions (command) VALUES ('create backup1')
INSERT INTO system.backup_actions (command) VALUES ('upload backup1')
SELECT * FROM system.backup_list
┌─name───────────┬─────────────created─┬──size─┬─location─┐
│ backup1        │ 2020-12-01 08:43:47 │     0 │ local    │
│ backup1.tar.gz │ 2020-12-01 08:43:54 │ 74249 │ remote   │
└────────────────┴─────────────────────┴───────┴──────────┘
SELECT * FROM system.backup_actions
┌─command────────┬───────────────start─┬──────────────finish─┬─status──┬─error─┐
│ create backup1 │ 2020-12-01 09:01:02 │ 2020-12-01 09:01:02 │ success │       │
│ upload backup1 │ 2020-12-01 09:01:05 │ 2020-12-01 09:01:05 │ success │       │
└────────────────┴─────────────────────┴─────────────────────┴─────────┴───────┘

v0.6.1

04 Nov 21:17
Compare
Choose a tag to compare

IMPROVEMENTS

  • Added 'Flashback' restore feature, which allows restoring only changed parts. This can be useful for replicated tables. (thanks @nikk0)
  • Added '--rm' and '--drop' flags to delete tables before restoring. (thanks @max-wittig)
  • Added ability to choose AWS S3 storage class. (thanks @andrii29)

BUG FIXES

  • Tables containing the "-" character in the name could not be restored. This has been fixed. (thanks @LH-Datarocks)
  • Fixed error "open /var/lib/clickhouse-server/store/shadow: no such file or directory" on backup creation for ClickHouse after 20.8. (thanks @everythings-gonna-be-alright and @hohaftf)

v0.6.0

02 Oct 07:50
Compare
Choose a tag to compare

IMPROVEMENTS

  • Added REST API Server (thanks @nmcclain)
  • Added ClickHouse integration via REST API. Now you can manage backups from ClickHouse.
  • Added FTP support (thanks @jawr)
  • Added Azure Blob Storage support (thanks @atykhyy)

v0.5.2

19 May 13:59
Compare
Choose a tag to compare

IMPROVEMENTS

  • Added support of Tencent COS cloud object storage provider (thanks @kasnet)
  • Added CLICKHOUSE_TIMEOUT and CLICKHOUSE_FREEZE_BY_PART options. It's useful when your tables have too many parts and default freezing doesn't work.
  • Added 'rpm' and 'deb' packages to release page (thanks @Felixoid)

BUG FIXES

  • Fixed connection issue when ClickHouse password contains special characters (#69)

v0.5.1

03 Dec 08:12
Compare
Choose a tag to compare

BUG FIXES

  • Restoring some tables might not work correctly. That has been fixed (thanks @yuzhichang)

IMPROVEMENTS

  • Added S3_DISABLE_CERT_VERIFICATION option (thanks @martenlindblad)
  • Removed default value for GCS_CREDENTIALS_FILE option, it led to issue when running on GCE (thanks @nikon72ru)
  • Now the view tables will be restored at the end

v0.5.0

27 Oct 23:07
Compare
Choose a tag to compare

IMPROVEMENTS

  • Added support of Google Cloud Storage (thanks @przemekd)
  • Now tables will be processed in an orderly manner (thanks @yuzhichang)
  • Now config file location may be defined via $CLICKHOUSE_BACKUP_CONFIG

BROKEN CHANGES

  • 'backups_to_keep_s3' option in config file was renamed into 'backups_to_keep_remote'
  • 'disable_progress_bar', 'backups_to_keep_local', 'backups_to_keep_remote' settings were moved to 'general' section in config file
  • 'restore-schema' and 'restore-data' were united into one command. You can restore the schema and data separately, as before, using the '--schema' and '--data' flags (thanks @dcastanier)

v0.4.2

10 Oct 06:31
Compare
Choose a tag to compare

IMPROVEMENTS

  • Support of ClickHouse v19.15 was added
  • AWS Server-Side Encryption support was added (thanks @pelletier)
  • Auto create 'backup' folder on download (thanks @dcastanier)

v0.4.1

26 Sep 18:57
Compare
Choose a tag to compare

IMPROVEMENTS

  • Now restrictions defined by flag 'tables' or CLICKHOUSE_SKIP_TABLES will be also applied for metadata (#43)
  • S3 part was rewritten on non-blocking pipes. It allowed to execute reading from disk, compression and uploading simultaneously.
  • Library mholt/archiver was updated to version with multi-threading 'gzip' support and now 'gzip' has been selected as compression format by default (#14)

Comparison table of upload 31GiB data with v0.4.0:

+------+----------------+----------------+
|      |     v0.4.0     |     v0.4.1     |
+------+----------------+----------------+
| tar  | Time: 8m14s    | Time: 7m50s    |
|      | Size: 30.8GB   | Size: 30.8GB   |
+------+----------------+----------------+
| lz4  | Time: 22m50s   | Time: 15m15s   |
|      | Size: 24GB     | Size: 24.5GB   |
+------+----------------+----------------+
| gzip | Time: 13m21s   | Time: 6m54s    |
|      | Size: 21GB     | Size: 24.2GB   |
+------+----------------+----------------+

v0.4.0

15 Sep 18:51
Compare
Choose a tag to compare

IMPROVEMENTS

  • Upload and download were rewritten on the official AWS library. This allows to support more s3 cloud providers. In particular Yandex.Cloud now works correctly (#30)
  • Support for tables containing special and national characters in name was added (#28)
  • Part size has been increased to 100MiB by default
  • App will retry to upload and download data 30 times in case of network errors (#36)

DEPREСATIONS

  • The 'tree' strategy and the 'dry-run' flag, which were marked as deprecated in v0.3.2, are removed

BUG FIXES

  • Error while creating backups of tables different from MergeTree has been fixed (#44)

v0.3.7

09 Jul 19:23
Compare
Choose a tag to compare

IMPROVEMENTS

  • Check that table is created before 'restore-data' was added
  • Support for comma separated list for '--tables' flag was added