Azure Data Factory と Azure Synapse Analytics パイプラインの Filter アクティビティ
パイプラインでフィルター アクティビティを使用して、入力配列にフィルター式を適用することができます。
適用対象: Azure Data Factory Azure Synapse Analytics
ヒント
企業向けのオールインワン分析ソリューション、Microsoft Fabric の Data Factory をお試しください。 Microsoft Fabric は、データ移動からデータ サイエンス、リアルタイム分析、ビジネス インテリジェンス、レポートまで、あらゆるものをカバーしています。 無料で新しい試用版を開始する方法について説明します。
構文
{
"name": "MyFilterActivity",
"type": "filter",
"typeProperties": {
"condition": "<condition>",
"items": "<input array>"
}
}
UI を使用してフィルター アクティビティを作成する
パイプライン内でフィルター アクティビティを使用するには、次の手順を実行します。
フィルター条件の入力として、任意の配列型変数または他のアクティビティからの出力を使用できます。 配列変数を作成するには、パイプライン キャンバスの背景を選択し、[変数] タブを選択して、次に示すように配列型の変数を追加します。
パイプラインの [アクティビティ] ペイン内でフィルターを検索し、フィルター アクティビティをパイプライン キャンバスにドラッグします。
キャンバス上で新しいフィルター アクティビティ (まだ選ばれていない場合)、その [設定] タブの順に選んで、その詳細を編集します。
[項目] フィールドを選び、[動的なコンテンツの追加] リンクを選んで、動的コンテンツ エディター ペインを開きます。
動的コンテンツ エディターでフィルター処理する入力配列を選びます。 この例では、最初の手順で作成した変数を選びます。
上に示したように、もう一度動的コンテンツ エディターを使用して Condition プロパティのフィルター条件を指定します。
フィルター アクティビティからの出力を、ForEach アクティビティなどの他のアクティビティへの入力として使用できます。
型のプロパティ
プロパティ | 説明 | 使用できる値 | 必須 |
---|---|---|---|
name | Filter アクティビティの名前。 |
String | はい |
type | filter に設定する必要があります。 | String | はい |
condition | 入力のフィルター処理に使用する条件。 | Expression | はい |
items | フィルターを適用する必要がある入力配列。 | Expression | はい |
例
この例では、パイプラインに Filter および ForEach という 2 つのアクティビティが含まれています。 フィルター アクティビティは、3 より大きい値を持つ項目の入力配列をフィルター処理するように構成されています。 ForEach アクティビティは、フィルター処理された値を反復処理し、変数 test を現在の値に設定します。
{
"name": "PipelineName",
"properties": {
"activities": [{
"name": "MyFilterActivity",
"type": "filter",
"typeProperties": {
"condition": "@greater(item(),3)",
"items": "@pipeline().parameters.inputs"
}
},
{
"name": "MyForEach",
"type": "ForEach",
"dependsOn": [
{
"activity": "MyFilterActivity",
"dependencyConditions": [
"Succeeded"
]
}
],
"userProperties": [],
"typeProperties": {
"items": {
"value": "@activity('MyFilterActivity').output.value",
"type": "Expression"
},
"isSequential": "false",
"batchCount": 1,
"activities": [
{
"name": "Set Variable1",
"type": "SetVariable",
"dependsOn": [],
"userProperties": [],
"typeProperties": {
"variableName": "test",
"value": {
"value": "@string(item())",
"type": "Expression"
}
}
}
]
}
}],
"parameters": {
"inputs": {
"type": "Array",
"defaultValue": [1, 2, 3, 4, 5, 6]
}
},
"variables": {
"test": {
"type": "String"
}
},
"annotations": []
}
}
関連するコンテンツ
サポートされている他の制御フロー アクティビティを参照してください。