Azure Data Factory - как обрабатывать вложенные массивы внутри данных JSON для импорта в хранилище BLOB-объектов - PullRequest
0 голосов
/ 20 мая 2019

Я создаю конвейер для импорта данных JSON из источника REST в хранилище BLOB-объектов.Однако у меня есть проблема, потому что внутри массива есть вложенный массив, содержащий основные данные.

Данные JSON выглядят следующим образом:

{
  "@odata.context": "<Context>",
  "@odata.nextLink": "<Next Link>",
  "value": [
    {
      "@odata.type": "<Type>",
      "reportRefreshDate": "2019-05-18",
      "userPrincipalName": "abc@xyz.net",
      "displayName": "abc",
      "isDeleted": false,
      "deletedDate": null,
      "hasExchangeLicense": true,
      "hasOneDriveLicense": true,
      "hasSharePointLicense": true,
      "hasSkypeForBusinessLicense": true,
      "hasYammerLicense": true,
      "hasTeamsLicense": true,
      "exchangeLastActivityDate": "2019-05-17",
      "oneDriveLastActivityDate": null,
      "sharePointLastActivityDate": null,
      "skypeForBusinessLastActivityDate": null,
      "yammerLastActivityDate": null,
      "teamsLastActivityDate": null,
      "exchangeLicenseAssignDate": "2019-03-19",
      "oneDriveLicenseAssignDate": "2018-07-06",
      "sharePointLicenseAssignDate": "2018-07-06",
      "skypeForBusinessLicenseAssignDate": "2018-05-22",
      "yammerLicenseAssignDate": "2018-05-22",
      "teamsLicenseAssignDate": "2018-05-22",
      "assignedProducts": [
        "OFFICE 365 E3",
        "OFFICE 365 E5"
      ]
    }
  ]
}

Как вы могли заметить, внутри основного массива "value" есть вложенный массив с именем "assignProducts"

Я определил схему хранилища больших двоичных объектов следующим образом: enter image description here

И когда я определяю сопоставление между источником и приемником, я не могу отобразить вложенный массив, он выглядит следующим образом:

enter image description here

Насколько мне известно, можно сделать цикл для массива.Но для вложенного массива это кажется трудным.

Может ли кто-нибудь подсказать мне, что мне следует делать для обработки вложенного массива?Было бы даже здорово, если бы этот массив был преобразован в строку или что-то еще.

Заранее спасибо: -)

1 Ответ

0 голосов
/ 21 мая 2019

Я имитирую некоторые примеры данных, как у вас:

[  
   {  
      "numberArray":[  
         "1",
         "2",
         "3"
      ],
      "name":"A"
   },
   {  
      "numberArray":[  
         "4",
         "5",
         "6"
      ],
      "name":"B"
   }
]

Затем я настраиваю свой набор данных хранилища BLOB-объектов, как показано ниже, установите File Pattern как Array of Objects.

enter image description here

Результат:

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...