Beschikbaarheid van OneLake inschakelen voor een eventhouse

U kunt een logische kopie van KQL-databasegegevens maken in een eventhouse door beschikbaarheid van OneLake in te schakelen. Wanneer u OneLake-beschikbaarheid inschakelt, kunt u query's uitvoeren op de gegevens in uw KQL-database in Delta Lake-indeling via andere Fabric engines, zoals de Direct Lake-modus in Power BI, Warehouse, Lakehouse, Notebooks en meer. Delta Lake is de uniforme data lake-tabelindeling die naadloze gegevenstoegang mogelijk maakt voor alle rekenengines in Fabric.

In dit artikel leert u hoe u de beschikbaarheid van KQL-databasegegevens in OneLake inschakelt.

Wanneer OneLake-beschikbaarheid en schemasynchronisatie zijn ingeschakeld, kunt u ook Gegevens analyseren met>SQL-eindpunt op databaseniveau gebruiken om in bijna realtime een query uit te voeren op de Delta Lake-weergave via SQL-engines.

Wanneer OneLake-beschikbaarheid en schemasynchronisatie zijn ingeschakeld, kunt u ook Gegevens analyseren met>SQL-eindpunt op databaseniveau gebruiken om in bijna realtime een query uit te voeren op de Delta Lake-weergave via SQL-engines.

Hoe OneLake-beschikbaarheid werkt voor KQL-databases

U kunt de beschikbaarheid van OneLake inschakelen op database- of tabelniveau. Wanneer deze optie is ingeschakeld op databaseniveau, worden alle nieuwe tabellen en de bijbehorende gegevens beschikbaar gesteld in OneLake. Wanneer u de functie inschakelt, kunt u deze optie ook toepassen op bestaande tabellen door de optie Toepassen op bestaande tabellen te selecteren om historische backfill op te nemen. Als u op tabelniveau inschakelt, worden alleen die tabel en de bijbehorende gegevens beschikbaar in OneLake. Het bewaarbeleid voor gegevens van uw KQL-database wordt ook toegepast op de gegevens in OneLake. Gegevens die zijn verwijderd uit uw KQL-database aan het einde van de bewaarperiode, worden ook verwijderd uit OneLake. Als u OneLake-beschikbaarheiduitschakelt, worden gegevens voorlopig verwijderd uit OneLake.

Synchronisatie van back-endschema's zorgt ervoor dat de Delta Lake-weergave is afgestemd op de KQL-database, waardoor bijna realtime query's worden uitgevoerd via het SQL-eindpunt en de notebooks. Zie Adaptief gedrag voor verwachte latentie en batchverwerking.

Hoewel OneLake-beschikbaarheid is ingeschakeld, kunt u de volgende taken niet uitvoeren:

  • Wijzig de naam van tabellen.
  • Een kolomtype wijzigen. Het toevoegen of verwijderen van een kolom wordt ondersteund.
  • Pas beveiliging op rijniveau toe op tabellen.
  • Gegevens verwijderen, afkappen of opschonen.

Als u een van deze taken wilt uitvoeren, gebruikt u de volgende stappen:

  1. Schakel OneLake-beschikbaarheiduit.
  2. Voer de taak uit.
  3. Schakel OneLake-beschikbaarheidin.

Belangrijk

Wanneer u de beschikbaarheid van OneLake uitschakelt worden uw gegevens tijdelijk uit OneLake verwijderd. Wanneer u beschikbaarheid weer inschakelt, zijn alle gegevens beschikbaar in OneLake, inclusief historische backfill.

Notitie

Zie Adaptief gedrag voor informatie over de tijd die nodig is om gegevens weer te geven in OneLake. Er zijn geen extra opslagkosten om de beschikbaarheid van OneLakein te schakelen. Zie resourceverbruik voor meer informatie.

Vereisten

Beschikbaarheid van OneLake inschakelen voor een KQL-database of -tabel

