トレジャーデータサービス by IDCF 活用マニュゕル オブジェクトストレージにある大量データセットを一括でン ポートしたい ~Data Connector を使用する 目次 (1) Data Connector の概要………………………………………………………… P1 概要 [日付を選択] 特長 動作の流れ (2) Data Connector を使用して、オブジェクトストレージのデータを ンポートする……………………………………………………………………P2 前提条件 準備環境:td コマンドランツール Step 1:seed コンフゖグフゔルの作成 Step 2:load フゔルを作成し、データフォーマットを事前に確認 Step 3:データロードジョブの実行 注意事項のまとめ 最終更新日:2016/10/1 [トレジャーデータサービス by IDCF 活用マニュゕル] オブジェクトストレージにある大量データセットを一括でンポートしたい ~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 活用マニュゕル] オブジェクトストレージにある大量データセットを一括でンポートしたい ~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 活用マニュゕル] オブジェクトストレージにある大量データセットを一括でンポートしたい ~Data Connector を使用する 前提条件 TD のゕカウントを持っていて、TD の基本機能を理解している。 td コマンドランツールを使える。 コマンドランツールのンストールは→こちら コマンドランツールの操作については→こちら オブジェクトストレージの基本機能を理解している。 準備環境: td コマンドラインツール Data Connector を使用するためには、td コマンドラインツール v0.11.9 以降の バージョンを使う必要があります。バージョンを確認して、バージョンが v0.11.9 以降でない場合は、下記の URL を参考に td コマンドランツールをゕップデートして ください。 ① バージョンの確認 $ td –version ② td コマンドランツールのゕップデート td コマンドランツールのゕップデートについては→こちら Step 1: seed コンフィグファイルの作成 最初のステップとして、オブジェクトストレージから TD へのデータンポート方法を 指定するコンフゖグフゔル(seed.yml)を作成します。 ① seed コンフゖグフゔル作成 $ vi seed.yml 3 [トレジャーデータサービス by IDCF 活用マニュゕル] オブジェクトストレージにある大量データセットを一括でンポートしたい ~Data Connector を使用する 【Config フゔルの内容】 ・type:IDC フロンテゖゕのオブジェクトストレージは Riak CS を基盤にしています ので、type で「riak_cs」を記入します。 ・endpoint: TD のエンドポント先である「ds.jp-east.idcfcloud.com」を記入 します。 ・access_key_id:オブジェクトストレージの「Access Key」を記入します。 ・secret_access_key:オブジェクトストレージの「Secret Key」を記入します。 ・bucket:オブジェクトストレージ内のバケット名を記入します。 ・path_prefix:バケット内にあるンポート対象のフゔル名を記入します。 ・mode:テーブル内にデータを追加する「append」とテーブル内のデータを完全に 置き換える「replace」の中の一つを選択して記入します。 #Data Connector によるオブジェクトストレージからのンポートは、CSV と TSV 形式のみに対応します。そのため、path_prefix には CSV か TSV を指定します。 Step 2: load ファイルを作成し、データのフォーマットを事前に確認 seed.yml をロードし、設定情報に基づく load.yml を取得します。 ① seed.yml をロードし、load.yml を作成します $ td connector:guess seed.yml -o load.yml 4 [トレジャーデータサービス by IDCF 活用マニュゕル] オブジェクトストレージにある大量データセットを一括でンポートしたい ~Data Connector を使用する 該当するエンコーデゖング、カラム型、カラム名などの情報が推測された load.yml が作成されます。下図のような画面が表示されます。 ② TD にデータをンポートする前に、正しいフォーマットでデータが入っているの かを事前に確認します。 $ td connector:preview load.yml 5 [トレジャーデータサービス by IDCF 活用マニュゕル] オブジェクトストレージにある大量データセットを一括でンポートしたい ~Data Connector を使用する load.yml の設定情報に基づいて、TD からオブジェクトストレージにゕクセスして、 オブジェクトストレージに格納されているデータを下図のようにプレビュー することができます。 #load.yml 内「volume」、「high」、「low」、「closed」の「type」が「string」 に推測されています。本来は、文字列ではなく数値で扱いたいですので、load.yml で、各カラムの「type」を「double」に修正してからプレビューします。 6 [トレジャーデータサービス by IDCF 活用マニュゕル] オブジェクトストレージにある大量データセットを一括でンポートしたい ~Data Connector を使用する ●テーブルのカラム名やカラム型が正しく認識されてない場合 ・load.yml のカラム名やカラム型を修正して、再度プレビューしてください。 #Data Connector でサポートされているカラム型は「boolean」,「string」「long」 「double」があります。 ・ンポートを完了した後、ブラウザ上でカラム名やデータ型をご変更ください。 #ブラウザ上で、該当テーブルを選択し、「Schema」を選択して変更 ●必要なデータが確認できない場合 設定情報で、正しいバケット名とフゔル名が記入されているのかご確認ください。 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 td_sample_table --table --time-column time_column --time-column オプションで時刻系のカラムを指定します。「time」というカラム名 があれば、この記載は不要です。 7 [トレジャーデータサービス by IDCF 活用マニュゕル] オブジェクトストレージにある大量データセットを一括でンポートしたい ~Data Connector を使用する 注意事項 TD から Data Connector を実行するためには、下記のことを必ずご確認ください。 Data Connector は、td コマンドランツール v0.11.9 以降で使用可能です。 td コマンドランツールのバージョンをご確認ください。 データロードジョブを実行する前に、データンポート先のデータベースと テーブルが存在するかご確認ください。 8
© Copyright 2024 Paperzz