Azure Synapse Link for Dataverse Ofte stillede spørgsmål

Denne artikel indeholder oplysninger om ofte stillede spørgsmål om eksport af Microsoft Dataverse-tabeldata til Azure Synapse Analytics og Azure Data Lake.

Kan jeg manuelt udføre opgaver som f.eks. oprettelse, opdatering, sletning eller angivelse af automatisk sletning af politikker for datafiler i det tilknyttede Azure-lager?

Datafiler bør ikke ændres af en kunde, og ingen kundefiler bør placeres i datamapperne.

Bemærk

Hvis du vil slippe gamle og inaktive data i datasøen uden at bryde Azure Synapse Link, skal du overveje at bruge funktionen Forespørg og analysér de trinvise opdateringer

Hvordan kan jeg få adgang til mine relationer?

Hvis du vil have adgang til mange til mange-relationer, er relationen tilgængelig som en tabel, du kan vælge fra siden Tilføj tabeller for et nyt link og fra Administrer tabeller for et allerede eksisterende link.

Bemærk

Alle relationer er som standard i tilstanden Tilføj kun, når de skrives i CSV-format.

Azure Synapse Link er en gratis funktion med Dataverse. Brugen af Azure Synapse Link for Dataverse medfører ikke ekstra afgifter under Dataverse. Overvej dog potentielle omkostninger for Azure-tjenesten:

Hvad sker der, når jeg tilføjer en kolonne?

Når du føjer en ny kolonne til en tabel i kilden, tilføjes den også i slutningen af filen på destinationen i den tilsvarende filpartition. De rækker, der fandtes før tilføjelsen af kolonnen, vises ikke i den nye kolonne, men nye eller opdaterede rækker viser den kolonne, du netop har tilføjet.

Hvad sker der, når jeg sletter en kolonne?

Når du sletter en kolonne i en tabel i kilden, hentes kolonnen ikke fra destinationen. Rækkerne opdateres i stedet ikke længere og er markeret som null, mens de tidligere rækker bevares.

Hvad sker der, hvis jeg ændrer datatypen i en kolonne?

Ændring af datatypen i en kolonne er en de seneste ændringer, og du skal ophæve sammenkædningen og sammenkæde igen.

Hvad sker der, når jeg sletter en række?

Sletning af en række håndteres forskelligt, afhængigt af hvilke dataskrivningsindstillinger du vælger:

  • Direkte opdatering med CSV-format: Dette er standardtilstanden. Når du sletter en tabelrække i denne tilstand, slettes rækken også fra den tilsvarende datapartition i Azure Data Lake. Med andre ord slettes data fuldstændig fra destinationen.
  • Tilføj kun med CSV-format og stigende mappeopdatering: Når en Dataverse-tabelrække slettes i denne tilstand, slettes den ikke fuldstændig fra destinationen. I stedet tilføjes rækken, og den angives som isDeleted=True for filen i den tilsvarende datapartition i Azure Data Lake.
  • Eksportér til deltasø-format: Azure Synapse Link udfører en blød sletning på data i løbet af den næste delta-synkroniseringscyklus efterfulgt af en hård sletning efter 30 dage.

Hvorfor kan jeg ikke se en kolonneoverskrift i den eksporterede fil?

Azure Synapse Link følger Common Data Model for at gøre det muligt at dele data og betydningen heraf på tværs af applikationer og forretningsprocesser f.eks. som Microsoft Power Apps, Power BI, Dynamics 365 og Azure. I de enkelte CDM-mapper gemmes metadata som en kolonneoverskrift i model.json-filen. Flere oplysninger: Common Data Model og Azure Data Lake Storage Gen2 | Microsoft Learn

Hvorfor øges eller ændres længden i filen Model.json for datatyperne, og hvorfor bevares det, der er defineret i Dataverse, ikke?

Databaselængden på kolonnens størrelse bevares af Model.json. Dataverse indeholder et koncept for databaselængde for hver kolonne. Hvis du opretter en kolonne med en størrelse på 200 og senere reducerer den til 100, tillader Dataverse stadig, at de eksisterende data er til stede i Dataverse. Det gør den ved at holde DBLength på 200 og MaxLength på 100. Det, du kan se Model.json, er DBLength, og hvis du bruger det til downstreamprocesser, klargør du aldrig mindre plads til Dataverse-kolonnerne.

