Azure Data Explorer overzicht van gegevens opnemen

Gegevens opnemen is het proces dat wordt gebruikt voor het laden van gegevensrecords uit een of meer bronnen in een tabel in Azure Data Explorer. Zodra de gegevens zijn opgenomen, zijn ze beschikbaar voor query's.

In het onderstaande diagram ziet u de end-to-end-stroom voor het werken in Azure Data Explorer en ziet u verschillende opnamemethoden.

Overzichtsschema van gegevens opname en beheer.

De Azure Data Explorer-service voor gegevensbeheer, die verantwoordelijk is voor gegevensingestie, implementeert het volgende proces:

Azure Data Explorer haalt gegevens op uit een externe bron en leest aanvragen uit een Azure-wachtrij die in behandeling is. Gegevens worden gebatcheerd of gestreamd naar Data Manager. Batchgegevens die naar dezelfde database en tabel stromen, zijn geoptimaliseerd voor opnamedoorvoer. Azure Data Explorer valideert initiële gegevens en converteert waar nodig gegevensindelingen. Verdere gegevensmanipulatie omvat het afstemmen van schema's, ordenen, indexeren, coderen en comprimeren van de gegevens. Gegevens worden opgeslagen in de opslag volgens het setretentiebeleid. De Data Manager vervolgens de gegevens opnemen in de engine, waar deze beschikbaar zijn voor query's.

Ondersteunde gegevensindelingen, eigenschappen en machtigingen

Batching versus streaming-opname

  • Batching-opname maakt batching van gegevens en is geoptimaliseerd voor een hoge opnamedoorvoer. Deze methode is het voorkeurstype en het best presterende type opname. Gegevens worden gebatcheerd op basis van opname-eigenschappen. Kleine batches met gegevens worden vervolgens samengevoegd en geoptimaliseerd voor snelle queryresultaten. Het batchbeleid voor opname kan worden ingesteld voor databases of tabellen. Standaard is de maximale batchwaarde 5 minuten, 1000 items of een totale grootte van 1 GB. De limiet voor de gegevensgrootte voor een batchingestieopdracht is 4 GB.

  • Streaming-opname is continue gegevensingestie vanuit een streamingbron. Streaming-opname maakt bijna realtime latentie mogelijk voor kleine gegevenssets per tabel. Gegevens worden in eerste instantie opgenomen in rijopslag en vervolgens verplaatst naar de omvang van de kolomopslag. Streaming-opname kan worden uitgevoerd met behulp van Azure Data Explorer clientbibliotheek of een van de ondersteunde gegevenspijplijnen.

Opnamemethoden en hulpprogramma's

Azure Data Explorer ondersteunt verschillende opnamemethoden, elk met eigen doelscenario's. Deze methoden omvatten opnamehulpprogramma's, connectors en invoegprogramma's voor diverse services, beheerde pijplijnen, programmatische opname met behulp van SDK's en directe toegang tot opname.

Opname met beheerde pijplijnen

Voor organisaties die beheer (beperking, nieuwe proberen, monitors, waarschuwingen en meer) willen laten doen door een externe service, is het gebruik van een connector waarschijnlijk de meest geschikte oplossing. Opname in de wachtrij is geschikt voor grote gegevensvolumes. Azure Data Explorer ondersteunt de volgende Azure Pipelines:

Opname met behulp van connectors en invoegvoegingen

Programmatische opname met behulp van SDK's

