データセットを作成する
データセットとは、アクティビティで入力と出力として使用するデータを単に指定または参照するデータの名前付きビューです。 データセットは、テーブル、ファイル、フォルダー、ドキュメントなど、さまざまなデータ ストア内のデータを示します。 たとえば、Azure Blob データセットは、アクティビティによってデータが読み取られる、Blob Storage 内の BLOB コンテナーと BLOB フォルダーを示しています。
Data Factory のデータセットは、次のように、データのコピー アクティビティ内のオブジェクトとして、個別のオブジェクトとして、またはプログラムで作成するための JSON 形式で定義できます。
{
"name": "<name of dataset>",
"properties": {
"type": "<type of dataset: AzureBlob, AzureSql etc...>",
"linkedServiceName": {
"referenceName": "<name of linked service>",
"type": "LinkedServiceReference",
},
"schema": [
{
"name": "<Name of the column>",
"type": "<Name of the type>"
}
],
"typeProperties": {
"<type specific property>": "<value>",
"<type specific property 2>": "<value 2>",
}
}
}
次の表では、上記の JSON のプロパティについて説明します。
プロパティ | Description | 必須 |
---|---|---|
name | データセットの名前。 | はい |
type | データセットの型。 Data Factory でサポートされている型のいずれかを指定します (たとえば、AzureBlob、AzureSqlTable)。 | はい |
スキーマ | データセットのスキーマ。 | いいえ |
typeProperties | 型のプロパティは型によって異なります (たとえば、Azure Blob、Azure SQL テーブル)。 | はい |
データセットの例
Azure BLOB
この手順では、InputDataset と OutputDataset。 これらのデータセットの種類は、Binary です。 これらは、AzureStorageLinkedService という名前の Azure Storage リンク サービスを指しています。 入力データセットは、入力フォルダーのソース データを表します。 入力データセットの定義では、ソース データを格納している BLOB コンテナー (adftutorial)、フォルダー (input)、およびファイル (emp.txt) を指定します。 出力データセットは、ターゲットにコピーされるデータを表します。 出力データセットの定義では、データのコピー先の BLOB コンテナー (adftutorial)、フォルダー (output)、およびファイルを指定します。
デスクトップで、C ドライブに ADFv2QuickStartPSH という名前のフォルダーを作成します。
以下の内容で InputDataset.json という名前の JSON ファイルを C:\ADFv2QuickStartPSH フォルダー内に作成します。
{ "name": "InputDataset", "properties": { "linkedServiceName": { "referenceName": "AzureStorageLinkedService", "type": "LinkedServiceReference" }, "annotations": [], "type": "Binary", "typeProperties": { "location": { "type": "AzureBlobStorageLocation", "fileName": "emp.txt", "folderPath": "input", "container": "adftutorial" } } } } ```
データセット InputDataset を作成するには、Set-AzDataFactoryV2Dataset コマンドレットを実行します。
Set-AzDataFactoryV2Dataset -DataFactoryName $DataFactory.DataFactoryName ` -ResourceGroupName $ResGrp.ResourceGroupName -Name "InputDataset" ` -DefinitionFile ".\InputDataset.json"
出力例を次に示します。
DatasetName : InputDataset ResourceGroupName : <resourceGroupname> DataFactoryName : <dataFactoryName> Structure : Properties : Microsoft.Azure.Management.DataFactory.Models.BinaryDataset
手順を繰り返して、出力データセットを作成します。 以下の内容を記述した OutputDataset.json という名前の JSON ファイルを C:\ADFv2QuickStartPSH フォルダー内に作成します。
{ "name": "OutputDataset", "properties": { "linkedServiceName": { "referenceName": "AzureStorageLinkedService", "type": "LinkedServiceReference" }, "annotations": [], "type": "Binary", "typeProperties": { "location": { "type": "AzureBlobStorageLocation", "folderPath": "output", "container": "adftutorial" } } } }
Set-AzDataFactoryV2Dataset コマンドレットを実行して、OutDataset を作成します。
Set-AzDataFactoryV2Dataset -DataFactoryName $DataFactory.DataFactoryName ` -ResourceGroupName $ResGrp.ResourceGroupName -Name "OutputDataset" ` -DefinitionFile ".\OutputDataset.json"
出力例を次に示します。
DatasetName : OutputDataset ResourceGroupName : <resourceGroupname> DataFactoryName : <dataFactoryName> Structure : Properties : Microsoft.Azure.Management.DataFactory.Models.BinaryDataset