pdi tutorial 20140121

91
PDI入門 (ETL) オープンソースBI 勉強会 #2 2014/01/21TwitterID:@teruu 1/91

Upload: teruo-kawasaki

Post on 21-Jun-2015

1.363 views

Category:

Business


0 download

DESCRIPTION

Pentaho勉強会の資料です。

TRANSCRIPT

Page 1: Pdi tutorial 20140121

PDI入門 (ETL)

オープンソースBI 勉強会 #2[2014/01/21]

TwitterID:@teruu

1/91

Page 2: Pdi tutorial 20140121

本日の内容

•ダウンロード

•起動

•プレビューと実行、ログ確認

•データ変換作成

– PDI版 Hello, world!

– テキストファイル入出力

– Excelファイル入出力

– DB入力

– DB出力

ETLの処理のうち、E(Extract:抽出)L(Load:ロード)を中心に紹介

T(Transform:変換)については簡単にふれます

2/91

Page 3: Pdi tutorial 20140121

関連書籍

このスライドでは、左側の「Pentaho Data Integration Beginner’s Guide」の内容を一部参考にしています。

3/91

Page 4: Pdi tutorial 20140121

ダウンロード

• 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

Page 5: Pdi tutorial 20140121

インストール

•ダウンロードするだけ(Javaの環境があれば)

•DBのJDBCドライバを追加

– postgresqlのドライバは同梱されている

•SourceForgeのサイトからダウンロードし、

Windowsであれば、解凍したフォルダ中の

Spoon.batをダブルクリック

•起動後、言語の設定を確認(日本語になっているか)

5/91

Page 6: Pdi tutorial 20140121

言葉の定義

•データ変換

– ステップ

– ホップ

•ジョブ

– ジョブエントリ

– ホップ

→ 今回はデータ変換だけを扱います

6/91

Page 7: Pdi tutorial 20140121

データ変換作成①

•PDI版Hello, world!

•作業フォルダ

– C:¥pentaho¥pdi_work

7/91

Page 8: Pdi tutorial 20140121

Spoon起動 Windowsの場合、Spoon.batファイルをダブルクリックして起動します。

8/91

Page 9: Pdi tutorial 20140121

新規→データ変換 ファイル→新規→データ変換、を選択します。

デザインタブ

キャンバス

ツールバー

9/91

Page 10: Pdi tutorial 20140121

行生成 画面左側のデザインタブで「入力」ノードを開き、一番下の「行生成」ステップをキャンバスにドラッグする。

10/91

Page 11: Pdi tutorial 20140121

ダミー 「フロー」ノードを開き、「ダミー(何もしない)」ステップをキャンバスにドラッグする。

11/91

Page 12: Pdi tutorial 20140121

ホップ(hop)「行生成」ステップ上で、マウスのホイールをクリックし、そのまま「ダミー」ステップまでドラッグすると、2つのステップを接続するホップ(矢印)が作成される。

12/91

Page 13: Pdi tutorial 20140121

行生成編集「行生成」ステップをダブルクリックして、ステップの編集画面を表示。下記の通り入力する。(名称、タイプ、値)リミットは初期値の「10」になっているのを確認。タイプはドロップダウンから「String」を選択。「OK」をクリックして編集画面を閉じる。

13/91

Page 14: Pdi tutorial 20140121

データ変換プロパティ

編集→設定をクリックし、データ変換プロパティを表示。データ変換名に「hello world」と入力。「OK」をクリックしてプロパティを閉じる。

14/91

Page 15: Pdi tutorial 20140121

名前を付けて保存 ファイル→保存をクリック。「hello_world」と入力して保存。

15/91

Page 16: Pdi tutorial 20140121

データ変換デバッグ 「ダミー」ステップをクリックして選択し、ツールバー上の「プレビュー」をクリック。

16/91

Page 17: Pdi tutorial 20140121

プレビュー 「クイック起動」ボタンをクリックするとプレビューが表示される。

17/91

Page 18: Pdi tutorial 20140121