U kunt de beschikbaarheid van OneLake inschakelen voor een KQL-database of -tabel.

  1. Selecteer een database of tabel.

  2. Stel in het gedeelte OneLake van het detailvenster Beschikbaarheid in op Ingeschakeld.

    Schermopname van de sectie OneLake van het deelvenster Databasedetails met de optie Beschikbaarheid gemarkeerd.

  3. Selecteer In het venster OneLake-beschikbaarheid inschakelen de optie Inschakelen.

    Schermopname van het venster OneLake-beschikbaarheid inschakelen met de optie Toepassen op bestaande tabellen.

  4. De gegevens van de database of tabel worden automatisch vernieuwd.

    Schermopname van de sectie OneLake details zodra beschikbaarheid is ingesteld op Ingeschakeld. De optie om gegevens beschikbaar te maken voor OneLake is ingeschakeld.

Wanneer u De beschikbaarheid van OneLake inschakelt in uw KQL-database of -tabel, hebt u toegang tot alle gegevens op het opgegeven OneLake-pad in Delta Lake-indeling. U kunt ook een OneLake-snelkoppeling maken vanuit een lakehouse of magazijn of de gegevens rechtstreeks opvragen via Power BI Direct Lake-modus. Nu de OneLake-beschikbaarheid in uw KQL-database of -tabel is ingeschakeld, hebt u nu toegang tot alle gegevens op het opgegeven OneLake-pad in Delta Lake-indeling. U kunt ook een OneLake-snelkoppeling maken vanuit een Lakehouse, Data Warehouse of de gegevens rechtstreeks opvragen via de Direct Lake-modus van Power BI.

Gebruiken in combinatie met de opties Gegevens analyseren met

Wanneer De beschikbaarheid van OneLake is ingeschakeld, maken Eventhouse- en KQL-database-items analysegegevens beschikbaar met opties op databaseniveau:

  • SQL-eindpunt: beschikbaar wanneer de beschikbaarheid van OneLake en schemasynchronisatie zijn ingeschakeld.
  • Notebook: Hiermee opent u een analyse op basis van een notitieblok voor de geselecteerde database.

Als u de beschikbaarheid van OneLake uitschakelt, wordt de optie sql-eindpunt verwijderd uit dit menu totdat u het opnieuw inschakelt.

Adaptief gedrag voor batchverwerking van parquet-bestanden

Een eventhouse batcheert op intelligente wijze binnenkomende gegevensstromen in een of meer Parquet-bestanden die zijn gestructureerd voor analyse. Het bundelen van gegevensstromen is belangrijk wanneer gegevens geleidelijk binnenkomen, omdat het inefficiënt kan zijn om veel kleine Parquet-bestanden in de data lake te schrijven. Deze inefficiëntie resulteert in hogere kosten en slechte queryprestaties.

Het adaptieve mechanisme van eventhouse kan schrijfbewerkingen naar OneLake vertragen als er onvoldoende gegevens zijn om optimale Parquet-bestanden te maken. Dit gedrag zorgt ervoor dat Parquet-bestanden optimaal in grootte zijn en voldoen aan best practices voor Delta Lake. Hiermee wordt de behoefte aan beschikbaarheid van gegevens in balans gebracht met kosten- en prestatieoverwegingen.

Standaard en configureerbare schrijflatentie voor OneLake-beschikbaarheid:

Setting Standaardwaarde Toegestaan bereik
Vertraging van de schrijfbewerking (TargetLatencyInMinutes) Tot 3 uur of totdat bestanden met voldoende grootte (meestal 200-256 MB) worden gemaakt 5 minuten tot 3 uur

Gebruik bijvoorbeeld de volgende Kusto-opdracht om de schrijfvertraging in te stellen op 5 minuten voor één tabel:

.alter-merge table <TableName> policy mirroring dataformat=parquet with (IsEnabled=true, TargetLatencyInMinutes=5);

Voorzichtigheid

Het aanpassen van de vertraging tot een kortere periode kan leiden tot een suboptimale deltatabel met een groot aantal kleine bestanden, wat kan leiden tot inefficiënte queryprestaties. De resulterende tabel in OneLake is alleen-lezen en kan niet worden geoptimaliseerd nadat deze is gemaakt.

