Tento článek poskytuje informace o nejčastějších dotazech týkajících se exportu dat tabulky Microsoft Dataverse do Azure Synapse Analytics a Azure Data Lake.
Mohu ručně provádět úkoly, jako je vytváření, aktualizace, odstraňování nebo nastavení zásad automatického odstranění datových souborů v připojeném úložišti Azure?
Datové soubory by zákazník neměl měnit a do datových složek by neměly být umístěny žádné soubory zákazníků.
Poznámka
Chcete-li odpojit zastaralá a stagnující data z datového jezera, aniž byste narušili Azure Synapse Link, zvažte použití funkce Dotazy a analýza přírůstkových aktualizací
Jak se dostanu ke vztahům tabulky?
U vztahů N:M bude vztah k dispozici jako tabulka, kterou lze vybrat na stránce Přidat tabulky pro nový odkaz nebo na stránce Spravovat tabulky pro již existující odkaz.
Poznámka
Všechna data vztahů jsou ve výchozím nastavení v režimu pouze připojení, když jsou zapsána ve formátu CSV.
Jak mohu získat odhadované náklady před přidáním Azure Synapse Link?
Azure Synapse Link je bezplatná funkce Dataverse. Za použití Azure Synapse Link for Dataverse v rámci Dataverse nevznikají další poplatky. Zvažte však potenciální náklady na službu Azure:
- Datové úložiště v Azure Data Lake Storage Gen2: Cena úložiště Azure Storage Data Lake Gen2 | Microsoft Azure
- Náklady na spotřebu dat (například Synapse Workspace): Cena – Azure Synapse Analytics | Microsoft Azure Komplexní informace o Microsoft Cost Management naleznete v části: Plánování správy nákladů na Azure – Microsoft Cost Management | Microsoft Learn
Co se stane, když přidám sloupec?
Když přidáte nový sloupec do tabulky ve zdroji, přidá se také na konec souboru v cíli v příslušném oddílu souboru. I když řádky, které existovaly před přidáním sloupce, nejsou zobrazeny v novém sloupci, nové nebo aktualizované řádky zobrazí nově přidaný sloupec.
Co se stane, když odstraním sloupec?
Když odstraníte sloupec z tabulky ve zdroji, sloupec nebude zrušen z cíle. Místo toho se řádky již neaktualizují a při zachování předchozích řádků jsou označeny jako null.
Co se stane, když změním datový typ sloupce?
Změna datového typu sloupce je zásadní a budete jej muset odpojit a znovu propojit.
Co se stane, když odstraním řádek?
Odstranění řádku je zpracováno odlišně podle toho, které možnosti zápisu dat zvolíte:
- Aktualizace na místě ve formátu CSV: Toto je výchozí režim. Při odstranění řádku tabulky v tomto režimu se řádek odstraní také z odpovídajícího datového oddílu v Azure Data Lake. Jinými slovy, data jsou z cíle pevně odstraněna.
- Pouze připojit s formátem CSV a aktualizace přírůstkové složky: V tomto režimu, když je odstraněn řádek tabulky Dataverse, není z cíle pevně odstraněn. Místo toho se přidá řádek a nastaví se jako
isDeleted=True
na soubor v odpovídajícím datovém oddílu v Azure Data Lake. - Export do formátu Delta lake: Azure Synapse Link provede obnovitelné odstranění dat během příštího synchronizačního cyklu delta, po kterém následuje tvrdé odstranění po 30 dnech.
Proč v exportovaném souboru nevidím záhlaví sloupce?
Azure Synapse Link následuje model Common Data Model, aby bylo možné sdílení dat a jejich významu v aplikacích a obchodních procesech, jako je Microsoft Power Apps, Power BI, Dynamics 365 a Azure. V každé složce CDM jsou metadata, jako je záhlaví sloupce, uložena v souboru model.json. Další informace: Common Data Model a Azure Data Lake Storage Gen2 | Microsoft Learn
Proč se u datových typů zvětšuje nebo mění délka souboru Model.json a nezachovává to, co je definováno v Dataverse?
Model.json zachovává délku databáze pro velikost sloupce. Dataverse má koncept délky databáze pro každý sloupec. Pokud vytvoříte sloupec o velikosti 200 a později ho zmenšíte na 100, Dataverse přesto umožní, aby vaše stávající data byla přítomna v Dataverse. Dělá to tak, že udržuje DBLength
na 200 a MaxLength
na 100. To, co vidíte v Model.json, je DBLength
a pokud to použijete pro následné procesy, nikdy neposkytnete méně místa pro své sloupce Dataverse.
Poznámka
Pole typu Memo jsou definována jako varchar(max)
s výchozí maximální délkou 9999.
Jaké formáty data a času lze očekávat v exportovaných tabulkách Dataverse?
Existují tři formáty data a času, které lze očekávat v exportovaných tabulkách Dataverse.
Název sloupce | Formát | Datový typ | Příklad |
---|---|---|---|
SinkCreatedOn a SinkModifiedOn | M/d/rrrr H:mm:ss tt | datetime | 6/28/2021 4:34:35 |
CreatedOn | rrrr-MM-dd'T'HH:mm:ss.sssssssXXX | datetimeOffset | 2018-05-25T16:21:09.0000000+00:00 |
Všechny ostatní sloupce | rrrr-MM-dd'T'HH:mm:ss'Z' | datetime | 2021-06-25T16:21:12Z |
Poznámka
Datový typ CreatedOn změněn z datetime
na datetimeOffset
29. 7. 2022. Chcete-li upravit formát datového typu pro tabulku vytvořenou před změnou, tabulku odeberte a znovu přidejte.
Můžete si vybrat různé chování sloupců pro sloupec Datum a čas v Dataverse, který aktualizuje formát datového typu. Další informace: Chování a formát sloupce Datum a čas
Proč se mi u některých tabulek Dataverse zobrazují názvy souborů 1.csv nebo 1_001.csv namísto běžných názvů souborů rozdělených podle data a času?
Toto chování se očekává, když zvolíte režim exportu pouze pro připojení a máte tabulky bez platného sloupce CreatedOn. Objekty blob jsou organizovány do souborů, jako je 1.csv, 2.csv (využívá vlastní rozdělení kvůli absenci platného data vytvoření). Když se kterýkoli oddíl přiblíží 95 % limitu MaxBlockPerBlobLimit, systém automaticky vygeneruje nový soubor – zde znázorněný jako 1_001.csv.
Kdy mám použít roční nebo měsíční strategii rozdělení oddílů?
Pro tabulky Dataverse, kde je objem dat do jednoho roku vysoký, doporučujeme používat měsíční oddíly. Výsledkem budou menší soubory a lepší výkon. Navíc, pokud jsou řádky v tabulkách Dataverse často aktualizovány, rozdělení do více menších souborů pomáhá zlepšit výkon v případě scénářů aktualizace na místě. Delta Lake je k dispozici pouze s ročním oddílem kvůli jeho vynikajícímu výkonu ve srovnání s formátem CSV.
Co je režim pouze připojení a jaký je rozdíl mezi režimem pouze připojení a režimem aktualizace na místě?
V režimu Pouze připojit jsou přírůstková data z tabulky Dataverse připojena k odpovídajícímu oddílu souborů v jezeře. Další informace: Pokročilé možnosti konfigurace v Azure Synapse Link
Kdy mohu použít režim Pouze připojit pro historické zobrazení změn?
Možnost Pouze připojit je doporučená pro zápis dat tabulky Dataverse do jezera, zvláště když jsou objemy dat vysoké v oddílu s často se měnícími daty. Jedná se opět o běžně používanou a vysoce doporučenou možnost pro podnikové zákazníky. Dále se můžete rozhodnout použít tento režim pro scénáře, kde je záměrem postupně kontrolovat změny z Dataverse a zpracovat změny pro scénáře ETL, AI a ML. Režim Pouze připojit poskytuje historii změn namísto nejnovější změny nebo místní aktualizace a umožňuje několik časových řad ze scénářů AI, například predikce nebo prognózování analytiky na základě historických hodnot.
Jak získám nejaktuálnější řádek každého záznamu a vyloučím smazané řádky, když exportuji data v režimu pouze připojení?
V režimu pouze připojení byste měli identifikovat nejnovější verzi záznamu se stejným ID pomocí VersionNumber
a SinkModifiedOn
a poté použít isDeleted=0
na nejnovější verzi.
Proč se mi při exportu dat pomocí režimu pouze připojení zobrazují duplicitní čísla verzí?
V režimu Pouze připojit, pokud Azure Synapse Link for Dataverse z nějakého důvodu nezíská potvrzení dat z Azure Data Lake, například kvůli zpoždění sítě, Azure Synapse Link to v těchto scénářích zkusí znovu a opětovně potvrdí data. Následná spotřeba by měla být odolná vůči tomuto scénáři filtrováním dat pomocí SinkModifiedOn
.
Proč vidím rozdíly ve sloupcích Sinkmodifiedon a Modifiedon?
Toto je očekávané chování. Modifiedon
je datum a čas změny záznamu v Dataverse; Sinkmodifiedon
je datum a čas změny záznamu v datovém jezeře.
Které tabulky Dataverse nejsou podporovány pro export?
Žádná tabulka, která nemá povoleno sledování změn, není podporována kromě následujících systémových tabulek:
- Attachment
- Kalendář
- Calendarrule
Poznámka
Můžete přidat tabulku auditu pro export pomocí Azure Synapse Link for Dataverse. Export tabulky auditu je však podporován pouze profily Delta Lake.
Jestliže používám funkci exportu do Delta Lake, mohu zastavit úlohu Apache Spark nebo změnit dobu provádění?
Úloha převodu Delta Lake se aktivuje, když došlo ke změně dat v nakonfigurovaném časovém intervalu. Neexistuje žádná možnost, jak zastavit nebo pozastavit fond Apache Spark. Nicméně časový interval po vytvoření propojení můžete upravit v části Správa tabulek > Rozšířený časový interval.
Podporuje Azure Synapse Link vyhledávací sloupce?
Vyhledávací sloupce se skládají z ID a hodnoty. Vyhledávací hodnoty se mění pouze v kořenové tabulce. Chcete-li lépe odrážet hodnotu vyhledávacího sloupce, doporučujeme připojit se k původní kořenové tabulce a získat nejnovější hodnotu.
Podporuje Azure Synapse Link pro počítané sloupce?
Počítané sloupce v Dataverse uchovávají pouze informace o vzorci a skutečná hodnota závisí na sloupci základní tabulky. Počítané sloupce jsou tedy podporovány pouze v případě, že jsou všechny umístěny ve stejné exportované tabulce.
Které tabulky Dataverse ve výchozím nastavení používají režim Pouze připojit?
Všechny tabulky, které neobsahují pole createdOn, jsou ve výchozím nastavení synchronizovány pomocí režimu Pouze připojit. To zahrnuje tabulky vztahů a tabulku ActivityParty.
Proč se mi zobrazuje chybová zpráva – Nelze vypsat obsah adresáře v cestě?
- Data Dataverse jsou uložena v kontejneru propojeného úložiště. K provádění operací čtení a dotazování prostřednictvím pracovního prostoru Synapse potřebujete roli „Přispěvatel dat objektů blob úložiště“ v propojeném účtu úložiště.
- Pokud se rozhodnete exportovat data ve formátu Delta Lake, váš soubor CSV se po převodu na Delta Lake vyčistí. Musíte dotazovat data s non_partitioned tabulkami přes Synapse Workspace.
Proč se mi zobrazuje chybová zpráva – nelze hromadně načíst, protože soubor je neúplný nebo jej nelze přečíst (pouze soubor CSV)?
Data Dataverse se mohou průběžně měnit vytvářením, aktualizací a mazáním transakcí. Tato chyba je způsobena změnou základního souboru, když z něj čtete data. U tabulek s průběžnými změnami změňte kanál spotřeby, aby ke spotřebě používal data snímku (rozdělené tabulky). Další informace: Odstraňování problémů s fondem SQL bez serveru
Jak mohu použít Azure Synapse Link k archivaci důležitých dat?
Služba Azure Synapse Link for Dataverse je určena pro analytické účely. Zákazníkům doporučujeme používat dlouhodobé uchovávání pro účely archivace. Další informace: Přehled dlouhodobého uchovávání dat v Dataverse
Proč nevidím žádné změny dat v datovém jezeře, když byly záznamy odstraněny v Dataverse?
U jakéhokoli přímého volání SQL k odstranění záznamu se služba Azure Synapse Link for Dataverse nespustí, protože není voláno BPO.Delete. Ukázkovou funkci najdete v části Jak vyčistit zděděný přístup.