Delen via


Veelgestelde vragen over Azure Synapse Link for Dataverse

Dit artikel bevat informatie over veelgestelde vragen over het exporteren van Microsoft Dataverse-tabelgegevens naar Azure Synapse Analytics en Azure Data Lake.

Kan ik handmatig taken uitvoeren zoals het maken, bijwerken, verwijderen of instellen van beleid voor automatisch verwijderen voor gegevensbestanden in de verbonden Azure-opslag?

Gegevensbestanden mogen niet door een klant worden gewijzigd, en er mogen geen klantbestanden in de gegevensmappen worden geplaatst.

Notitie

Als u verouderde en stagnerende gegevens in het data lake wilt verwijderen zonder de Azure Synapse Link te doorbreken, kunt u de functie De incrementele updates opvragen en analyseren

Hoe krijg ik toegang tot mijn tabel Relaties?

Voor toegang tot veel-op-veel relaties is de relatie als een tabel beschikbaar om te selecteren vanaf de pagina Tabellen toevoegen voor een nieuwe koppeling en vanaf de pagina Tabellen beheren voor een reeds bestaande koppeling.

Notitie

Alle relatiegegevens bevinden zich standaard in de modus Alleen toevoegen wanneer ze in CSV-indeling worden geschreven.

Azure Synapse Link is een gratis functie van Dataverse. Voor het gebruik van Azure Synapse Link for Dataverse worden geen extra kosten in rekening gebracht onder Dataverse. Houd echter rekening met mogelijke kosten voor de Azure-service:

Wat gebeurt er als ik een kolom toevoeg?

Wanneer u een nieuwe kolom aan een tabel in de bron toevoegt, wordt deze ook aan het einde van het bestand op de bestemming in de overeenkomende bestandspartitie toegevoegd. Hoewel de rijen die bestonden vóór de toevoeging van de kolom niet in de nieuwe kolom worden weergegeven, wordt in nieuwe of bijgewerkte rijen de nieuw toegevoegde kolom wel weergegeven.

Wat gebeurt er als ik een kolom verwijder?

Wanneer u een kolom uit een tabel in de bron verwijdert, wordt de kolom niet verwijderd uit de bestemming. In plaats daarvan worden de rijen niet langer bijgewerkt en worden ze gemarkeerd als null terwijl de vorige rijen behouden blijven.

Wat gebeurt er als ik het gegevenstype van een kolom wijzig?

Het wijzigen van het gegevenstype van een kolom is een wijziging die fouten veroorzaakt. U moet dan ontkoppelen en opnieuw koppelen.

Wat gebeurt er als ik een rij verwijder?

Hoe de verwijdering van een wordt afgehandeld, is afhankelijk van de opties voor het schrijven van gegevens die u kiest:

  • Ter plekke bijwerken met CSV-indeling: dit is de standaardmodus. Wanneer u in deze modus een tabelrij verwijdert, wordt de rij ook verwijderd uit de overeenkomende gegevenspartitie in het Azure Data Lake. Met andere woorden, gegevens worden permanent verwijderd van de bestemming.
  • Alleen toevoegen met CSV-indeling en incrementele mapupdate: in deze modus wordt, wanneer een Dataverse-tabelrij wordt verwijderd, deze niet definitief van de bestemming verwijderd. In plaats daarvan wordt een rij toegevoegd en ingesteld als isDeleted=True voor het bestand in de overeenkomende gegevenspartitie in Azure Data Lake.
  • Exporteren naar Delta lake-indeling: Azure Synapse Link voert een zachte verwijdering van gegevens uit tijdens de volgende deltasynchronisatiecyclus, gevolgd door een harde verwijdering na 30 dagen.

Waarom zie ik geen kolomkop in het geëxporteerde bestand?

Azure Synapse Link volgt het Common Data Model-metagegevenssysteem om het mogelijk te maken dat gegevens en de betekenis ervan worden gedeeld tussen apps en bedrijfsprocessen zoals Microsoft Power Apps, Power BI, Dynamics 365 en Azure. In elke CDM-map worden metagegevens zoals een kolomkop opgeslagen in het model.json-bestand. Meer informatie: Common Data Model en Azure Data Lake Storage Gen2 | Microsoft Learn

Waarom wordt de grootte of lengte van het bestand Model.json gewijzigd voor de gegevenstypen en behoudt het niet wat is gedefinieerd in Dataverse?

Model.json behoudt de databaselengte voor de grootte van de kolom. Dataverse heeft een concept van databaselengte voor elke kolom. Als u een kolom maakt met een grootte van 200 en deze later verkleint tot 100, kan Dataverse nog steeds toestaan dat uw bestaande gegevens aanwezig zijn in Dataverse. Dat gebeurt door DBLength op 200 en MaxLength op 100 te houden. Wat u ziet in Model.json is DBLength en als u dat voor downstream-processen gebruikt, zult u nooit minder ruimte voor uw Dataverse-kolommen inrichten.

