Azure / Azure/Azure-DataFactory

How to transform complex json files using ADF

Aperta
#359 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub
Lingua principale
PowerShell
Stelle
529
Fork
623
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Descrizione

I want to transform multiple complex JSON files into one complex JSON file using Azure Data Factory dataflow.

The multiple complex input JSON files are in the following format:
```json
{
"creationDate": "2022-01-19T17:00:17Z",
"count": 2,
"data": [
{
"id": "",
"name": "Project A",
"url": "",
"state": "Open",
"revision": 1,
"visibility": "private",
"lastUpdateTime": "2019-09-23T08:44:45.103Z"
},
{
"id": "",
"name": "Project B",
"url": "",
"state": "Done",
"revision": 1,
"visibility": "private",
"lastUpdateTime": "2019-12-31T09:38:49.16Z"
}
]
}
```

We want to transform those files to one single json file in the format:
```json
[
{
"date": "2022-01-14",
"count": 2,
"projects": [
{
"name": "Project A",
"state": "",
"lastUpdateTime": ""
},
{
"name": "Project B",
"state": "",
"lastUpdateTime": ""
}
]
},
{
"date": "2022-01-17",
"count": 3,
"projects": [
{
"name": "Project A",
"state": "",
"lastUpdateTime": ""
},
{
"name": "Project B",
"state": "",
"lastUpdateTime": ""
},
{
"name": "Project C",
"state": "",
"lastUpdateTime": ""
}
]
}
]
```

We were using the derived column with the expression `@(name=data.name, state=data.state)`.
[![enter image description here][1]][1]

Can someone help us how to do this? We tried a lot of things like derived column, first flattening but we can't get it as we like...

Thanks!

[1]: https://i.stack.imgur.com/GubnH.png

Guida per i contributori

Apri la guida per i contributori

Direzione di ricerca

Inizia esaminando le trasformazioni del flusso di dati di Azure Data Factory, in particolare Derived Column e Flatten, confrontandole con il JSON di input e output di esempio. Determina come combinare più file, preservare i campi date e count esterni e costruire l'array projects annidato; il lavoro è completato quando si ottiene un array JSON valido corrispondente al formato richiesto. Non sono indicati file del repository né test, quindi è necessaria un'indagine specifica di ADF anziché una modifica al codice.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
azure
Ambito
cloud, data-engineering
Tipo di issue
Funzionalità
Difficoltà
5/5
Tempo stimato
Più di una settimana
Stato di attività
Ferma
Chiarezza
Da chiarire
Idoneità per principianti
25/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.