U kunt controleren hoe lang geleden nieuwe gegevens in de lake zijn toegevoegd door uw gegevenslatentie te controleren met behulp van de .show table mirroring operations opdracht.

Resultaten worden gemeten vanaf de laatste keer dat gegevens zijn toegevoegd. Wanneer Latency00:00:00 retourneert, zijn alle gegevens in de KQL-database beschikbaar in OneLake.

Delta Lake-bestanden weergeven in OneLake

Wanneer u De beschikbaarheid van OneLake voor een tabel inschakelt, maakt het proces een deltalogboekmap samen met eventuele bijbehorende JSON- en Parquet-bestanden. U kunt de bestanden bekijken die beschikbaar zijn in OneLake en hun eigenschappen terwijl u binnen Real-Time Intelligence blijft.

  • Als u de bestanden wilt weergeven, beweegt u de muisaanwijzer over een tabel in het deelvenster Explorer en selecteert u vervolgens het menu Meer [...]>Bestanden weergeven.

    Schermopname van het deelvenster Explorer met de vervolgkeuzelijst Meer van een tabel.

  • Als u de eigenschappen van de deltalogboekmap of de afzonderlijke bestanden wilt bekijken, beweegt u de muisaanwijzer over de map of het bestand en selecteert u vervolgens het menu Meer [...]>Eigenschappen.

  • Om de bestanden in de delta logboek map weer te geven:

    1. Selecteer de map _delta_log.
    2. Selecteer een bestand om de metagegevens en het schema van de tabel weer te geven. De geopende editor is in alleen-lezen formaat.

Open het beleid voor OneLake-spiegeling

Wanneer u De beschikbaarheid van OneLake voor een KQL-database of -tabel inschakelt, schakelt het systeem standaard een spiegelingsbeleid in. U kunt het spiegelingsbeleid gebruiken om gegevenslatentie te bewaken of het zodanig te wijzigen dat het deltatabellen partitioneert.

Notitie

Als u de beschikbaarheid van OneLake uitschakelt, wordt de eigenschap van het spiegelingsbeleid IsEnabled ingesteld op false (IsEnabled=false).

Deltatabellen partitioneren in OneLake

U kunt uw deltatabellen partitioneren om de querysnelheid te verbeteren. Zie Wanneer kunt u tabellen partitioneren voor informatie over wanneer u uw OneLake-bestanden wilt partitioneren. Elke partitie wordt weergegeven als een afzonderlijke kolom, met gebruik van de PartitionName die in de lijst Partitions worden vermeld. Deze weergave betekent dat uw OneLake-kopie meer kolommen heeft dan uw brontabel.

Gebruik de .alter-merge table policy mirroring opdracht om uw deltatabellen te partitioneren.

Delta-tabellen opvragen vanuit een Fabric-notebook

U kunt Fabric Notebook gebruiken om de OneLake-gegevens te lezen met behulp van het volgende codefragment.

Tip

U kunt een nieuw of bestaand Fabric notebook rechtstreeks starten vanuit Gegevens analyseren met>Notebook in een Eventhouse- of KQL-database. Het notitieblok wordt automatisch gekoppeld aan de geselecteerde databasecontext. Gebruik het volgende codevoorbeeld als u handmatige op pad gebaseerde toegang wilt.

Vervang in het codefragment <workspaceGuid>, <workspaceGuid>en <tableName> door uw eigen waarden.

delta_table_path = 'abfss://<workspaceGuid>@onelake.dfs.fabric.microsoft.com/<eventhouseGuid>/Tables/<tableName>'

df = spark.read.format("delta").load(delta_table_path)

df.show()

Notitie

Gebruik deze code voor een Azure Data Explorer-database:

delta_table_path = 'abfss://<workspaceName>@onelake.dfs.fabric.microsoft.com/<itemName>.KustoDatabase/Tables/<tableName>'