集計処理

オペレーション名

集計

機能概要

入力データを集計します。

データモデル

本コンポーネントのデータモデルはテーブルモデル型です。

= 備考 =

入出力のスキーマについては、「テーブルモデル型 」を参照してください。

プロパティ

基本設定

項目名

必須/省略可

変数の使用

説明

備考

名前

必須

使用不可

スクリプトキャンバス上での名前を入力します。

 

入力データ

必須

使用不可

スクリプトキャンバス上にあるコンポーネントを選択します。

 

必須設定

項目名

必須/省略可

変数の使用

説明

備考

グループキー設定

省略可

-

集計処理のキーとなる列を指定します。

各列は以下のボタンで操作することができます。

[追加]

キーを追加します。

[削除]

キーを削除します。

  • キーとなる列を複数指定した場合は、キーとなる列の値の組み合わせをもとに入力データをグループ分けして、グループごとで集計します。

  • キーを指定しない場合は、すべての入力データを同じグループとして集計します。

注意

データ型がbyte[]型の列を指定して集計することはできません。

グループキー設定/列名

必須

使用不可

キーとなる列の列名を選択します。

  • 列名の後ろに順序を表すインデックスを表示します。

  • [入力データ]の値を選択・変更した場合、列名は更新されます。

集計設定

項目名

必須/省略可

変数の使用

説明

備考

集計対象設定

省略可

-

集計対象となる列と集計関数を指定します。

各列は以下のボタンで操作することができます。

[追加]

集計対象を追加します。

[削除]

集計対象を削除します。

 

集計対象設定/列名

必須

使用不可

集計対象となる列の列名を選択します。

  • 列名の後ろに順序を表すインデックスを表示します。

  • [入力データ]の値を選択・変更した場合、列名は更新されます。

  • [グループキー設定/列名]に設定した列名は選択肢として表示されません。

集計対象設定/関数

必須

使用不可

集計対象を処理するための集計関数を選択します。

  • [集計対象設定/列名]を選択した場合、有効になります。

  • [集計対象設定/列名]に指定した列のデータ型に適用可能な集計関数のみが表示されます。

  • 詳細については、「集計関数について」を参照してください。

出力設定

項目名

必須/省略可

変数の使用

説明

備考

出力を手動で設定

省略可

使用不可

出力対象となる列または集計結果を手動で設定するかどうかを選択します。

[チェックあり]

出力対象を手動で設定します。

[チェックなし]

(デフォルト)

指定済みのプロパティ項目の内容に応じて、出力対象を自動的に設定します。

  • チェックを入れない場合、出力対象は以下の順序になります。

    1. [グループキー設定]の設定順序

    2. [集計対象設定]の設定順序

    3. [集計件数]

出力対象設定

省略可

-

出力対象となる列または集計結果を指定します。

各列は以下のボタンで操作することができます。

[上へ]

出力対象の出力順を1列分上に移動します。

[下へ]

出力対象の出力順を1列分下に移動します。

[追加]

出力対象を追加します。

[削除]

出力対象を削除します。

  • [出力を手動で設定]にチェックを入れた場合、有効になります。

出力対象設定/データ元

必須

使用不可

出力対象のデータ元を選択します。

[<グループキー設定/列名>]

グループキーとなる列を出力します。

[<集計対象設定/列名>] の [<集計対象設定/関数>]

集計対象となる列の集計結果を出力します。

[集計件数]

同じ集計グループに属するデータ件数を出力します。

  • 列名の後ろに順序を表すインデックスを表示します。

  • [入力データ]の値を選択・変更した場合、列名は更新されます。

  • 出力列の内部データ型は選択したデータ元に依存します。

    • [<グループキー設定/列名>]:入力データ型と同じ

    • [<集計対象設定/列名>] の [<集計対象設定/関数>]:集計結果のデータ型

    • [集計件数]:int型

  • 集計結果の詳細については、「集計関数について」を参照してください。

コメント

項目名

必須/省略可

変数の使用

説明

備考

コメント

省略可

使用不可

このコネクターの簡単な説明を記述することができます。

 

スキーマ

入力スキーマ

入力元コンポーネントのスキーマと同じです。

出力スキーマ

[出力設定]の設定により、カラム数が異なります。

= 備考 =

スキーマ構造については、「テーブルモデル型 」を参照してください。

Mapperでのスキーマ読み込み

出力スキーマは自動で読み込まれますが、入力スキーマは手動で読み込む必要があります。

読み取りを行うデータのスキーマを指定してください。

= 備考 =

詳細については、「スキーマ編集」を参照してください。

大容量データ処理

大容量データ処理には対応していません。

PSPでの使用について

PSPでは使用できません。

使用できるコンポーネント変数

コンポーネント変数名

説明

備考

message_category

エラー発生時、発生したエラーに対応するメッセージコードのカテゴリが格納されます。

  • デフォルト値はnullです。

message_code

エラー発生時、発生したエラーに対応するメッセージコードのコードが格納されます。

  • デフォルト値はnullです。

