Dela via


Tillgänglighet för Eventhouse OneLake

Du kan skapa en logisk kopia av KQL-databasdata i ett händelsehus genom att aktivera OneLake-tillgänglighet. Om du aktiverar OneLake-tillgänglighet kan du köra frågor mot data i din KQL-databas i Delta Lake-format via andra Fabric-motorer, till exempel Direct Lake-läge i Power BI, Warehouse, Lakehouse, Notebooks med mera.

Delta Lake är ett enhetligt data lake-tabellformat som ger sömlös dataåtkomst för alla beräkningsmotorer i Microsoft Fabric. Mer information om Delta Lake finns i Vad är Delta Lake?.

I den här artikeln får du lära dig hur du aktiverar tillgängligheten för KQL-databasdata i OneLake.

Hur det fungerar

Du kan aktivera OneLake-tillgänglighet på databas- eller tabellnivå. När de är aktiverade på databasnivå görs alla nya tabeller och deras data tillgängliga i OneLake. När du aktiverar funktionen kan du också välja att tillämpa det här alternativet på befintliga tabeller genom att välja alternativet Använd för befintliga tabeller alternativet för att inkludera historisk återfyllnad. Om du aktiverar på tabellnivå blir endast tabellen och dess data tillgängliga i OneLake. Principen datakvarhållning för din KQL-databas tillämpas också på data i OneLake. Data som tagits bort från din KQL-databas i slutet av kvarhållningsperioden tas också bort från OneLake. Om du inaktiverar OneLake-tillgänglighettas data tillfälligt bort från OneLake.

Även om OneLake-tillgänglighet är aktiverat kan du inte utföra följande uppgifter:

  • Byt namn på tabeller
  • Ändra tabellscheman
  • Tillämpa säkerhet på radnivå på tabeller
  • Data kan inte tas bort, trunkeras eller rensas

Om du behöver utföra någon av dessa uppgifter använder du följande steg:

Viktigt!

Om du inaktiverar OneLake-tillgänglighet mjukt raderar ditt data från OneLake. När du aktiverar tillgängligheten igen görs alla data tillgängliga i OneLake, inklusive historisk återfyllnad.

  1. Inaktivera tillgänglighet för OneLake .

  2. Utför önskad uppgift.

  3. Aktivera OneLake-tillgänglighet.

Viktigt!

Mer information om den tid det tar för data att visas i OneLake finns i Anpassningsbart beteende.

Det finns ingen extra lagringskostnad för att aktivera OneLake-tillgänglighet. Mer information finns i resursförbrukning.

Förutsättningar

  • En arbetsyta med en kapacitet aktiverad för Microsoft Fabric
  • En KQL-databas med redigeringsbehörigheter och data

Aktivera OneLake-tillgänglighet

Du kan aktivera OneLake-tillgänglighet antingen på en KQL-databas eller en tabell.

  1. För att aktivera OneLake-tillgänglighet, välj en databas eller tabell.

  2. I avsnittet OneLake i informationsfönstret anger du Tillgänglighet till Aktiverad.

    Skärmbild av OneLake-sektionen i fönstret databasdetaljer med alternativet Tillgänglighet markerat.

  3. I fönstret Aktivera Tillgänglighet för Onelake väljer du Aktivera.

    Skärmbild av fönstret Aktivera Onelake-tillgänglighet som visar alternativet Tillämpa på befintliga tabeller.

  4. Databasen eller tabellinformationen uppdateras automatiskt.

    Skärmbild av onelake-avsnittets information när Tillgänglighet har angetts till Aktiverad. Alternativet för att exponera data för OneLake är aktiverat.

När OneLake-tillgängligheten är aktiverad i din KQL-databas eller tabell kan du nu komma åt all data på den angivna OneLake-sökvägen i Delta Lake-format. Du kan också skapa en OneLake-genväg från en Lakehouse, Data Warehouse eller utföra frågor mot datan direkt via Direct Lake-läge i Power BI.

