Міндет және алғышарттар
Баған реті өзгеше болса да, екі сатылым жиынын атаулар бойынша бір кестеге біріктіру.
Бұл мысал демонстрациялық деректер мен баптауларды қолданады. Өндірістік қабылдаушыларды қоспас бұрын күтілетін нәтижені өз ортаңызда тексеріңіз. Мына идентификаторлар: demo_* мысал ретінде берілген: редакторда өз оқу қосылымдарыңызды немесе дереккөздеріңізді таңдаңыз. Төмендегі JSON дайын тасымалдау архивін емес, блоктар мен байланыстар құрылымын көрсетеді.
Оқу кіріс деректері
north.csv
Branch;Amount
North;100
North;40
south.csv
Amount;Branch
80;South
Блоктар, байланыстар және нақты баптаулар
09-мысал құрылымы: 4 блок, 3 байланыс. Бапталған графтың түйін идентификаторлары мен порттары сақталған.
Конструкторға көрсетілген блоктарды қосып, әрқайсының қасиеттерін ашыңыз және осы мәндерді орнатыңыз. Мына атаулар: demo_* оқу дереккөздері мен қосылымдарын анықтайды.
| Блок | Баптау |
|---|---|
| 1 Файл north |
|
| 2 Файл south |
|
| 3 Union — жолдарды біріктіру union |
|
| 4 Деректер экспорты out |
|
Порт байланыстары
- north
out→ unionnorth - south
out→ unionsouth - union
out→ outin
JSON түріндегі толық граф конфигурациясы
{
"version": 3,
"nodes": [
{
"id": "north",
"type": "file",
"label": "north",
"config": {
"role": "source",
"source_id": "demo_north",
"options": {
"sheet": "CSV",
"range": "A1:B3",
"header": true,
"delimiter": ";"
}
}
},
{
"id": "south",
"type": "file",
"label": "south",
"config": {
"role": "source",
"source_id": "demo_south",
"options": {
"sheet": "CSV",
"range": "A1:B2",
"header": true,
"delimiter": ";"
}
}
},
{
"id": "union",
"type": "union",
"label": "union",
"config": {
"inputs": [
{
"id": "north",
"label": "Північ"
},
{
"id": "south",
"label": "Південь"
}
],
"mode": "by_name"
}
},
{
"id": "out",
"type": "export",
"label": "out",
"config": {
"format": "csv",
"filename": "all_branches",
"destination": "download",
"delimiter": ";",
"timezone": "Europe/Kyiv"
}
}
],
"edges": [
{
"source": "north",
"target": "union",
"source_port": "out",
"target_port": "north"
},
{
"source": "south",
"target": "union",
"source_port": "out",
"target_port": "south"
},
{
"source": "union",
"target": "out",
"source_port": "out",
"target_port": "in"
}
]
}Күтілетін нәтиже
| Branch | Amount |
|---|---|
| North | 100 |
| North | 40 |
| South | 80 |
Union жолдарды қосады; Amount сомасын есептемейді және қайталанымдарды жоймайды. Нәтиже — жалпы сомасы 220 болатын 3 жол.
Іске қосу және тексеру
- Баған реті әртүрлі файлдарды қолмен реттемей жүктеңіз.
- Union ішінде by_name және north/south екі бөлек кірісті таңдаңыз.
- South мәні Branch, 80 мәні Amount ішінде екенін тексеріңіз.
Жиі қателер
- mode=position орындарды сәйкестендіреді және бұл жиында бағандардың мағынасын ауыстырып жіберер еді.
- Branch және branch — әртүрлі атаулар; алдымен сәйкестендірумен атауларды біріздендіріңіз.
- Қорытынды қажет болса, Union кейін Group қосыңыз; Union өзі қорытынды жасамайды.