Bemærk

Notatfelter defineres som varchar(max) med en standardlængde på højst 9999.

Hvilke dato- og klokkeslætsformater kan forventes i eksporterede Dataverse-tabeller?

Tre forskellige dato- og klokkeslætsformater kan forventes i eksporterede Dataverse-tabeller.

Kolonnenavn Format Datatype Eksempel
SinkCreatedOn og SinkModifiedOn dd-mm-åååå t:mm:ss datetime 28-6-2021 16:34:35
CreatedOn dd-mm-åååå tt:mm:ss datetimeOffset 25-05-2018 16:21:09.0000000+00:00
Alle øvrige kolonner dd-mm-åååå tt:mm:ss datetime 25-06-2021 16:21:12

Bemærk

CreatedOn-datatypen er ændret fra datetime til datetimeOffset den 07-29-2022. For at redigere datatypeformatet for en tabel, der er oprettet før ændringen, skal du slippe og læse tabellen.

Du kan vælge forskellige kolonnefunktionsmåder for kolonnen Dato og klokkeslæt i Dataverse, som opdaterer datatypeformatet. Flere oplysninger: Funktionsmåde og format for dato- og klokkeslætskolonne

Hvorfor ser jeg 1.csv eller 1_001.csv filnavne i stedet for almindelige partitionerede filnavne på dato og klokkeslæt for nogle Dataverse-tabeller?

Denne funktionsmåde forventes, når du vælger kun tilføjelses-eksporttilstand og har tabeller uden en gyldig CreatedOn-kolonne. Blobs organiseres i filer, f.eks. 1.csv, 2.csv (anvender brugerdefineret partitionering, fordi der ikke er en gyldig oprettelsesdato). Når en partition nærmer sig 95 % af MaxBlockPerBlobLimit, oprettes der automatisk en ny fil – vist her som 1_001.csv.

Hvornår skal jeg bruge en årlig eller månedlig partitionsstrategi?

I forbindelse med Dataverse-tabeller, hvor datamængden er stor på et år, anbefales det, at du bruger månedlige partitioner. Hvis du gør det, resulterer det i mindre filer og bedre ydeevne. Hvis rækkerne i Dataverse-tabeller opdateres ofte, kan opdeling i flere mindre filer desuden forbedre ydeevnen i tilfælde af direkte opdateringsscenarier. Den er kun tilgængelig med årligt partition på grund af dens bedre ydeevne sammenlignet med CSV-format.

Hvad er tilstanden Tilføj kun, og hvad er forskellen mellem kun at tilføje og tilstanden for direkte opdatering?

I tilstanden Tilføj kun føjes trinvise data fra Dataverse-tabeller til den tilsvarende filpartition i søen. Flere oplysninger: Avancerede konfigurationsindstillinger i Azure Synapse Link

Hvornår skal jeg bruge tilstanden Tilføj kun for en historisk oversigt over ændringer?

Tilstanden Tilføj kun er den anbefalede indstilling, når du skal skrive Dataverse-tabeldata til søen, især når datamængderne er store i en partition, hvor data ofte ændres. Igen er dette en meget anvendt og yderst anbefalet indstilling for virksomhedskunder. Derudover kan du vælge at bruge denne tilstand i scenarier, hvor formålet er en trinvis gennemgang af ændringer fra Dataverse og at behandle ændringerne for ETL-, AI- og ML-scenarier. Tilstanden Tilføj kun giver en oversigt over ændringer i stedet for den seneste ændring eller en direkte opdatering og aktiverer flere tidsserier fra AI-scenarier, f.eks. forudsigelse eller prognoseanalyser baseret på historiske værdier.

Hvordan henter jeg den mest opdaterede række for hver post og udelader slettede rækker, når jeg eksporterer data kun i tilstanden Tilføj kun?

I tilstanden Tilføj kun skal du identificere den nyeste version af posten med samme id ved hjælp af VersionNumber og SinkModifiedOn og derefter anvende isDeleted=0 på den nyeste version.

Hvorfor kan jeg se duplikerede versionsnumre, når jeg eksporterer data i tilstanden Tilføj kun?

