次の方法で共有


Microsoft Fabric の Data Factory での JSON 形式

この記事では、Microsoft Fabric で Data Factory のデータ パイプラインでの JSON 形式を構成する方法の概要を示します。

サポートされる機能

JSON 形式は、次のアクティビティとコネクタでソースとコピー先としてサポートされています。

カテゴリ コネクタ/アクティビティ
サポートされているコネクタ Amazon S3
Amazon S3 互換
Azure Blob Storage
Azure Data Lake Storage Gen1
Azure Data Lake Storage Gen2
Azure Files
ファイル システム
FTP
Google Cloud Storage
HTTP
レイクハウス ファイル
Oracle Cloud Storage
SFTP
サポートされているアクティビティ Copy アクティビティ (コピー元/コピー先)
Lookup アクティビティ
GetMetadata アクティビティ
アクティビティを削除する

Copy アクティビティでの JSON 形式

JSON 形式を構成するには、データ パイプラインの Copy アクティビティのソースまたはコピー先で接続を選び、[ファイル形式] のドロップダウン リストで [JSON] を選びます。 この形式をさらに構成するには、[設定] を選択します。

ファイル形式の設定を示すスクリーンショット。

ソースとしての JSON 形式

[ファイル形式] セクションで [設定] を選択すると、ポップアップの [File format settings] (ファイル形式設定) ダイアログ ボックスに以下のプロパティが表示されます。

JSON ファイル形式のソースを示すスクリーンショット。

  • [圧縮の種類]: JSON ファイルの読み取りに使う圧縮コーデックをドロップダウン リストで選びます。 [なし][bzip2][gzip][deflate][ZipDeflate][TarGzip][tar] から選べます。

    圧縮の種類として [ZipDeflate] を選択した場合、[ソース] タブの [詳細設定][Preserve zip file name as folder] (ZIP ファイル名をフォルダーとして保持する) が表示されます。

    • [Preserve zip file name as folder] (ZIP ファイル名をフォルダーとして保持する): コピー時にソースの ZIP ファイル名をフォルダー構造として保持するかどうかを指定します。
      • このボックスがオン (既定値) の場合、解凍されたファイルはサービスによって <specified file path>/<folder named as source zip file>/ に書き込まれます。
      • このボックスがオフの場合、解凍されたファイルはサービスによって <specified file path> に直接書き込まれます。 競合または予期しない動作を避けるために、異なるソース ZIP ファイルに重複したファイル名がないことを確認します。

    圧縮の種類として [TarGzip/tar] を選択した場合、[ソース] タブの [詳細設定][Preserve compression file name as folder] (圧縮ファイル名をフォルダーとして保持する) が表示されます。

    • [Preserve compression file name as folder] (圧縮ファイル名をフォルダーとして保持する): コピー時にソースの圧縮ファイル名をフォルダー構造として保持するかどうかを指定します。
      • このボックスがオン (既定値) の場合、圧縮解除されたファイルがサービスによって <specified file path>/<folder named as source compressed file>/ に書き込まれます。
      • このボックスがオフの場合、圧縮解除されたファイルがサービスによって <specified file path> に直接書き込まれます。 競合または予期しない動作を避けるために、異なるソース ファイルに重複したファイル名がないことを確認します。
  • 圧縮レベル: 圧縮率です。 [最速] または [最適] から選べます。

    • 最速: 圧縮操作は可能な限り短時間で完了しますが、生成ファイルが最適に圧縮されない場合があります。

    • Optimal:圧縮操作で最適に圧縮されますが、操作が完了するまでに時間がかかる場合があります。 詳細については、圧縮率に関する記事を参照してください。

  • [エンコード]: テスト ファイルの読み取りに使うエンコードの種類を指定します。 ドロップダウン リストから種類を 1 つ選びます。 既定値は UTF-8です。

コピー先としての JSON 形式

[設定] を選択すると、[File format settings] (ファイル形式設定) ダイアログ ボックスに以下のプロパティが表示されます。

JSON ファイル形式のコピー先を示すスクリーンショット。

  • [圧縮の種類]: JSON ファイルの書き込みに使う圧縮コーデックをドロップダウン リストで選びます。 [なし][bzip2][gzip][deflate][ZipDeflate][TarGzip][tar] から選べます。

  • 圧縮レベル: 圧縮率です。 [最適] または [最速] から選択できます。

    • 最速: 圧縮操作は可能な限り短時間で完了しますが、生成ファイルが最適に圧縮されない場合があります。

    • Optimal:圧縮操作で最適に圧縮されますが、操作が完了するまでに時間がかかる場合があります。 詳細については、圧縮率に関する記事を参照してください。

  • [エンコード]: テスト ファイルの書き込みに使うエンコードの種類を指定します。 ドロップダウン リストから種類を 1 つ選びます。 既定値は UTF-8です。

