Connection: via IPv4
Your IP : 18.227.49.73
In English
Categories: LinuxServer

Misskey/FirefishなどのDBバックアップをzstdで圧縮する

概要

Misskey/FirefishなどAcitvity Pub互換サーバーを運用する上で、バックアップは非常に重要ですが、運用の経過で自然とバックアップサイズが大きくなることは運用者を悩ませます。
そこでzstdを使ったバックアップの圧縮がおすすめです。

今回紹介するzstd(ZStandard)は比較的新しい圧縮アルゴリズムです。開発者はYann Collet氏です。Ubuntu 22.04 LTS(server含む)にはzstdから始まるコマンドラインツールがデフォルトで同梱されており、従来使われてきたgzipよりも高圧縮で高速な圧縮伸張をサポートします。

使い方

コマンドラインツールzstdは標準入力に受け取った内容を圧縮して標準出力に出します。zstdcatは逆に標準入力か第一引数のファイルを伸張して標準出力に出します。
具体的には以下のように実行できます。

# zstdで圧縮
pg_dumpall -U <pgのユーザー名> | zstd > backup.zst
# zstdcatで伸張
zstdcat backup.zst |  psql -U <pgのユーザー名> -d <pgのdb名>

ちなみにzstdcatを含めてgzipやプレーンテキストを渡しても処理できるので、catやzcatで読んでいた処理をそのままzstdcatに置き換えるだけで既存のバックアップも問題なく使えます。

運用しているMisskeyサーバーではzstdの圧縮率は非圧縮比で1/3~1/4になりました。

# みおきー
 3.6G Dec 16 17:03 2023.11.1-mio.backup
1005M Dec 16 17:37 2023.11.1-mio.backup.zst
# みーくりあ!
1.9G Dec 16 17:01 2023.11.1.backup
564M Dec 16 17:47 2023.11.1.backup.zst

 

This post was last modified on 2023年12月16日 6:32 PM

Share
Published by
おきん(blog)

Recent Posts

中古のM1 Macbook Airを買った話

つい先日、中古のMacbook…

3日 ago

買って良かったもの 10Gtek USB コンソールケーブル Type-C

最近Macbookを買ったので…

3週間 ago

media-proxy-rsをビルド・実行する

media-proxy-rsを…

3か月 ago

[メモ]NetboxでEntra ID認証(SSO)[編集中]

[メモ]JellyfinでEn…

3か月 ago

ものぐさのためのXbox Game Pass Ultimate更新節約術

ものぐさ節約家のためのXbox…

3か月 ago

This website uses cookies.