実データを含む完全な PostgreSQL コピーを 30 秒未満で作成できます。dump も restore も不要で、初期追加ストレージもほぼゼロです。
標準的な方法は今でも pg_dump と pg_restore です。小規模 DB なら問題ありませんが、本番規模になるとチームの速度を大きく落とします。
クラウドのスナップショット復元は改善ですが、利用可能になるまで数分かかり、やはりフルコピーを作ります。
Vela はストレージ層でクローンを作成します。ソースとクローンは最初に同じブロックを共有するため、大量コピーが発生しません。
書き込みが発生したブロックだけが別保存されます。そのため作成は高速で、ストレージ増加も実際の変更量に比例します。
クローンが速く安く使い捨て可能になることで現実的になるワークフローです。
本番クローン上で先にスキーマ変更を検証してから本番へ適用します。
合成データではなく、本番規模データでベンチマークします。
共有 dev DB ではなく、各エンジニアに完全なコピーを配布します。
本番をクローンし、クローン内でマスキングを行って安全なコピーだけ共有します。
| 項目 | pg_dump / restore | クラウド snapshot restore | Vela CoW クローン |
|---|---|---|---|
| 作成時間(100 GB) | 45〜90 分 | 10〜30 分 | < 30 秒 |
| クローンごとの追加ストレージ | 100 GB フルコピー | 100 GB フルコピー | 作成時ほぼゼロ |
| 10 個の同時クローン | ~1 TB 追加 | ~1 TB 追加 | データ変更まではほぼゼロ |
| API 自動化 | CLI のみ | クラウド API | REST API と UI |
Vela はストレージ層で copy-on-write を使います。変更されていないブロックはソースと共有されるため、作成時に完全転送が不要です。
クローンは分離されたコピーです。ブランチは同じ仕組みを使いますが、ブランチングのワークフローとして管理されます。
作成時はほぼゼロです。クローンまたはソースが別々のブロックを書き換えたときにだけ追加ストレージが増えます。
はい。Vela は本番トラフィックを止めずに一貫したスナップショットを作成します。