実行画面上部のツールバーから「実行」をクリックすると、下記の画面が表示されるので「実行」ボタンをクリック。

18/91

Page 19: Pdi tutorial 20140121

実行結果 実行されたステップに緑のチェックが付き、画面下部に実行結果が表示される。

19/91

Page 20: Pdi tutorial 20140121

ログ 「ログ」タブを表示して、エラーが無かったか確認する。エラーは赤で表示される。

20/91

Page 21: Pdi tutorial 20140121

データ変換作成①

•PDI版Hello, world!

•作業フォルダ

– C:¥pentaho¥pdi_work

21/91

Page 22: Pdi tutorial 20140121

データ変換作成②

•テキストファイル入出力

•ETLのT(Transform:変換)の事例として「選択/名前変更」ステップを使用

– ここでは不要なフィールド(列)を削除する

22/91

Page 23: Pdi tutorial 20140121

テキストファイル入力新規→データ変換 を選択。「入力」ノードから「テキストファイル入力」を選択。ダブルクリックして編集

23/91

Page 24: Pdi tutorial 20140121

ステップ編集(ファイルタブ)

ダブルクリックして編集画面を表示。「参照」ボタンをクリックして入力ファイル指定。「追加」ボタンをクリック。「ファイル名のリスト」欄に追加される。

24/91

Page 25: Pdi tutorial 20140121

全般タブ「全般」タブを表示。フィールド区切り文字は、デフォルトの「;」(セミコロン)を削除して、右側の「入力 タブ」ボタンをクリックしてタブを入力。

25/91

Page 26: Pdi tutorial 20140121

全般タブ文字コードは、ドロップダウンリストから適切な文字コードを選択。ここでは「UTF-8」を選択。フォーマットは行末コードを「DOS」「Unix」「mixed」から適宜選択。

26/91

Page 27: Pdi tutorial 20140121

フィールドを取得「フィールドを取得」ボタンをクリック。「サンプル出力するレコード数」ダイアログが表示されるので、OKをクリック。

27/91

Page 28: Pdi tutorial 20140121

走査した結果フィールドをサンプリングした結果が表示される。「閉じる」ボタンをクリック。「OK」ボタンをクリックして編集画面を閉じる。

28/91

Page 29: Pdi tutorial 20140121

フィールド取得結果取得されたフィールドの内容を確認。問題なければ「OK」をクリックして閉じる。

29/91

Page 30: Pdi tutorial 20140121

選択/名前変更「変換」ノードから「選択/名前変更」ステップをキャンバスにドロップ。2つのステップを接続。 「選択/名前変更」ステップをダブルクリックして編集。画面左上のステップ検索も利用可能。

30/91

Page 31: Pdi tutorial 20140121

ステップ編集除去フィールド

「除去フィールド」タブを表示。「フィールド名」の下の欄をクリックすると、欄の右端にドロップダウンの三角形が表示されるので、それをクリックして、「last_update」列を選択。

31/91

Page 32: Pdi tutorial 20140121

ステップ配置「テキストファイル出力」ステップを追加し、ホップで接続。「Main output of step」を選択。

32/91

Page 33: Pdi tutorial 20140121

テキストファイル出力ファイルタブ

「テキストファイル出力」ステップをダブルクリックして編集。ファイル名の「参照」ボタンをクリックして出力先のファイル名を指定。

33/91

Page 34: Pdi tutorial 20140121

テキストファイル出力全般タブ

「全般」タブを表示。「タブの挿入」ボタンをクリックして、区切り文字としてタブを指定。文字コード「UTF-8」を指定。

34/91

Page 35: Pdi tutorial 20140121

プレビュー「テキストファイル出力」ステップを選択状態にして、ツールバー上のプレビューをクリック。プレビューが実行される。

35/91

Page 36: Pdi tutorial 20140121

実行ツールバー上の「実行」をクリック。「データ変換の実行」画面が表示されるので、「実行」ボタンをクリック。

36/91

Page 37: Pdi tutorial 20140121

データ変換の保存 データ変換実行前に保存。