Azure Data Explorer biedt SDK's die kunnen worden gebruikt voor het opnemen van query's en gegevens. Programmatische opname is geoptimaliseerd voor het verminderen van opnamekosten (COG's), door het minimaliseren van opslagtransacties tijdens en na het opnameproces.

Beschikbare SDK's en opensource-projecten

Hulpprogramma's

  • Opname met één klik:hiermee kunt u snel gegevens opnemen door tabellen te maken en aan te passen op basis van een breed scala aan brontypen. Opname met één klik stelt automatisch tabellen en toewijzingsstructuren voor op basis van de gegevensbron in Azure Data Explorer. Opname met één klik kan worden gebruikt voor een een time-opname of voor het definiëren van continue opname via Event Grid op de container waarin de gegevens zijn opgenomen.

  • LightIngest:een opdrachtregelprogramma voor ad-hocgegevensingestie in Azure Data Explorer. Het hulpprogramma kan brongegevens uit een lokale map of uit een Azure Blob Storage-container halen.

Opdrachten voor opnamebesturingselementen

Gebruik opdrachten om gegevens rechtstreeks op te nemen in de engine. Met deze methode worden de Gegevensbeheer-services omzeild en mag deze daarom alleen worden gebruikt voor verkenning en prototypen. Gebruik deze methode niet in productie- of scenario's met grote volumes.

  • Inline-opname:een besturingsopdracht .inline opnemen wordt verzonden naar de engine, met de gegevens die moeten worden opgenomen als onderdeel van de opdrachttekst zelf. Deze methode is bedoeld voor geïmproviseerde testdoeleinden.

  • Opnemen vanuit query:een besturingsopdracht .set, .append, .set-or-append of .set-or-replace wordt verzonden naar de engine, met de gegevens die indirect zijn opgegeven als de resultaten van een query of een opdracht.

  • Opnemen vanuit opslag (pull): er wordt een besturingsopdracht .ingest in verzonden naar de engine, met de gegevens die zijn opgeslagen in een externe opslag (bijvoorbeeld Azure Blob Storage) die toegankelijk is voor de engine en waar naar wordt gewezen met de opdracht .

Opnamemethoden en hulpprogramma's vergelijken

Opnamenaam Gegevenstype Maximale bestandsgrootte Streaming, batching, direct Meest voorkomende scenario's Overwegingen
Opname met één klik *sv, JSON 1 GB gedecomprimeerd (zie opmerking) Batching naar container, lokaal bestand en blob in directe opname Eenmalige, tabelschema maken, definitie van continue opname met gebeurtenisraster, bulkingestie met container (maximaal 5000 blobs; geen limiet bij het gebruik van historische opname)
LightIngest Alle ondersteunde indelingen 1 GB gedecomprimeerd (zie opmerking) Batching via DM of directe opname naar engine Gegevensmigratie, historische gegevens met aangepaste opnametijdstempels, bulksgewijs opnemen (geen groottebeperking) Casegevoelig, ruimtegevoelig
ADX Kafka Avro, ApacheAvro, JSON, CSV, Parquet en ORC Onbeperkt. Neemt Java-beperkingen over. Batching, streaming Bestaande pijplijn, hoog volumeverbruik van de bron. Voorkeur kan worden bepaald door welke 'meerdere producer/consumer'-service al wordt gebruikt of hoe beheerde van een service is gewenst.
ADX naar Apache Spark Elke indeling die wordt ondersteund door de Spark-omgeving Onbeperkt Batchverwerking Bestaande pijplijn, voorverwerking in Spark vóór opname, snelle manier om een veilige (Spark)-streamingpijplijn te maken op basis van de verschillende bronnen die de Spark-omgeving ondersteunt. Houd rekening met de kosten van een Spark-cluster. Voor batch schrijven vergelijkt u met Azure Data Explorer gegevensverbinding voor Event Grid. Vergelijk voor Spark-streaming met de gegevensverbinding voor Event Hub.
LogStash JSON Onbeperkt. Neemt Java-beperkingen over. Invoer voor de connector zijn Logstash-gebeurtenissen en de connector wordt uitgevoerd naar Kusto met behulp van batching-opname. Bestaande pijplijn maakt gebruik van de volwassen, open source aard van Logstash voor een hoog volumeverbruik van de invoer(en). Voorkeur kan worden bepaald door welke 'meerdere producer/consumer'-service al wordt gebruikt of hoe beheerde van een service is gewenst.
Azure Data Factory (ADF) Ondersteunde gegevensindelingen Onbeperkt *(per ADF-beperkingen) Batching of per ADF-trigger Ondersteunt indelingen die meestal niet worden ondersteund, grote bestanden, kunnen kopiëren van meer dan 90 bronnen, van perm naar cloud Deze methode duurt relatief langer voordat gegevens worden opgenomen. ADF uploadt alle gegevens naar het geheugen en begint vervolgens met de opname.
Power Automate Alle ondersteunde indelingen 1 GB gedecomprimeerd (zie opmerking) Batchverwerking Opnameopdrachten als onderdeel van de stroom. Wordt gebruikt om pijplijnen te automatiseren.
Logic Apps Alle ondersteunde indelingen 1 GB gedecomprimeerd (zie opmerking) Batchverwerking Wordt gebruikt om pijplijnen te automatiseren
IoT Hub Ondersteunde gegevensindelingen N.v.t. Batching, streaming IoT-berichten, IoT-gebeurtenissen, IoT-eigenschappen
Event Hub Ondersteunde gegevensindelingen N.v.t. Batching, streaming Berichten, gebeurtenissen
Event Grid Ondersteunde gegevensindelingen 1 GB gedecomprimeerd Batchverwerking Continue opname vanuit Azure Storage, externe gegevens in Azure Storage Opname kan worden geactiveerd door acties voor het wijzigen van de naam van blobs of het maken van blobs
.NET SDK Alle ondersteunde indelingen 1 GB gedecomprimeerd (zie opmerking) Batching, streaming, direct Uw eigen code schrijven op basis van de behoeften van de organisatie
Python Alle ondersteunde indelingen 1 GB gedecomprimeerd (zie opmerking) Batching, streaming, direct Uw eigen code schrijven op basis van de behoeften van de organisatie
Node.js Alle ondersteunde indelingen 1 GB gedecomprimeerd (zie opmerking) Batching, streaming, direct Uw eigen code schrijven op basis van de behoeften van de organisatie
Java Alle ondersteunde indelingen 1 GB gedecomprimeerd (zie opmerking) Batching, streaming, direct Uw eigen code schrijven op basis van de behoeften van de organisatie
REST Alle ondersteunde indelingen 1 GB gedecomprimeerd (zie opmerking) Batching, streaming, direct Uw eigen code schrijven op basis van de behoeften van de organisatie
Aan de slag Alle ondersteunde indelingen 1 GB gedecomprimeerd (zie opmerking) Batching, streaming, direct Uw eigen code schrijven op basis van de behoeften van de organisatie

Notitie

Wanneer er naar wordt verwezen in de bovenstaande tabel, ondersteunt opname een maximale bestandsgrootte van 4 GB. Het wordt aanbevolen bestanden op te nemen tussen 100 MB en 1 GB.

Opnameproces

Nadat u de meest geschikte opnamemethode voor uw behoeften hebt gekozen, moet u de volgende stappen volgen:

  1. Batchbeleid instellen (optioneel)

    Batching manager batches opnamegegevens op basis van de opname batching beleid. Definieer een batchbeleid vóór opname. Zie best practices voor opname - optimaliseren voor doorvoer. Het kan vijf minuten duren voordat wijzigingen in het batchbeleid van kracht zijn. Het beleid stelt batchlimieten in op basis van drie factoren: de tijd die is verstreken sinds het maken van de batch, het totale aantal items (blobs) of de totale batchgrootte. Standaard zijn de instellingen 5 minuten / 1000 blobs / 1 GB, waarbij de limiet voor het eerst van kracht is. Daarom is er meestal een vertraging van 5 minuten bij het in de wachtrij opslaan van voorbeeldgegevens voor opname.

  2. Bewaarbeleid instellen

    Gegevens die zijn opgenomen in een tabel in Azure Data Explorer zijn onderworpen aan het effectieve bewaarbeleid van de tabel. Tenzij expliciet bewaarbeleid voor een tabel is ingesteld, wordt het geldende bewaarbeleid afgeleid van het bewaarbeleid van de database. Hot retention is een functie van clustergrootte en uw bewaarbeleid. Door meer gegevens op te nemen dan u over beschikbare ruimte hebt, wordt de eerste in gegevens gedwongen om niet-retentie te veroorzaken.

    Zorg ervoor dat het retentiebeleid van de database aan uw behoeften is aangepast. Als dat niet het geval is, overschrijft u het expliciet op tabelniveau. Zie bewaarbeleid voor meer informatie.

  3. Een tabel maken

    Als u gegevens wilt opnemen, moet u vooraf een tabel maken. Gebruik een van de volgende opties:

    Notitie

    Als een record onvolledig is of een veld niet kan worden geparseerd als het vereiste gegevenstype, worden de bijbehorende tabelkolommen gevuld met null-waarden.

  4. Schematoewijzing maken

    Schematoewijzing helpt bij het binden van brongegevensvelden aan doeltabelkolommen. Met toewijzing kunt u gegevens uit verschillende bronnen in dezelfde tabel zetten, op basis van de gedefinieerde kenmerken. Er worden verschillende soorten toewijzingen ondersteund, zowel rijgericht (CSV, JSON en AVRO) als kolomgeoriënteerd (Parquet). In de meeste methoden kunnen toewijzingen ook vooraf worden gemaakt in de tabel en er kan vanuit de opdrachtparameter voor opnemen naar worden verwezen.

  5. Updatebeleid instellen (optioneel)

    Sommige toewijzingen van gegevensindelingen (Parquet, JSON en Avro) ondersteunen eenvoudige en nuttige opnametijdtransformaties. Als voor het scenario complexere verwerking bij opname is vereist, past u het updatebeleidaan, dat lichtgewicht verwerking ondersteunt met behulp van queryopdrachten. Het updatebeleid voert automatisch extracties en transformaties uit op opgenomen gegevens in de oorspronkelijke tabel en opname van de resulterende gegevens in een of meer doeltabellen.

Volgende stappen