Dôležité informácie týkajúce sa mapovania polí pre štandardné toky údajov
Pri načítavaní údajov do tabuliek Dataverse mapujete stĺpce zdrojového dotazu v prostredí na úpravu toku údajov k cieľovému stĺpcom tabuľky Dataverse. Okrem mapovania údajov treba brať do úvahy aj ďalšie dôležité informácie a osvedčené postupy. V tomto článku sa budeme zaoberať rôznymi nastaveniami toku údajov, ktoré ovládajú správanie obnovenia toku údajov, a teda aj údaje v cieľovej tabuľke.
Ovládanie toho, či toky údajov vytvárajú alebo upsertujú záznamy pri každom obnovení
Vždy, keď obnovíte tok údajov, načíta záznamy zo zdroja a načíta ich do dataverse. Ak ste tok údajov spustili viackrát (v závislosti od konfigurácie toku údajov), môžete:
- Vytvorte nové záznamy pre každé obnovenie toku údajov, dokonca aj vtedy, ak takéto záznamy už existujú v cieľovej tabuľke.
- Nové záznamy vytvorte, ak ešte v tabuľke neexistujú alebo aktualizujte existujúce záznamy, ak už v tabuľke existujú. Toto správanie sa nazýva upsert.
Použitie kľúčového stĺpca označuje tok údajov na upsertné záznamy do cieľovej tabuľky, pričom nie výberom kľúča označuje tok údajov, aby sa vytvorili nové záznamy v cieľovej tabuľke.
Kľúčový stĺpec je stĺpec, ktorý je jedinečný a deterministický v riadku údajov v tabuľke. Napríklad v tabuľke Objednávky, ak je ID objednávky kľúčovým stĺpcom, nemali by ste mať dva riadky s rovnakým ID objednávky. Okrem toho jedno ID objednávky – povedzme, poradie s ID 345 – by malo predstavovať iba jeden riadok v tabuľke. Ak chcete vybrať kľúčový stĺpec pre tabuľku v parametri Dataverse z toku údajov, musíte nastaviť pole kľúča v prostredí Mapy tabuliek.
Výber primárneho názvu a poľa kľúča pri vytváraní novej tabuľky
Na nasledujúcom obrázku je znázornené, ako môžete vybrať kľúčový stĺpec, ktorý sa má vyplniť, zo zdroja, keď v toku údajov vytvoríte novú tabuľku.
Pole primárneho názvu, ktoré vidíte v priradení polí, je pre pole označenia. Toto pole nemusí byť jedinečné. Pole, ktoré sa používa v tabuľke na kontrolu duplicity, je pole, ktoré ste nastavili v poli Alternatívny kľúč .
Ak máte v tabuľke primárny kľúč, znamená to, že aj v prípade, že máte duplicitné údaje v poli, ktoré je namapované k primárnemu kľúču, duplicitné položky sa do tabuľky nenačítajú. Toto správanie si zachováva vysokú kvalitu údajov v tabuľke. Vysokokvalitné údaje sú nevyhnutné pri tvorbe riešení zostáv založených na tabuľke.
Pole primárneho názvu
Pole primárneho názvu je zobrazované pole používané v časti Dataverse. Toto pole sa používa v predvolených zobrazeniach na zobrazenie obsahu tabuľky v iných aplikáciách. Toto pole nie je pole primárneho kľúča a nemalo by sa za to považovať. Toto pole môže mať duplicitné hodnoty, pretože ide o zobrazované pole. Najvhodnejšie je však použiť zreťazené pole na priradenie k poľu primárneho názvu, čím bude názov úplne vysvetľujúci.
Ako primárny kľúč sa používa pole alternatívneho kľúča.
Výber poľa kľúča pri načítavaní do existujúcej tabuľky
Pri mapovaní dotazu toku údajov do existujúcej tabuľky Dataverse môžete vybrať, či a ktorý kľúč sa má použiť pri načítavaní údajov do cieľovej tabuľky.
Na nasledujúcom obrázku je znázornené, ako môžete vybrať kľúčový stĺpec, ktorý sa má použiť pri upsertovaní záznamov do existujúcej tabuľky Dataverse:
Nastavenie stĺpca Jedinečné ID tabuľky a jeho použitie ako kľúčového poľa na upsertovanie záznamov do existujúcich tabuliek Dataverse
Všetky riadky tabuľky Microsoft Dataverse majú jedinečné identifikátory definované ako identifikátory GUID. Tieto identifikátory GUID sú primárnym kľúčom pre každú tabuľku. Primárny kľúč tabuľky predvolene nie je možné nastaviť v tokoch údajov a je automaticky generovaný funkciou Dataverse pri vytvorení záznamu. Existujú prípady pokročilého používania, v ktorých je využitie primárneho kľúča tabuľky žiaduce, napríklad integrácia údajov s externými zdrojmi pri zachovaní rovnakých hodnôt primárneho kľúča v externej tabuľke aj tabuľke Dataverse.
Poznámka
- Táto funkcia je k dispozícii len pri načítavaní údajov do existujúcich tabuliek.
- Pole jedinečného identifikátora prijíma iba reťazec obsahujúci hodnoty GUID. Všetky ostatné typy údajov alebo hodnoty spôsobia zlyhanie vytvorenia záznamu.
Ak chcete využiť pole s jedinečným identifikátorom tabuľky, vyberte položku Načítať do existujúcej tabuľky na stránke Priradiť tabuľky pri vytváraní toku údajov. V príklade uvedenom na nasledujúcom obrázku sa načítajú údaje do tabuľky CustomerTransactions a stĺpec TransactionID zo zdroja údajov použije ako jedinečný identifikátor tabuľky.
Všimnite si, že v rozbaľovacom zozname Výber kľúča je možné vybrať jedinečný identifikátor tabuľky, ktorý sa vždy nazýva "tablename + id". Keďže názov tabuľky je CustomerTransactions, pole jedinečného identifikátora sa nazýva CustomerTransactionId.
Po výbere sa časť priradenia stĺpcov aktualizuje tak, aby zahŕňala jedinečný identifikátor ako cieľový stĺpec. Potom môžete priradiť zdrojový stĺpec predstavujúci jedinečný identifikátor pre každý záznam.
Čo sú dobrí kandidáti na kľúčovú oblasť
Pole kľúča je jedinečná hodnota predstavujúca jedinečný riadok v tabuľke. Toto pole je dôležité mať, pretože pomáha vyhnúť sa duplicitným záznamom v tabuľke. Toto pole môže pochádzať z troch zdrojov:
Hlavný kľúč v zdrojovom systéme (napríklad OrderID v predchádzajúcom príklade). zreťazené pole vytvorené transformáciami doplnku Power Query v toku údajov.
Kombinácia polí, ktoré sa majú vybrať v možnosti Alternatívny kľúč . Kombinácia polí, ktoré sa používajú ako pole kľúča , sa nazýva aj zložený kľúč.
Odstránenie riadkov, ktoré už neexistujú
Ak chcete, aby sa údaje v tabuľke vždy synchronizovali s údajmi zo zdrojového systému, vyberte možnosť Odstrániť riadky, ktoré už vo výstupe dotazu neexistujú. Táto možnosť však tok údajov spomalí, pretože na to je potrebné porovnať riadky na základe primárneho kľúča (alternatívny kľúč v poli priradenia toku údajov).
Táto možnosť znamená, že ak sa v tabuľke nachádza riadok údajov, ktorý neexistuje v ďalšom výstupe dotazu obnovenia toku údajov, tento riadok sa z tabuľky odstráni.
Poznámka
Štandardné toky údajov V2 využívajú createdon
polia a modifiedon
na to, aby sa z cieľovej tabuľky odstránili riadky, ktoré neexistujú vo výstupe tokov údajov. Ak tieto stĺpce v cieľovej tabuľke neexistujú, záznamy sa neodstránia.
Známe obmedzenia
- Priradenie k polymorfným vyhľadávaným poliam nie je v súčasnosti podporované.
- Priradenie k vyhľadávaciemu poľu na viacúrovňovej úrovni, vyhľadávanie, ktoré smeruje na vyhľadávacie pole inej tabuľky, nie je momentálne podporované.
- Priradenie k poliam Stav a Dôvod stavu nie je momentálne podporované.
- Mapovanie údajov do viacriadkového textu, ktorý obsahuje znaky zlomu riadka, nie je podporované a zlomy riadkov sa odstránia. Namiesto toho by ste mohli použiť značku
<br>
zlomu riadka na načítanie a zachovanie viacriadkového textu. - Priradenie k poliam Výberu nakonfigurované s povolením možnosti viacnásobného výberu je podporované len za určitých podmienok. Tok údajov načíta údaje iba do polí Výber s povolenou možnosťou výberu viacerých položiek a použije sa zoznam hodnôt (celé čísla) s hodnotami oddelenými čiarkou. Ak sú napríklad označenia "Choice1, Choice2, Choice3" so zodpovedajúcimi celočíselnými hodnotami ako "1, 2, 3", hodnoty stĺpcov by mali byť "1,3", aby bolo možné vybrať prvú a poslednú možnosť.
- Štandardné toky údajov V2 využívajú
createdon
polia amodifiedon
na to, aby sa z cieľovej tabuľky odstránili riadky, ktoré neexistujú vo výstupe tokov údajov. Ak tieto stĺpce v cieľovej tabuľke neexistujú, záznamy sa neodstránia. - Priradenie k poliam, ktorých vlastnosť IsValidForCreate je nastavená na
false
možnosť nie je podporovaná (napríklad pole Konto entity Kontakt).