37/91

Page 38: Pdi tutorial 20140121

実行結果実行結果を確認する。出力先のファイルを開き確認。

38/91

Page 39: Pdi tutorial 20140121

データ変換作成②

•テキストファイル入出力

•ETLのT(Transform:変換)の事例として「選択/名前変更」ステップを使用

– ここでは不要なフィールド(列)を削除する

39/91

Page 40: Pdi tutorial 20140121

データ変換作成③

•Excelファイル入出力

•変換ステップとして「フィルター」「値マッピング」を使用

•サンプルデータとして、PDIのJIRA(バグ管理サイト)から出力したExcelファイルを使用

40/91

Page 41: Pdi tutorial 20140121

ステップを配置入力:Excel入力、フロー:フィルター、変換:値マッピング、出力:Excel出力の各ステップを配置し接続。「フィルター」と「値マッピング」の間のホップは「Main output of step」を選択。

41/91

Page 42: Pdi tutorial 20140121

Excel入力Excel入力をダブルクリックして編集。ファイルタブの内容を指定。スプレッドシートタイプは「Excel2007」を指定。

42/91

Page 43: Pdi tutorial 20140121

Excel入力シートタブ

「シートの取得」ボタンをクリック、「入力リスト」で対象のシートを選択。

43/91

Page 44: Pdi tutorial 20140121

Excel入力シートタブ

「開始レコード」「開始列」を指定。

44/91

Page 45: Pdi tutorial 20140121

Excel入力フィールドタブ

「フィールドの取得」ボタンをクリック。

45/91

Page 46: Pdi tutorial 20140121

プレビュー「プレビュー」ボタンをクリック。内容を確認して「閉じる」をクリック。

46/91

Page 47: Pdi tutorial 20140121

フィルター フィルターをダブルクリックして編集。

47/91

Page 48: Pdi tutorial 20140121

フィルター「フィルタ条件」に下記のように入力。「OK」をクリックして閉じる。

48/91

Page 49: Pdi tutorial 20140121

値マッピング値マッピングをダブルクリックして編集。

49/91

Page 50: Pdi tutorial 20140121

Excel出力「Excel出力」ステップをダブルクリックして編集。「ファイル名」を指定。

50/91

Page 51: Pdi tutorial 20140121

Excel出力フィールドタブ

フィールドタブを表示。「フィールドを取得」ボタンをクリック。

51/91

Page 52: Pdi tutorial 20140121

Excel出力フィールドタブ

フィールド名とデータタイプが取得される。OKボタンをクリック。

52/91

Page 53: Pdi tutorial 20140121

実行ツールバーの「実行」ボタンをクリック。「実行」をクリック。

53/91

Page 54: Pdi tutorial 20140121

保存 実行前にデータ変換を保存。

54/91

Page 55: Pdi tutorial 20140121

実行結果 実行結果を確認する。

55/91

Page 56: Pdi tutorial 20140121

出力されたファイル出力されたファイルをExcelで開いて確認する。

56/91

Page 57: Pdi tutorial 20140121

データ変換作成③

•Excelファイル入出力

•変換ステップとして「フィルター」「値マッピング」を使用

•サンプルデータとして、PDIのJIRA(バグ管理サイト)から出力したExcelファイルを使用

57/91

Page 58: Pdi tutorial 20140121

データ変換作成④

•DB入力

•DBはPostgresqlを利用

•サンプルデータは、pagilaというデータを使用

58/91

Page 59: Pdi tutorial 20140121

データベース接続作成ビュータブの「データベース接続」を右クリックして「新規」を選択。

59/91

Page 60: Pdi tutorial 20140121

データベース接続データベース接続を下記のように指定。

60/91

Page 61: Pdi tutorial 20140121

検索 「検索」ボタンをクリック。

61/91

Page 62: Pdi tutorial 20140121

最初の100行プレビュー任意のテーブルを右クリックして、「最初の100行プレビュー」を選択。

62/91

Page 63: Pdi tutorial 20140121

プレビュー プレビューが表示される。