Notitie

Memovelden worden gedefinieerd als varchar(max) met een standaard maximale lengte van 9999.

Welke datum- en tijdnotaties kunnen worden verwacht in geëxporteerde Dataverse-tabellen?

Er zijn drie datum- en tijdnotaties die kunnen worden verwacht in de geëxporteerde Dataverse-tabellen.

Kolomnaam Notatie Gegevenstype Voorbeeld
SinkCreatedOn en SinkModifiedOn d/M/jjjj U:mm:ss tt datetime 28/6/2021 4:34:35 PM
CreatedOn jjjj-MM-dd'T'UU:mm:ss.sssssssXXX datetimeOffset 2018-05-25T16:21:09.0000000+00:00
Alle overige kolommen jjjj-MM-dd'T'UU:mm:ss'Z' datetime 2021-06-25T16:21:12Z

Notitie

Gegevenstype CreatedOn gewijzigd van datetime in datetimeOffset op 29-07-2022. Als u het gegevenstype-indeling wilt bewerken voor een tabel die vóór de wijziging is gemaakt, verwijdert u de tabel en leest u deze.

U kunt verschillende kolomgedragingen kiezen voor een datum- en tijdkolom in Dataverse, waarmee de indeling van het gegevenstype wordt bijgewerkt. Meer informatie: Gedrag en indeling van de datum- en tijdkolom

Waarom zie ik voor sommige Dataverse-tabellen de bestandsnamen 1.csv of 1_001.csv in plaats van gewone, op datum en tijd gepartitioneerde bestandsnamen?

Dit gedrag wordt verwacht wanneer u de exportmodus 'Alleen toevoegen' kiest en tabellen hebt zonder een geldige CreatedOn-kolom. Blobs zijn in bestanden zoals 1.csv, 2.csv georganiseerd (waarbij gebruik wordt gemaakt van aangepaste partitionering vanwege het ontbreken van een geldige aanmaakdatum). Wanneer een partitie 95% van de MaxBlockPerBlobLimit nadert, genereert het systeem automatisch een nieuw bestand, hier weergegeven als 1_001.csv.

Wanneer moet ik een jaarlijkse of maandelijkse partitiestrategie gebruiken?

Voor Dataverse-tabellen met een hoog gegevensvolume binnen een jaar raden we u aan maandelijkse partities te gebruiken. Dit resulteert in kleinere bestanden en betere prestaties. Bovendien helpt als de rijen in Dataverse-tabellen regelmatig worden bijgewerkt, het splitsen in meerdere kleinere bestanden de prestaties te verbeteren in het geval van updatescenario's ter plaatse. Delta Lake is alleen beschikbaar met jaarlijkse partitie vanwege de superieure prestaties in vergelijking met de CSV-indeling.

Wat is de modus Alleen toevoegen en wat is het verschil met de modus voor een in-place update?

In de modus Alleen toevoegen worden incrementele gegevens uit Dataverse-tabellen toegevoegd aan de overeenkomende bestandspartitie in de lake. Meer informatie: Geavanceerde configuratieopties in Azure Synapse Link

Wanneer gebruik ik de modus Alleen toevoegen voor een historisch overzicht van wijzigingen?

De modus Alleen toevoegen is de aanbevolen optie voor het schrijven van Dataverse-tabelgegevens naar de lake, vooral wanneer de gegevensvolumes hoog zijn in een partitie met vaak veranderende gegevens. Nogmaals, dit is een veelgebruikte en sterk aanbevolen optie voor zakelijke klanten. Bovendien kunt u ervoor kiezen om deze modus te gebruiken voor scenario's waarbij het de bedoeling is om wijzigingen vanuit Dataverse stapsgewijs te bekijken en de wijzigingen voor ETL-, AI- en ML-scenario's te verwerken. De modus Alleen toevoegen biedt een historie van wijzigingen, in plaats van de laatste wijziging of in-place update, en maakt verschillende tijdreeksen mogelijk vanuit AI-scenario's, zoals voorspellings- of prognoseanalyses op basis van historische waarden.

Hoe haal ik de meest actuele rij van elke record op en sluit ik verwijderde rijen uit wanneer ik gegevens exporteer in de modus Alleen toevoegen?

In de modus Alleen toevoegen moet u de nieuwste versie van de record met dezelfde id identificeren met VersionNumber en SinkModifiedOn en vervolgens isDeleted=0 op de nieuwste versie toepassen.

