Pdi tutorial 20140121
-
Upload
teruo-kawasaki -
Category
Business
-
view
1.363 -
download
0
description
Transcript of Pdi tutorial 20140121
PDI入門 (ETL)
オープンソースBI 勉強会 #2[2014/01/21]
TwitterID:@teruu
1/91
本日の内容
•ダウンロード
•起動
•プレビューと実行、ログ確認
•データ変換作成
– PDI版 Hello, world!
– テキストファイル入出力
– Excelファイル入出力
– DB入力
– DB出力
ETLの処理のうち、E(Extract:抽出)L(Load:ロード)を中心に紹介
T(Transform:変換)については簡単にふれます
2/91
関連書籍
このスライドでは、左側の「Pentaho Data Integration Beginner’s Guide」の内容を一部参考にしています。
3/91
ダウンロード
• Pentaho配布サイトhttp://sourceforge.net/projects/pentaho/files/
• Pentaho配布サイト PDIhttp://sourceforge.net/projects/pentaho/files/Data%20Integration/
• ダウンロード候補– 5.0.1-stable– 4.4.0-stable
• Windowsの場合– pdi-ce-X.X.X-stable.zip
4/91
インストール
•ダウンロードするだけ(Javaの環境があれば)
•DBのJDBCドライバを追加
– postgresqlのドライバは同梱されている
•SourceForgeのサイトからダウンロードし、
Windowsであれば、解凍したフォルダ中の
Spoon.batをダブルクリック
•起動後、言語の設定を確認(日本語になっているか)
5/91
言葉の定義
•データ変換
– ステップ
– ホップ
•ジョブ
– ジョブエントリ
– ホップ
→ 今回はデータ変換だけを扱います
6/91
データ変換作成①
•PDI版Hello, world!
•作業フォルダ
– C:¥pentaho¥pdi_work
7/91
Spoon起動 Windowsの場合、Spoon.batファイルをダブルクリックして起動します。
8/91
新規→データ変換 ファイル→新規→データ変換、を選択します。
デザインタブ
キャンバス
ツールバー
9/91
行生成 画面左側のデザインタブで「入力」ノードを開き、一番下の「行生成」ステップをキャンバスにドラッグする。
10/91
ダミー 「フロー」ノードを開き、「ダミー(何もしない)」ステップをキャンバスにドラッグする。
11/91
ホップ(hop)「行生成」ステップ上で、マウスのホイールをクリックし、そのまま「ダミー」ステップまでドラッグすると、2つのステップを接続するホップ(矢印)が作成される。
12/91
行生成編集「行生成」ステップをダブルクリックして、ステップの編集画面を表示。下記の通り入力する。(名称、タイプ、値)リミットは初期値の「10」になっているのを確認。タイプはドロップダウンから「String」を選択。「OK」をクリックして編集画面を閉じる。
13/91
データ変換プロパティ
編集→設定をクリックし、データ変換プロパティを表示。データ変換名に「hello world」と入力。「OK」をクリックしてプロパティを閉じる。
14/91
名前を付けて保存 ファイル→保存をクリック。「hello_world」と入力して保存。
15/91
データ変換デバッグ 「ダミー」ステップをクリックして選択し、ツールバー上の「プレビュー」をクリック。
16/91
プレビュー 「クイック起動」ボタンをクリックするとプレビューが表示される。
17/91
実行画面上部のツールバーから「実行」をクリックすると、下記の画面が表示されるので「実行」ボタンをクリック。
18/91
実行結果 実行されたステップに緑のチェックが付き、画面下部に実行結果が表示される。
19/91
ログ 「ログ」タブを表示して、エラーが無かったか確認する。エラーは赤で表示される。
20/91
データ変換作成①
•PDI版Hello, world!
•作業フォルダ
– C:¥pentaho¥pdi_work
21/91
データ変換作成②
•テキストファイル入出力
•ETLのT(Transform:変換)の事例として「選択/名前変更」ステップを使用
– ここでは不要なフィールド(列)を削除する
22/91
テキストファイル入力新規→データ変換 を選択。「入力」ノードから「テキストファイル入力」を選択。ダブルクリックして編集
23/91
ステップ編集(ファイルタブ)
ダブルクリックして編集画面を表示。「参照」ボタンをクリックして入力ファイル指定。「追加」ボタンをクリック。「ファイル名のリスト」欄に追加される。
24/91
全般タブ「全般」タブを表示。フィールド区切り文字は、デフォルトの「;」(セミコロン)を削除して、右側の「入力 タブ」ボタンをクリックしてタブを入力。
25/91
全般タブ文字コードは、ドロップダウンリストから適切な文字コードを選択。ここでは「UTF-8」を選択。フォーマットは行末コードを「DOS」「Unix」「mixed」から適宜選択。
26/91
フィールドを取得「フィールドを取得」ボタンをクリック。「サンプル出力するレコード数」ダイアログが表示されるので、OKをクリック。
27/91
走査した結果フィールドをサンプリングした結果が表示される。「閉じる」ボタンをクリック。「OK」ボタンをクリックして編集画面を閉じる。
28/91
フィールド取得結果取得されたフィールドの内容を確認。問題なければ「OK」をクリックして閉じる。
29/91
選択/名前変更「変換」ノードから「選択/名前変更」ステップをキャンバスにドロップ。2つのステップを接続。 「選択/名前変更」ステップをダブルクリックして編集。画面左上のステップ検索も利用可能。
30/91
ステップ編集除去フィールド
「除去フィールド」タブを表示。「フィールド名」の下の欄をクリックすると、欄の右端にドロップダウンの三角形が表示されるので、それをクリックして、「last_update」列を選択。
31/91
ステップ配置「テキストファイル出力」ステップを追加し、ホップで接続。「Main output of step」を選択。
32/91
テキストファイル出力ファイルタブ
「テキストファイル出力」ステップをダブルクリックして編集。ファイル名の「参照」ボタンをクリックして出力先のファイル名を指定。
33/91
テキストファイル出力全般タブ
「全般」タブを表示。「タブの挿入」ボタンをクリックして、区切り文字としてタブを指定。文字コード「UTF-8」を指定。
34/91
プレビュー「テキストファイル出力」ステップを選択状態にして、ツールバー上のプレビューをクリック。プレビューが実行される。
35/91
実行ツールバー上の「実行」をクリック。「データ変換の実行」画面が表示されるので、「実行」ボタンをクリック。
36/91
データ変換の保存 データ変換実行前に保存。
37/91
実行結果実行結果を確認する。出力先のファイルを開き確認。
38/91
データ変換作成②
•テキストファイル入出力
•ETLのT(Transform:変換)の事例として「選択/名前変更」ステップを使用
– ここでは不要なフィールド(列)を削除する
39/91
データ変換作成③
•Excelファイル入出力
•変換ステップとして「フィルター」「値マッピング」を使用
•サンプルデータとして、PDIのJIRA(バグ管理サイト)から出力したExcelファイルを使用
40/91
ステップを配置入力:Excel入力、フロー:フィルター、変換:値マッピング、出力:Excel出力の各ステップを配置し接続。「フィルター」と「値マッピング」の間のホップは「Main output of step」を選択。
41/91
Excel入力Excel入力をダブルクリックして編集。ファイルタブの内容を指定。スプレッドシートタイプは「Excel2007」を指定。
42/91
Excel入力シートタブ
「シートの取得」ボタンをクリック、「入力リスト」で対象のシートを選択。
43/91
Excel入力シートタブ
「開始レコード」「開始列」を指定。
44/91
Excel入力フィールドタブ
「フィールドの取得」ボタンをクリック。
45/91
プレビュー「プレビュー」ボタンをクリック。内容を確認して「閉じる」をクリック。
46/91
フィルター フィルターをダブルクリックして編集。
47/91
フィルター「フィルタ条件」に下記のように入力。「OK」をクリックして閉じる。
48/91
値マッピング値マッピングをダブルクリックして編集。
49/91
Excel出力「Excel出力」ステップをダブルクリックして編集。「ファイル名」を指定。
50/91
Excel出力フィールドタブ
フィールドタブを表示。「フィールドを取得」ボタンをクリック。
51/91
Excel出力フィールドタブ
フィールド名とデータタイプが取得される。OKボタンをクリック。
52/91
実行ツールバーの「実行」ボタンをクリック。「実行」をクリック。
53/91
保存 実行前にデータ変換を保存。
54/91
実行結果 実行結果を確認する。
55/91
出力されたファイル出力されたファイルをExcelで開いて確認する。
56/91
データ変換作成③
•Excelファイル入出力
•変換ステップとして「フィルター」「値マッピング」を使用
•サンプルデータとして、PDIのJIRA(バグ管理サイト)から出力したExcelファイルを使用
57/91
データ変換作成④
•DB入力
•DBはPostgresqlを利用
•サンプルデータは、pagilaというデータを使用
58/91
データベース接続作成ビュータブの「データベース接続」を右クリックして「新規」を選択。
59/91
データベース接続データベース接続を下記のように指定。
60/91
検索 「検索」ボタンをクリック。
61/91
最初の100行プレビュー任意のテーブルを右クリックして、「最初の100行プレビュー」を選択。
62/91
プレビュー プレビューが表示される。
63/91
ステップ配置 下記のようにステップを配置します。
64/91
テーブル入力テーブル入力を編集。「SQLの選択」ボタンをクリック。
65/91
データベースエクスプローラー
データベースエクスプローラーが表示されるので、任意のテーブルを選択。
66/91
テーブル入力 SQLが生成される。
67/91
テキストファイル出力「テキストファイル出力」ステップをダブルクリックして編集。
68/91
テキストファイル出力フィールドタブ
「フィールドを取得」をクリック。
69/91
実行 ツールバーから実行をクリック。
70/91
出力ファイル 出力ファイルを開いて内容を確認。
71/91
データ変換作成④
•DB入力
•DBはPostgresqlを利用
•サンプルデータは、pagilaというデータを使用
72/91
データ変換作成⑤
•DB出力
73/91
ステップ配置 下記の通りステップを配置する。
74/91
テキストファイル入力「テキストファイル入力」ステップで先ほど出力したファイルを指定。「プレビュー」ボタンをクリック。
75/91
プレビュー プレビューを確認。
76/91
テキストファイル入力全般タブ
全般タブで「入力タブ」ボタンをクリックしてタブを入力。
77/91
テキストファイル入力フィールドタブ
「フィールドを取得」をクリック。
78/91
走査した結果 走査した結果が表示される。
79/91
テーブル出力「テーブル出力」ステップを編集。テーブル名を指定。「列名を指定する」チェックボックスをONに。「フィールドを取得」ボタンをクリックして、フィールド欄に自動記入。「SQL」ボタンをクリック。
80/91
SQL文生成、実行CREATE TABLE文が生成される。「実行」ボタンをクリックして、出力先のテーブル作成。
81/91
フィールドマッピング「フィールドマッピング」ボタンをクリックして、マッピングの内容を確認。
82/91
実行ツールバーの「実行」をクリック。「実行」ボタンをクリック。
83/91
実行結果 実行結果が表示される。
84/91
照会DBに出力した内容を確認。ビュータブのデータベース接続から該当の接続を右クリックして、「照会」を選択。
85/91
データベースエクスプローラー
該当のテーブルを選択。
86/91
プレビュー該当のテーブルを右クリックして、「x行プレビュー」を選択。
87/91
プレビュー テーブルの内容が表示される。
88/91
データ変換作成⑤
•DB出力
89/91
まとめ
•ダウンロード
•起動
•プレビューと実行、ログ確認
•データ変換作成
– PDI版 Hello, world!
– テキストファイル入出力
– Excelファイル入出力
– DB入力
– DB出力
90/91
不明な点
•Pentahoのフォーラムへ
– 日本語でコミュニティー・サポート
http://forums.pentaho.com/forumdisplay.php?86
91/91