63/91

Page 64: Pdi tutorial 20140121

ステップ配置 下記のようにステップを配置します。

64/91

Page 65: Pdi tutorial 20140121

テーブル入力テーブル入力を編集。「SQLの選択」ボタンをクリック。

65/91

Page 66: Pdi tutorial 20140121

データベースエクスプローラー

データベースエクスプローラーが表示されるので、任意のテーブルを選択。

66/91

Page 67: Pdi tutorial 20140121

テーブル入力 SQLが生成される。

67/91

Page 68: Pdi tutorial 20140121

テキストファイル出力「テキストファイル出力」ステップをダブルクリックして編集。

68/91

Page 69: Pdi tutorial 20140121

テキストファイル出力フィールドタブ

「フィールドを取得」をクリック。

69/91

Page 70: Pdi tutorial 20140121

実行 ツールバーから実行をクリック。

70/91

Page 71: Pdi tutorial 20140121

出力ファイル 出力ファイルを開いて内容を確認。

71/91

Page 72: Pdi tutorial 20140121

データ変換作成④

•DB入力

•DBはPostgresqlを利用

•サンプルデータは、pagilaというデータを使用

72/91

Page 73: Pdi tutorial 20140121

データ変換作成⑤

•DB出力

73/91

Page 74: Pdi tutorial 20140121

ステップ配置 下記の通りステップを配置する。

74/91

Page 75: Pdi tutorial 20140121

テキストファイル入力「テキストファイル入力」ステップで先ほど出力したファイルを指定。「プレビュー」ボタンをクリック。

75/91

Page 76: Pdi tutorial 20140121

プレビュー プレビューを確認。

76/91

Page 77: Pdi tutorial 20140121

テキストファイル入力全般タブ

全般タブで「入力タブ」ボタンをクリックしてタブを入力。

77/91

Page 78: Pdi tutorial 20140121

テキストファイル入力フィールドタブ

「フィールドを取得」をクリック。

78/91

Page 79: Pdi tutorial 20140121

走査した結果 走査した結果が表示される。

79/91

Page 80: Pdi tutorial 20140121

テーブル出力「テーブル出力」ステップを編集。テーブル名を指定。「列名を指定する」チェックボックスをONに。「フィールドを取得」ボタンをクリックして、フィールド欄に自動記入。「SQL」ボタンをクリック。

80/91

Page 81: Pdi tutorial 20140121

SQL文生成、実行CREATE TABLE文が生成される。「実行」ボタンをクリックして、出力先のテーブル作成。

81/91

Page 82: Pdi tutorial 20140121

フィールドマッピング「フィールドマッピング」ボタンをクリックして、マッピングの内容を確認。

82/91

Page 83: Pdi tutorial 20140121

実行ツールバーの「実行」をクリック。「実行」ボタンをクリック。

83/91

Page 84: Pdi tutorial 20140121

実行結果 実行結果が表示される。

84/91

Page 85: Pdi tutorial 20140121

照会DBに出力した内容を確認。ビュータブのデータベース接続から該当の接続を右クリックして、「照会」を選択。

85/91

Page 86: Pdi tutorial 20140121

データベースエクスプローラー

該当のテーブルを選択。

86/91

Page 87: Pdi tutorial 20140121

プレビュー該当のテーブルを右クリックして、「x行プレビュー」を選択。

87/91

Page 88: Pdi tutorial 20140121

プレビュー テーブルの内容が表示される。

88/91

Page 89: Pdi tutorial 20140121

データ変換作成⑤

•DB出力

89/91

Page 90: Pdi tutorial 20140121

まとめ

•ダウンロード

•起動

•プレビューと実行、ログ確認

•データ変換作成

– PDI版 Hello, world!

– テキストファイル入出力

– Excelファイル入出力

– DB入力

– DB出力

90/91

Page 91: Pdi tutorial 20140121

不明な点

•Pentahoのフォーラムへ

– 日本語でコミュニティー・サポート

http://forums.pentaho.com/forumdisplay.php?86

91/91