はじめに
Verticaの利用をご検討いただいているお客さまから、既存のデータベースからVerticaに移行する方法について、具体的な手順を知りたいというご要望をいただくことがあります。そこで、今回はVerticaをご利用いただくまでの移行ステップをご紹介します。
移行概要
他のDBからVerticaに移行するまでのステップは、以下のとおりです。移行元DBのデータはETLツールなどを使用しないかぎり、直接Verticaで連携することはできないため、データをいったんCSVに出力後、そのCSVをVerticaにロードする必要があります。
※ステップ12~14は、Vertica移行後にGUIツールを利用するケースを想定し、参考情報として掲載をしています。Verticaを利用する上で必須の作業ではありません。
Verticaに移行するまでの各ステップついて解説します。
移行ステップ | 説明 | 関連トピック | |
|---|---|---|---|
1 | Verticaインストール、DB作成 | はじめにVerticaのインストールを行い、DBを作成します。Verticaのインストールは、Vertica Community Edition(無償)をダウンロードし、rpmを展開するだけなので簡単です。 | 「はじめてのVertica」ダウンロードのご案内 |
2 | テーブルのDDL出力 | 移行元DBのテーブルをVertica用のテーブルに置換えるためにテーブルのDDLを出力します。 | テーブル以外のオブジェクトを移行する場合、Verticaで利用できるオブジェクトについては、以下の記事で紹介しています。 |
3 | テーブルのDDL変換 | 移行元DBとVerticaで利用可能なデータ型を比較して、Verticaが対応しているデータ型に置換えます。 | Verticaでサポートされているデータ型 |
4 | テーブル作成 | 置換えたテーブル定義をもとに、Verticaでテーブルを作成します。 | |
5 | データのCSV出力 | Verticaのテーブルにデータを取り込むため、移行元DBからテーブルのデータをCSVに出力します。 | |
6 | CSVの文字コード変換 | VerticaがサポートしているDBキャラクタセットはUTF8のみです。そのため、対象CSVファイルの文字コードがUTF-8形式ではない場合には、エンコーディングする必要があります。 | Verticaでサポートされる文字コード |
7 | CSVのデータロード | UTF8に変換したCSVファイルをVerticaの各テーブルにロードします。 | データロードの基本 |
8 | プロジェクションの最適化 | 各テーブルへのロード完了後、「admintools」もしくは「Management Console」を利用し、プロジェクションの最適化を実行します。Vertica独自の作業であり、他のDBと大きく違うポイントです。 | プロジェクションの概要 |
9 | アプリの実行SQL洗出し | Verticaで実行できるSQL文に置換えるために、移行元DBに対して実行しているSQL文の洗出しをおこないます。 | |
10 | SQL変換 | 移行元DBに対して実行していたSQL文をVerticaで実行できるようにSQL文を置換えます。Verticaは「ANSI SQL99」に準拠しているため、基本的には他のDBで実行しているSQL文をそのまま利用することができます。 | |
11 | SQL変換後の動作確認 | Vertica用に置換えたSQL文の動作確認をおこないます。トライ&エラーの繰り返しの作業です。 | |
12 | 「Microsoft Excel」、「Microsoft Access」 からの接続 | Verticaに対して、「Microsoft Excel」や「Microsoft Access」から接続して、データの取込みや加工ができます。 | 「Microsoft Excel」と「Microsoft Access」からの接続方法について |
13 | 開発ツールからの接続 | Veriticaが標準提供している開発ツールはありませんが、サードパーティからは幾つか提供されています。その中でも、Verticaとの親和性が良好な「DbVisualizer」がお薦めです。Windows上にインストールして、GUIでSQLを発行したり、テーブル操作などが可能であるため、コマンドラインに抵抗のある方は、ご利用ください。 | Verticaの開発用ツール |
14 | Management Console の利用 | Verticaには、管理用のGUIツールとして、「Management Console」が無償で提供されています。Webブラウザから、データベースの稼動状況やデータベースの起動・停止操作、閾値を超えたメトリックスの状態を把握することなど、様々な管理タスクを一元的に行うことができます。 | Vertica Management Consoleを利用した効率的なデータベース運用 |
他のDBからVerticaに移行する場合の具体例
以下の記事では、MySQLからVerticaに移行する場合の手順について、解説しています。本記事とあわせて、ご覧いただき、是非ともVerticaを使ってみてください。
MySQLからVerticaへの移行について
https://www.ashisuto.co.jp/cm/analytics-database/mysql_migration.html
※OracleとJavaは、Oracle Corporation 及びその子会社、関連会社の米国及びその他の国における登録商標です。
文中の社名、商品名等は各社の商標または登録商標である場合があります。