Hvis Azure Synapse Link for Dataverse ikke får en bekræftelse fra Azure-datasøen om, at dataene er blevet bekræftet af nogen grund, såsom netværksforsinkelser, vil Azure Synapse Link i tilstanden Tilføj kun prøve igen i disse scenarier og sørge for bekræftelse af dataene igen. Downstreamforbruget skal være kompatibel med dette scenario ved at filtrere data ved hjælp af SinkModifiedOn.

Hvorfor kan jeg se forskelle i kolonnerne Sinkmodifiedon og Modifiedon?

Det er forventet. Modifiedon er den dato og det klokkeslæt, hvor posten ændres i Dataverse. Sinkmodifiedon er den dato og det klokkeslæt, hvor posten ændres i datasøen.

Hvilke Dataverse-tabeller understøttes ikke til eksport?

Alle tabeller, hvor ændringssporing ikke er aktiveret, understøttes ikke ud over følgende systemtabeller:

  • Vedhæftet fil
  • Kalender
  • Kalenderregel

Bemærk

Du kan tilføje revisionstabellen til eksport vha Azure Synapse Link for Dataverse. Eksporten af ​​revisionstabellen understøttes dog kun med Delta Lake profiler.

Jeg bruger eksport til delta lake-funktionen, kan jeg stoppe Apache Spark-jobbet eller ændre eksekveringstiden?

Delta Lake-konverteringsjobbet udløses, når der var en dataændring i det konfigurerede tidsinterval. Det er ikke muligt at stoppe eller midlertidigt afbryde Apache Spark-gruppen. Du kan dog ændre tidsintervallet efter oprettelsen af linket under Administrer tabeller > Tidsinterval for Avanceret.

Opslagskolonner består af et id og en værdi. Opslagsværdier ændres kun i rodtabellen. Hvis du bedre vil afspejle værdien af en opslagskolonne, anbefales det, at du tilslutter den oprindelige rodtabel for at få den nyeste værdi.

I Dataverse bevarer beregnede kolonner kun formeloplysningerne, og den faktiske værdi afhænger af kolonnen i basistabellen. Beregnede kolonner understøttes derfor kun, når alle kolonner er placeret i den samme eksporterede tabel.

Hvilke Dataverse-tabeller bruger som standard tilstanden Tilføj kun?

Alle tabeller, der ikke har et createdOn-felt, synkroniseres som standard kun ved hjælp af tilstanden Tilføj. Det omfatter relationstabeller og tabellen ActivityParty.

Hvorfor vises fejlmeddelelsen – Indholdet af mappen på stien kan ikke vises?

  • Dataverse-data lagres i den tilsluttede objektbeholder. Du skal bruge rollen "Lager for Blob Data-bidragyder" i den linkede lagerkonto for at udføre læse- og forespørgselshandlinger gennem Synapse Workspace.
  • Hvis du vælger at eksportere data med format Delta Lake, ryddes CSV-filen op efter Delta Lake-konverteringen. Du skal forespørge på non_partitioned-tabeller via Synapse Workspace.

Hvorfor får jeg vist fejlmeddelelsen – jeg kan ikke masseindlæse, fordi filen er ufuldstændig eller ikke kunne læses (kun CSV-fil)?

Dataverse-data kan løbende skifte mellem oprettelses-, opdaterings- og slettetransaktioner. Denne fejl skyldes, at den underliggende fil ændres, når du læser data fra den. For tabeller med kontinuerlige ændringer bør du derfor ændre din forbrugspipeline, så den bruger snapshot-data (partitionerede tabeller) til at forbruge. Flere oplysninger: Foretage fejlfinding af serverløs SQL-gruppe

Azure Synapse Link for Dataverse er udviklet til analyseformål. Vi anbefaler, at kunder opbevarer arkivering på lang tid. Flere oplysninger: Oversigt over langsigtet Dataverse-dataopbevaring

Hvorfor kan jeg ikke se dataændringer i datasøen, når der er slettet poster i Dataverse?

For at et direkte SQL-kald skal kunne fjerne en post, udløses Azure Synapse Link for Dataverse-tjenesten ikke, fordi BPO.Delete ikke kaldes. Du kan få vist en eksempelfunktion ved at gå til Sådan ryddes der op i nedarvet adgang.