message_level

エラー発生時、発生したエラーに対応するメッセージコードの重要度が格納されます。

  • デフォルト値はnullです。

error_type

エラー発生時、発生したエラーの種類が格納されます。

  • デフォルト値はnullです。

  • エラーの種類は、以下のような形式となります。

    例:「java.io.FileNotFoundException」

error_message

エラー発生時、発生したエラーのメッセージが格納されます。

  • デフォルト値はnullです。

error_trace

エラー発生時、発生したエラーのトレース情報が格納されます。

  • デフォルト値はnullです。

入力元コンポーネントのスキーマ変更について

  • [入力データ]に指定したコンポーネントのスキーマを変更した場合、集計処理にその変更を反映させるため、集計処理のプロパティ設定ダイアログを開いて[完了]ボタンをクリックしてください。

  • [入力データ]に指定したコンポーネントのスキーマ構造を変更(スキーマの要素の順序変更や削除など)した場合、[グループキー設定/列名][集計対象設定/列名][出力対象設定/データ元]の設定も合わせて変更する必要があります。

    これは、集計処理が列情報を名前ではなく順序(インデックス)で保持しているためです。

nullと空文字について

  • [グループキー設定]で指定した列の値にnullまたは空文字が存在する場合、nullまたは空文字をグループキーの値として処理します。

  • [集計対象設定]で以下の集計関数を指定している列の値にnullまたは空文字が存在する場合、エラーが発生します。

    • 合計値

    • 最小値(数値)

    • 最大値(数値)

    • 最小値(日付/時間)

    • 最大値(日付/時間)

集計関数について

集計関数は性質上、一部の処理に入力として使用可能なデータ型に制限があります。また、集計結果のデータ型が入力と異なる場合があります。

= 備考 =

データ型の詳細については、「データ型」を参照してください。

集計関数

説明

入力のデータ型使用可否

集計結果のデータ型

byte

short

int

long

float

double

BigDecimal

boolean

String

Date

byte[]

ユニーク件数

ユニーク値の数を集計します。

×

int

最初の値

最初の値を抽出します。

入力のデータ型

最後の値

最後の値を抽出します。

入力のデータ型

最初の非NULL値

最初のNULLでない値を抽出します。

入力のデータ型

最後の非NULL値

最後のNULLでない値を抽出します。

入力のデータ型

合計値

数値として合計値を計算します。

×

×

×

BigDecimal

最小値(数値)

数値として最小値を抽出します。

×

×

×

入力のデータ型

最大値(数値)

数値として最大値を抽出します。

×

×

×

入力のデータ型

最小値(日付/時間)

日時としてもっとも早い値を抽出します。

×

×

×

×

×

×

×

×

×

入力のデータ型

最大値(日付/時間)

日時としてもっとも遅い値を抽出します。

×

×

×

×

×

×

×

×

×

入力のデータ型

  • 表の見方

    マーク

    説明

    入力として使用できます。

    ×

    入力として使用できません。

= 備考 =

内部データ型のcharはStringとして扱います。

仕様制限

  • 並列処理をサポートしています。

    = 備考 =

    並列処理の仕様制限については、「仕様制限」を参照してください。

  • [グループキー設定][集計対象設定]、および[出力対象設定]を指定する際には、入力元コンポーネントの出力スキーマが設定されている必要があります。

    スキーマを手動で設定するコンポーネントの場合は、Mapperでスキーマを読み込んでください。

  • 集計処理の結果データの順序は保証されません。

  • 入力元のコンポーネントが大容量データ処理を行う場合でも、集計処理では一時的にデータをメモリ中に保持します。

    そのためデータが大きい場合には、大容量データ処理時にもOutOfMemoryErrorが発生する可能性があります。

例外メッセージ

例外名

原因

対策

InputDataNotFoundException

[入力データ]が指定されていません。

[入力データ]を指定する、またはデータフローを引いてください。

InvalidInputTypeException

[入力データ]がテーブルモデル型ではありません。

[入力データ]がテーブルモデル型かどうかを確認してください。

InvalidPropertyConfigurationException

<プロパティ名>に値が指定されていません。

[<プロパティ名>]に値が指定されていません。

[<プロパティ名>]を指定してください。

InvalidPropertyConfigurationException

<プロパティ名1>の[<行番号>]行目の[<プロパティ名2>]に値が指定されていません。

[<プロパティ名2>]に値が指定されていません。

[<プロパティ名2>]を指定してください。

InvalidPropertyConfigurationException

<プロパティ名>の[<行番号>]行目に指定された値が重複しています。

[<プロパティ名>]に指定した値が重複しています。

[<プロパティ名>]に指定した値が適切かどうかを確認してください。

ConversionFailedException

列の値を集計対象として処理できません。

入力データの内容に、[集計対象設定]に指定したとおりに処理できない値が含まれています。

入力データが[集計対象設定]に指定した内容に適合するかどうか、またはnullや空文字が含まれているかどうかを確認してください。