Anpassningsbart beteende

Eventhouse erbjuder en robust mekanism som på ett intelligent sätt batchar inkommande dataströmmar till en eller flera Parquet-filer, strukturerade för analys. Batchbearbetning av dataströmmar är viktigt vid hantering av sakta rinnande data. Att skriva många små Parquet-filer i sjön kan vara ineffektivt vilket resulterar i högre kostnader och dåliga prestanda.

Eventhouses anpassningsbara mekanism kan fördröja skrivåtgärder om det inte finns tillräckligt med data för att skapa optimala Parquet-filer. Det här beteendet säkerställer att Parquet-filer är optimala i storlek och följer bästa praxis för Delta Lake. Den anpassningsbara mekanismen Eventhouse säkerställer att Parquet-filerna är förberedda för analys och balanserar behovet av snabb datatillgänglighet med kostnads- och prestandaöverväganden.

Kommentar

  • Skrivåtgärden kan som standard ta upp till 3 timmar eller tills filer med tillräcklig storlek (vanligtvis 200–256 MB) har skapats.
  • Du kan justera fördröjningen till ett värde mellan 5 minuter och 3 timmar.

Använd till exempel följande kommando för att ange fördröjningen till 5 minuter:

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

Försiktighet

Om du justerar fördröjningen till en kortare period kan det leda till en suboptimal deltatabell med ett stort antal små filer, vilket kan leda till ineffektiv frågeprestanda. Den resulterande tabellen i OneLake är skrivskyddad och kan inte optimeras när den har skapats.

Du kan övervaka hur nyligen nya data lades till i sjön genom att kontrollera datafördröjningen med hjälp av kommandot .show table mirroring operations.

Resultaten mäts från senaste gången data lades till. När svarstiden resulterar i 00:00:00 är alla data i KQL-databasen tillgängliga i OneLake.

Visa filer

När du aktiverar OneLake-tillgänglighet i en tabell skapas en deltaloggmapp tillsammans med motsvarande JSON- och Parquet-filer. Du kan visa de filer som har gjorts tillgängliga i OneLake och deras egenskaper medan de finns kvar i Realtidsinformation.

  • Om du vill visa filerna hovra över en tabell i Explorer-fönstret och välj sedan menyn Mer [...]>Visa filer.

    Skärmbild av utforskarfönstret som visar listrutan Mer i en tabell.

  • Om du vill visa egenskaperna för deltaloggmappen eller de enskilda filerna hovra över mappen eller filen och välj sedan menyn Mer [...]>Egenskaper.

  • Så här visar du filerna i deltaloggmappen:

    1. Välj mappen _delta_log .
    2. Välj en fil för att visa tabellmetadata och schema. Redigeraren som öppnas är i skrivskyddat format.

Åtkomst till speglingsprincip

När OneLake-tillgänglighet är aktiverat, aktiveras som standard en speglingspolicy. Du kan använda principen för att övervaka datafördröjning eller ändra den för att partitionera deltatabeller.

Kommentar

Om du inaktiverar OneLake-tillgänglighet är speglingsprincipens IsEnabled egenskap inställd på false (IsEnabled=false).

Partitionsdeltatabeller

Du kan partitionera deltatabellerna för att förbättra frågehastigheten. Information om när du ska partitionera dina OneLake-filer finns i När du ska partitionera tabeller. Varje partition representeras som en separat kolumn med partitionsnamnet som anges i listan Partitioner. Det innebär att din OneLake-kopia har fler kolumner än källtabellen.

Om du vill partitionera deltatabellerna använder du speglingskommandot .alter-merge table policy.

Fråga deltatabeller

Du kan använda Fabric Notebook för att läsa OneLake-data med hjälp av följande kodfragment.

I kodfragmentet ersätter du <workspaceGuid>, <workspaceGuid>och <tableName> med dina egna värden.

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

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

df.show()

Kommentar

Använd den här koden för en Azure Data Explorer-databas:

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