[コピー先] タブの [詳細] 設定に、次の JSON 形式の関連プロパティが表示されます。

  • [ファイルのパターン]: 各 JSON ファイルに格納されるデータのパターンを指定します。 指定できる値は、[Set of objects] (オブジェクトのセット) (JSON 行) と [Array of objects] (オブジェクトの配列) です。 既定値は [Set of objects] (オブジェクトのセット) です。 これらのパターンの詳細については、「JSON ファイルのパターン」セクションを参照してください。

JSON ファイルのパターン

JSON ファイルからデータをコピーする場合、コピー アクティビティでは、JSON ファイルの以下のパターンを自動的に検出および解析することができます。 データを JSON ファイルに書き込むときに、Copy アクティビティのコピー先でファイル パターンを構成できます。

  • タイプ I: setOfObjects

    各ファイルには、単一のオブジェクト、JSON 行、または連結されたオブジェクトが含まれます。

    • 単一オブジェクトの JSON の例

      {
          "time": "2015-04-29T07:12:20.9100000Z",
          "callingimsi": "466920403025604",
          "callingnum1": "678948008",
          "callingnum2": "567834760",
          "switch1": "China",
          "switch2": "Germany"
      }
      
    • JSON 行 (コピー先の既定値)

      {"time":"2015-04-29T07:12:20.9100000Z","callingimsi":"466920403025604","callingnum1":"678948008","callingnum2":"567834760","switch1":"China","switch2":"Germany"}
      {"time":"2015-04-29T07:13:21.0220000Z","callingimsi":"466922202613463","callingnum1":"123436380","callingnum2":"789037573","switch1":"US","switch2":"UK"}
      {"time":"2015-04-29T07:13:21.4370000Z","callingimsi":"466923101048691","callingnum1":"678901578","callingnum2":"345626404","switch1":"Germany","switch2":"UK"}
      
    • 連結 JSON の例

      {
          "time": "2015-04-29T07:12:20.9100000Z",
          "callingimsi": "466920403025604",
          "callingnum1": "678948008",
          "callingnum2": "567834760",
          "switch1": "China",
          "switch2": "Germany"
      }
      {
          "time": "2015-04-29T07:13:21.0220000Z",
          "callingimsi": "466922202613463",
          "callingnum1": "123436380",
          "callingnum2": "789037573",
          "switch1": "US",
          "switch2": "UK"
      }
      {
          "time": "2015-04-29T07:13:21.4370000Z",
          "callingimsi": "466923101048691",
          "callingnum1": "678901578",
          "callingnum2": "345626404",
          "switch1": "Germany",
          "switch2": "UK"
      }
      
  • タイプ II: arrayOfObjects

    各ファイルにはオブジェクトの配列が含まれます。

    [
        {
            "time": "2015-04-29T07:12:20.9100000Z",
            "callingimsi": "466920403025604",
            "callingnum1": "678948008",
            "callingnum2": "567834760",
            "switch1": "China",
            "switch2": "Germany"
        },
        {
            "time": "2015-04-29T07:13:21.0220000Z",
            "callingimsi": "466922202613463",
            "callingnum1": "123436380",
            "callingnum2": "789037573",
            "switch1": "US",
            "switch2": "UK"
        },
        {
            "time": "2015-04-29T07:13:21.4370000Z",
            "callingimsi": "466923101048691",
            "callingnum1": "678901578",
            "callingnum2": "345626404",
            "switch1": "Germany",
            "switch2": "UK"
        }
    ]
    

表の概要

ソースとしての JSON

JSON 形式を使う場合、Copy アクティビティの [ソース] セクションでは、次のプロパティがサポートされます。

名前 Description Value 必須 JSON スクリプト プロパティ
ファイル形式 使用するファイル形式。 JSON はい type ("datasetSettings の下"):
JSON
[圧縮の種類] JSON ファイルの読み取りに使われる圧縮コーデック。 次から選択してください。
なし
bzip2
gzip
deflate
ZipDeflate
TarGzip
tar
いいえ type ("compression の下"):