Waarom zie ik dubbele versienummers wanneer ik gegevens exporteer in de modus Alleen toevoegen?

Voor de modus Alleen toevoegen geldt dat als Azure Synapse Link for Dataverse geen bevestiging van het Azure-datalake krijgt dat de gegevens zijn vastgelegd vanwege welke reden dan ook, bijvoorbeeld door netwerkvertragingen, probeert Azure Synapse Link het in deze scenario's opnieuw om de gegevens vast te leggen. Het stroomafwaartse verbruik moet bestand zijn tegen dit scenario door gegevens te filteren met SinkModifiedOn.

Waarom zie ik verschillen in de kolommen Sinkmodifiedon en Modifiedon?

Dit is verwacht. Modifiedon is de datum/tijd waarop de record wordt gewijzigd in Dataverse; Sinkmodifiedon is de datum en tijd waarop de record wordt gewijzigd in het data lake.

Welke Dataverse-tabellen worden niet ondersteund voor export?

Elke tabel waarvoor het bijhouden van wijzigingen niet is ingeschakeld, wordt niet ondersteund, naast de volgende systeemtabellen:

  • Bijlage
  • Agenda
  • Calendarrule

Notitie

U kunt de controletabel toevoegen voor export met behulp van Azure Synapse Link for Dataverse. De export van de controletabel wordt echter alleen ondersteund met Delta Lake-profielen.

Ik gebruik de functie Exporteren naar delta lake. Kan ik de Apache Spark-taak stoppen of de uitvoeringstijd wijzigen?

De Delta Lake-conversietaak wordt geactiveerd wanneer er een gegevenswijziging heeft plaatsgevonden in het geconfigureerde tijdsinterval. Er is geen optie om de Apache Spark-pool te stoppen of te pauzeren. U kunt het tijdsinterval na het maken van de link echter wijzigen onder Tabellen beheren > Geavanceerd tijdsinterval.

Opzoekkolommen bestaan ​​uit een id en een waarde. Opzoekwaarden veranderen alleen in de hoofdtabel. Om de waarde van een opzoekkolom beter weer te geven, raden we aan om samen te voegen met de oorspronkelijke hoofdtabel om de nieuwste waarde te krijgen.

In Dataverse behouden berekende kolommen alleen de formule-informatie, en is de werkelijke waarde afhankelijk van de basistabelkolom. Berekende kolommen worden dus alleen ondersteund als alle kolommen zich in dezelfde geëxporteerde tabel bevinden.

Welke Dataverse-tabellen maken standaard gebruik van de modus Alleen toevoegen?

Alle tabellen die geen createOn-veld hebben, worden standaard gesynchroniseerd in de modus Alleen toevoegen. Dit omvat relatietabellen en de tabel ActivityParty.

Waarom zie ik de foutmelding: De inhoud van de map op het pad kan niet worden weergegeven?

  • Dataverse-gegevens worden tijdelijk in de verbonden opslagcontainer opgeslagen. U hebt de rol 'Inzender van opslag-blobgegevens' nodig in het gekoppelde opslagaccount om lees- en querybewerkingen uit te voeren via Synapse workspace.
  • Als u ervoor kiest gegevens te exporteren met de Delta Lake-indeling, wordt uw CSV-bestand opgeschoond na de Delta Lake-conversie. U moet gegevens met niet-gepartitioneerde tabellen opvragen via de Synapse-werkruimte.

Waarom zie ik de foutmelding - kan niet bulksgewijs worden geladen omdat het bestand onvolledig is of niet kan worden gelezen (alleen CSV-bestand)?

Dataverse-gegevens kunnen continu veranderen door het aanmaken, bijwerken en verwijderen van transacties. Deze fout wordt veroorzaakt doordat het onderliggende bestand wordt gewijzigd wanneer u er gegevens uit leest. Dus voor tabellen met continue wijzigingen moet u uw verbruikspijplijn wijzigen zodat momentopnamegegevens (gepartitioneerde tabellen) voor verbruik worden gebruikt. Meer informatie: Problemen met de serverloze SQL-pool oplossen

Azure Synapse Link for Dataverse is ontworpen voor analytische doeleinden. We raden klanten aan langetermijnretentie te gebruiken voor archiefdoeleinden. Meer informatie: Overzicht van langetermijnretentie voor gegevens in Dataverse

Waarom zie ik geen gegevenswijzigingen in het data lake wanneer records zijn verwijderd in Dataverse?

Voor elke directe SQL-aanroep om een ​​record te verwijderen, wordt de Azure Synapse Link for Dataverse-service niet geactiveerd omdat BPO.Delete niet wordt aangeroepen. Ga voor een voorbeeldfunctie naar Overgenomen toegang opschonen.