PentahoETLの基本処理パターン集【データ加工編3】（4/5）

## はじめに
本記事では、PentahoETLの基本的なデータ変換処理の実装例および各処理を実装するにあたっての注意点などを紹介します。全5回に分けて紹介する内、本記事は第4回目です。その他の回は以下のリンクからご参照ください。
[PentahoETLの基本処理パターン集【データ入力編】（1/5）](https://qiita.com/ryota_akai/items/e90879ae94a7fb9c2c6f)
[PentahoETLの基本処理パターン集【データ加工編1】（2/5）](https://qiita.com/ryota_akai/items/a910c35e89bce18d2a57)
[PentahoETLの基本処理パターン集【データ加工編2】（3/5）](https://qiita.com/ryota_akai/items/7963e2cdabe85033a1a7)
[PentahoETLの基本処理パターン集【データ出力編】（5/5）](https://qiita.com/ryota_akai/items/49fcca8c4095f77af3d4)

## 注記
・本記事は、PentahoETLについての製品利用の必要知識を有する方を対象が対象です。
・本書内の画面などについて、Pentahoのバージョンによっては本書の内容と異なる可能性があることにご注意ください。

## 用語説明
PentahoETLで利用する機能の用語を紹介します。
| # | 用語 | 処理単位 | 内容 |
|:----|:---------|:---------|:--------|
|①|ジョブ<br>Job|実行処理単位|一つもしくは複数のTransformationをコーディネートするものです。スケジューリングされて実行されます。|
|②|データ変換<br>Transformation|バッチ処理単位|ソースデータをInputし、変換処理を実行してターゲットデータをOutputする最小単位です。|
|③|ステップ<br>Step|処理の最小単位|事前に登録されている機能です。ステップのプロパティに具体的な値をいれることで要求する処理が実行されます。|

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3681459/d622ba53-199a-4c82-946c-a7a157262735.png)
## 基本処理パターン例の見方
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3681459/b7b31f09-563d-4630-a66b-2e3ca155ccd1.png)

## 処理パターンリスト
| # | 処理 | 使用ステップ |
|:----|:-------------|:-------------|
| 1 | [列結合](#1-列結合) | ・フィールド結合 |
| 2 | [列定数置換](#2-列定数置換) | ・定数追加<br>・選択/名前変更 |
| 3 | [数値によるグルーピング](#3-数値によるグルーピング) | ・数値範囲 |
| 4 | [変数付与](#4-変数付与) | ・定数取得 |
| 5 | [NULL直前値変換](#5-null直前値変換) | ・シーケンス追加<br>・グループ化 |
| 6 | [フィールド情報取得](#6-フィールド情報取得) | ・メタデータ構造 |
| 7 | [列値コピー](#7-列値コピー) | ・計算 |
| 8 | 累積集計<br>　1. [レコード間集計](#8-1-累積集計-レコード間集計)<br>　2. [カラム間集計](#8-2-累積集計-カラム間集計) | ・グループ化<br>・行正規化<br>・行非正規化 |
| 9 | [連続値グループフラグ付与](#9-連続値グループフラグ付与) | ・分析クエリー<br>・NULL値定数変換<br>・数式<br>・グループ化 |
| 10 | [マルチテーブルジョイン](#10-マルチテーブルジョイン) | ・多方向 Merge Join<br>・計算 |
| 11 | [時間差分計算](#11-時間差分計算) | ・計算<br>・数式 |
| 12 | [日付を年度、半期、四半期、年、月、日に分解](#12-日付を年度半期四半期年月日に分解) | ・計算<br>・数式 |
| 13 | [レコード毎に異なる行数複製](#13-レコード毎に異なる行数複製) | ・行複製 |
| 14 | [データ検証](#14-データ検証) | ・データ検証 |

### 1. 列結合
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3681459/c7ea87e3-af90-4ee2-aed0-1e99722066b9.png)

### 2. 列定数置換
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3681459/54051742-daed-4674-ad4c-a13a689660ee.png)

### 3. 数値によるグルーピング
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3681459/75ad7372-3517-419d-bc75-044503d71baa.png)

### 4. 変数付与
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3681459/cc0d56b5-6beb-45ea-9729-1c43ce1d9636.png)

### 5. NULL直前値変換
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3681459/976d863f-29dd-4dd6-b14a-d95acc3fb5ae.png)

### 6. フィールド情報取得
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3681459/a64cce41-bb43-42cb-8dbb-585d1421188d.png)

### 7. 列値コピー
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3681459/f81426fb-3639-45dd-b195-be21672acf04.png)

### 8-1. 累積集計 レコード間集計
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3681459/b9ad52e1-4c54-43cd-a962-da7d9044494f.png)

### 8-2. 累積集計 カラム間集計
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3681459/b53da630-6c25-459b-b456-7949d078dfbc.png)

### 9. 連続値グループフラグ付与
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3681459/4e815ef1-37ab-4010-9b78-f3b360515179.png)


### 10. マルチテーブルジョイン
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3681459/fd712901-217c-4c88-ac35-74ead6409ff4.png)

### 11. 時間差分計算
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3681459/ba912649-4db7-4d08-a3eb-40ddf1f1f9ea.png)

### 12. 日付を年度、半期、四半期、年、月、日に分解
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3681459/21530188-a216-46e2-a0e4-989c6c41d0ff.png)

### 13. レコード毎に異なる行数複製
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3681459/e315b5ac-ba00-4a99-8905-27b841b6a62d.png)

### 14. データ検証
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3681459/73a51633-4e03-4a99-ad78-94a5f221704a.png)

## まとめ
今回はPentahoETLの基本処理パターン データ加工編3を紹介しました。
基本処理パターンは他の記事でも紹介しておりますので、ぜひご参照ください。

## 他社商品名、商標等の引用に関する表示
HITACHIは，株式会社 日立製作所の商標または登録商標です。
Pentahoは、Hitachi Vantara LLCの商標または登録商標です。
その他記載の会社名，製品名などは，それぞれの会社の商標もしくは登録商標です。