bzip2
gzip
deflate
ZipDeflate
TarGzip
tar
圧縮レベル 圧縮率です。 Fastest
Optimal
いいえ level ("compression の下"):
Fastest
最適
[エンコード] テスト ファイルの読み取りに使われるエンコードの種類。 "UTF-8" (既定値)、"BOM なしの UTF-8"、"UTF-16LE"、"UTF-16BE"、"UTF-32LE"、"UTF-32BE"、"US-ASCII"、"UTF-7"、"BIG5"、"EUC-JP"、"EUC-KR"、"GB2312"、"GB18030"、"JOHAB"、"SHIFT-JIS"、"CP875"、"CP866"、"IBM00858"、"IBM037"、"IBM273"、"IBM437"、"IBM500"、"IBM737"、"IBM775"、"IBM850"、"IBM852"、"IBM855"、"IBM857"、"IBM860"、"IBM861"、"IBM863"、"IBM864"、"IBM865"、"IBM869"、"IBM870"、"IBM01140"、"IBM01141"、"IBM01142"、"IBM01143"、"IBM01144"、"IBM01145"、"IBM01146"、"IBM01147"、"IBM01148"、"IBM01149"、"ISO-2022-JP"、"ISO-2022-KR"、"ISO-8859-1"、"ISO-8859-2"、"ISO-8859-3"、"ISO-8859-4"、"ISO-8859-5"、"ISO-8859-6"、"ISO-8859-7"、"ISO-8859-8"、"ISO-8859-9"、"ISO-8859-13"、"ISO-8859-15"、"WINDOWS-874"、"WINDOWS-1250"、"WINDOWS-1251"、"WINDOWS-1252"、"WINDOWS-1253"、"WINDOWS-1254"、"WINDOWS-1255"、"WINDOWS-1256"、"WINDOWS-1257"、"WINDOWS-1258" なし encodingName
Preserve zip file name as folder (ZIP ファイル名をフォルダーとして保持する) コピー時にソースの ZIP ファイル名をフォルダー構造として保持するかどうかを指定します。 オン (既定値) またはオフ いいえ preserveZipFileNameAsFolder
("compressionProperties->type の下に ZipDeflateReadSettings として"):
true (既定値) または false
Preserve compression file name as folder (圧縮ファイル名をフォルダーとして保持する) コピー時にソースの圧縮ファイル名をフォルダー構造として保持するかどうかを指定します。 オン (既定値) またはオフ いいえ preserveCompressionFileNameAsFolder
("compressionProperties->type の下に TarGZipReadSettings または TarReadSettings として"):
true (既定値) または false

コピー先としての JSON

JSON 形式を使う場合、Copy アクティビティの [コピー先] セクションでは、次のプロパティがサポートされます。

名前 Description Value 必須 JSON スクリプト プロパティ
ファイル形式 使用するファイル形式。 JSON はい type ("datasetSettings の下"):
JSON
[圧縮の種類] JSON ファイルの書き込みに使われる圧縮コーデック。 次から選択してください。
なし
bzip2
gzip
deflate
ZipDeflate
TarGzip
tar
いいえ type ("compression の下"):

bzip2
gzip
deflate
ZipDeflate
TarGzip
tar
圧縮レベル 圧縮率です。 Fastest
Optimal
いいえ level ("compression の下"):
Fastest
最適
[エンコード] テスト ファイルの書き込みに使われるエンコードの種類。 "UTF-8" (既定値)、"BOM なしの UTF-8"、"UTF-16LE"、"UTF-16BE"、"UTF-32LE"、"UTF-32BE"、"US-ASCII"、"UTF-7"、"BIG5"、"EUC-JP"、"EUC-KR"、"GB2312"、"GB18030"、"JOHAB"、"SHIFT-JIS"、"CP875"、"CP866"、"IBM00858"、"IBM037"、"IBM273"、"IBM437"、"IBM500"、"IBM737"、"IBM775"、"IBM850"、"IBM852"、"IBM855"、"IBM857"、"IBM860"、"IBM861"、"IBM863"、"IBM864"、"IBM865"、"IBM869"、"IBM870"、"IBM01140"、"IBM01141"、"IBM01142"、"IBM01143"、"IBM01144"、"IBM01145"、"IBM01146"、"IBM01147"、"IBM01148"、"IBM01149"、"ISO-2022-JP"、"ISO-2022-KR"、"ISO-8859-1"、"ISO-8859-2"、"ISO-8859-3"、"ISO-8859-4"、"ISO-8859-5"、"ISO-8859-6"、"ISO-8859-7"、"ISO-8859-8"、"ISO-8859-9"、"ISO-8859-13"、"ISO-8859-15"、"WINDOWS-874"、"WINDOWS-1250"、"WINDOWS-1251"、"WINDOWS-1252"、"WINDOWS-1253"、"WINDOWS-1254"、"WINDOWS-1255"、"WINDOWS-1256"、"WINDOWS-1257"、"WINDOWS-1258" なし encodingName
ファイル パターン 各 JSON ファイルに格納されたデータのパターンを示します。 オブジェクトのセット
オブジェクトの配列
いいえ filePattern:
setOfObjects
arrayOfObjects