はじめに
本番環境から開発環境やDR環境などに、Verticaのデータを移行したいケースがあると思います。Verticaが提供しているデータの移行方法には、幾つかあります。本稿では、各データ移行方法と、そのメリットとデメリットをご紹介します。
メリットとデメリット
各データ移行方法およびメリットとデメリットは、以下のとおりです。移行方法の詳細は、参考情報もあわせてご覧ください。
No. | 移行方法 | メリット | デメリット | 参考情報 |
---|---|---|---|---|
1 | vbr--task copycluster | ・DDLとデータの移行が容易で高速 ・DB全体のコピーが可能 | ・DB名、DBバージョン、ノード名、ノード数、ディレクトリ構成などソース側とターゲット側を合わせる必要がある | ・Verticaデータベースのコピー ・Copying the Database to Another Cluster |
2 | vbr--taskreplicate | ・DDLとデータの移行が容易で高速 ・オブジェクト毎のコピーが可能 | ・DBバージョン、ノード数、ディレクトリ構成などソース側とターゲット側を合わせる必要がある | ・別Vertica環境にデータを複製する方法(vbrの活用) ・Replicating Objects to an Alternate Cluster |
3 | EXPORT TO VERTICA /COPY FROM VERTICA | ・DB名、DBバージョン、ノード名、ノード数、ディレクトリ構成などが異なってもデータ移行が可能 ・データの移行が高速 | ・事前にターゲット側にテーブルを作成しておく必要がある ・DBバージョンをソース側とターゲット側を合わせる必要がある※ ※ソース側とターゲット側のメジャーバージョンが1つ違う場合はサポートされる [サポートされる例] ソース側:12.0 ターゲット側:11.0 ソース側:11.0 ターゲット側:12.0 [サポートされない例] ソース側:12.0 ターゲット側:10.0 ソース側:10.0 ターゲット側:12.0 | ・異なるクラスタのテーブルにデータをコピーする方法(EXPORT TO VERTICA) ・EXPORT TO VERTICA ・特定テーブルのデータを別環境のVerticaに直接コピーする方法 ・COPY FROM VERTICA |
4 | DDLとデータ出力後に、オブジェクト作成とデータロード | ・DB名、DBバージョン、ノード名、ノード数、ディレクトリ構成などが異なってもデータ移行が可能 | ・実装が複雑になる | ・Verticaで既存環境のテーブルのDDLとデータを一括で抽出する方法 ・CSVデータのロード方法 ・COPY |
検証バージョンについて
この記事の内容はVertica 12.0で確認しています。
更新履歴
2023/08/16 「EXPORT TO VERTICA/COPY FROM VERTICA」のメリットとデメリットを修正
2020/08/06 本記事を公開