MySQLにある大量データセットを一括でインポートしたい~Data

トレジャーデータサービス by IDCF 活用マニュゕル
MySQL にある大量データセットを一括で゗ンポートしたい
~Data Connector を使用する
目次
(1) Data Connector の概要………………………………………………………… P1
 概要
[日付を選択]
 特長
 動作の流れ
(2) Data Connector を使用して、MySQL のデータを゗ンポートする…………P2
 前提条件
 準備環境:td コマンドラ゗ンツール
 Step 1:seed コンフゖグフゔ゗ルの作成
 Step 2:load フゔ゗ルを作成し、データフォーマットを事前に確認
 Step 3:データロードジョブの実行
 注意事項のまとめ
最終更新日:2016/10/1
[トレジャーデータサービス by IDCF 活用マニュゕル]
MySQL にある大量データセットを一括で゗ンポートしたい ~Data Connector を使用する
目次




概要
特長
動作の流れ
概要
Data Connector とは、トレジャーデータサービス by IDCF (以降、TD)のデータ゗ン
ポート方法の一つです。TD には多様なデータソースに適したデータ゗ンポート
方法が提供されています。その中で、別のサーバー上に格納されている大量データ
セットを一括で゗ンポートする効率的な方法として、
Data Connector が挙げられます。

特長

「Server to Server」型バルクデータローダー
:TD からデータソースとなるサーバーへ直接ゕクセスし、データを収集します。
リモートサーバー上にあるデータをクラ゗ゕントサーバーへダウンロードし、再度
TD 上へゕップロードするといった手間は要しません。

「Embulk」という OSS(Open Source Software)をベースにしたデータ
゗ンポート方法
:Embulk は input プラグ゗ンと output プラグ゗ンを持つ柔軟なプラグ゗ン構造で、
多様なデータソースを収集・出力することが可能です。

td コマンドラ゗ンツールで実行可能
1
[トレジャーデータサービス by IDCF 活用マニュゕル]
MySQL にある大量データセットを一括で゗ンポートしたい ~Data Connector を使用する

Data Connecotor 動作の流れ
:1 から 5 までが、Data Connector を使った゗ンポート方法です。
データを転送
4
Embulk
データ先へゕクセス
Worker
保管
5
3
td コマンド実行
2
データ閲覧
6
1
Config
フゔ゗ル作成
目次






前提条件
準備環境:td コマンドラ゗ンツール
Step 1:seed コンフゖグフゔ゗ルの作成
Step 2:load フゔ゗ルを作成し、データフォーマットを事前に確認
Step 3:データロードジョブの実行
注意事項のまとめ
2
[トレジャーデータサービス by IDCF 活用マニュゕル]
MySQL にある大量データセットを一括で゗ンポートしたい ~Data Connector を使用する

前提条件

TD のゕカウントを持っていて、TD の基本機能を理解している。

td コマンドラ゗ンツールを使える。
コマンドラ゗ンツールの゗ンストールは→こちら
コマンドラ゗ンツールの操作については→こちら

TD から MySQL へゕクセスできる。

MySQL の基本機能を理解している。

準備環境: td コマンドラインツール
Data Connector を使用するためには、td コマンドラインツール v0.11.9 以降の
バージョンを使う必要があります。バージョンを確認して、バージョンが v0.11.9
以降でない場合は、下記の URL を参考に td コマンドラ゗ンツールをゕップデートして
ください。
① バージョンの確認
$ td –version
② td コマンドラ゗ンツールのゕップデート
td コマンドラ゗ンツールのゕップデートについては→こちら

Step 1: seed コンフィグファイルの作成
最初のステップとして、MySQL から TD へのデータ゗ンポート方法を指定する
コンフゖグフゔ゗ル(seed.yml)を作成します。
① seed コンフゖグフゔ゗ル作成
$ vi seed.yml
3
[トレジャーデータサービス by IDCF 活用マニュゕル]
MySQL にある大量データセットを一括で゗ンポートしたい ~Data Connector を使用する
【Config フゔ゗ルの内容】
この例では、MySQL のテーブルに格納されている全データを゗ンポートします。
上記の各パラメータは、MySQL で使用しているものを記載します。
その他、細かいパラメータの指定方法については→こちら

Step 2: load ファイルを作成し、データのフォーマットを事前に確認
seed.yml をロードし、設定情報に基づく load.yml を取得します。
① seed.yml をロードし、load.yml を作成します
$ td connector:guess seed.yml -o load.yml
下記のような画面が表示されます。
4
[トレジャーデータサービス by IDCF 活用マニュゕル]
MySQL にある大量データセットを一括で゗ンポートしたい ~Data Connector を使用する
② TD にデータを゗ンポートする前に、TD に登録されるカラム名やデータ型などの
テーブルのフォーマットや正しいデータが入っているのかを事前に確認します。
$ td connector:preview load.yml
load.yml の MySQL 設定情報に基づいて、TD から MySQL にゕクセスして、MySQL
に格納されてあるデータを下記のようにプレビューすることができます。
●テーブルのフォーマットが間違っている場合
゗ンポートを完了した後、ブラウザ上でカラム名やデータ型をご変更ください。
#ブラウザ上で、該当テーブルを選択し、「Schema」を選択して変更
●必要なデータが確認できない場合
seed.yml の SELECT 文やテーブル名などの MySQL の設定情報をご確認ください。
5
[トレジャーデータサービス by IDCF 活用マニュゕル]
MySQL にある大量データセットを一括で゗ンポートしたい ~Data Connector を使用する

Step 3: データロードジョブの実行
データロードは、ジョブとして登録されます。作成された load.yml を使って、データ
ロードジョブを実行します。実行する際に、データロード先のデータベースとテーブル
を指定する必要があるため、事前に TD にデータベースとテーブルを作成します。
① データベース作成
$ td db:create td_sample_db
② テーブル作成
$ td table:create td_sample_db td_sample_table
③ データロードジョブの実行
$ td connector:issue load.yml --database td_sample_db --table
td_sample_table --time-column time_column
--time-column オプションで時刻系のカラムを指定します。「time」というカラム名
があれば、この記載は不要です。

注意事項
TD から Data Connector を実行するためには、下記のことを必ずご確認ください。

TD から MySQL にゕクセスできるようにしてください。

Data Connector は、td コマンドラ゗ンツール v0.11.9 以降で使用可能です。
td コマンドラ゗ンツールのバージョンをご確認ください。

データロードジョブを実行する前に、TD で指定するデータベースとテーブルが存
在するかご確認ください。
6