Voor het gebruik van Data Explorer in ADF volgt u Azure Data Explorer integreren met Azure Data Factory

Azure Data Factory (ADF) is een cloudservice voor gegevensintegratie waarmee u verschillende gegevensarchieven kunt integreren en activiteiten op de gegevens kunt uitvoeren. Met ADF kunt u gegevensgestuurde werkstromen maken voor het organiseren en automatiseren van gegevensverplaatsing en gegevenstransformatie. Azure Data Explorer is een van de ondersteunde gegevensarchieven in Azure Data Factory.

Azure Data Factory-activiteiten voor Azure Data Explorer

Er zijn verschillende integraties met Azure Data Factory beschikbaar voor gebruikers van Azure Data Explorer:

Kopieeractiviteit

Azure Data Factory Copy-activiteit wordt gebruikt om gegevens over te dragen tussen gegevensarchieven. Azure Data Explorer wordt ondersteund als een bron, waarbij gegevens worden gekopieerd van Azure Data Explorer naar een ondersteund gegevensarchief, en een sink, waar gegevens worden gekopieerd uit een ondersteund gegevensarchief naar Azure Data Explorer. Zie gegevens kopiëren van of naar Azure Data Explorer met behulp van Azure Data Factory voor meer informatie. Zie Gegevens laden van Azure Data Factory in Azure Data Explorer voor een gedetailleerd overzicht. Azure Data Explorer wordt ondersteund door Azure IR (Integration Runtime), die wordt gebruikt wanneer gegevens worden gekopieerd in Azure, en zelf-hostende IR, die wordt gebruikt bij het kopiëren van gegevens van/naar gegevensarchieven die zich on-premises of in een netwerk met toegangsbeheer bevinden, zoals een Azure-Virtual Network. Zie welke IR u moet gebruiken voor meer informatie.

Tip

Wanneer u de kopieeractiviteit gebruikt en een gekoppelde service of een gegevensset maakt, selecteert u het gegevensarchief Azure Data Explorer (Kusto) en niet het oude gegevensarchief Kusto.

Opzoekactiviteit

De opzoekactiviteit wordt gebruikt voor het uitvoeren van query's op Azure Data Explorer. Het resultaat van de query wordt geretourneerd als de uitvoer van de opzoekactiviteit en kan worden gebruikt in de volgende activiteit in de pijplijn, zoals beschreven in de documentatie over ADF Opzoeken.

Naast de limiet voor de antwoordgrootte van 5.000 rijen en 2 MB, heeft de activiteit ook een time-outlimiet voor query's van 1 uur.

Opdrachtactiviteit

Met de opdrachtactiviteit kunt u Azure Data Explorer-beheeropdrachten uitvoeren. In tegenstelling tot query's kunnen de beheeropdrachten gegevens of metagegevens mogelijk wijzigen. Sommige beheeropdrachten zijn gericht op het opnemen van gegevens in Azure Data Explorer, met behulp van opdrachten zoals .ingestof .set-or-append) of het kopiëren van gegevens van Azure Data Explorer naar externe gegevensarchieven met behulp van opdrachten zoals .export. Zie Azure Data Factory opdrachtactiviteit gebruiken om Azure Data Explorer-beheeropdrachten uit te voeren voor een gedetailleerd overzicht van de opdrachtactiviteit. Het gebruik van een beheeropdracht om gegevens te kopiëren kan soms een snellere en goedkopere optie zijn dan de Copy-activiteit. Zie Select between Copy and Command activities when copying data (Selecteren tussen kopieer- en opdrachtactiviteiten bij het kopiëren van gegevens) om te bepalen wanneer u de opdrachtactiviteit versus de Copy-activiteit moet gebruiken.

Bulksgewijs kopiëren vanuit een databasesjabloon

Bulksgewijs kopiëren van een database naar Azure Data Explorer met behulp van de sjabloon Azure Data Factory is een vooraf gedefinieerde Azure Data Factory-pijplijn. De sjabloon wordt gebruikt om veel pijplijnen per database of per tabel te maken voor het sneller kopiëren van gegevens.

Toewijzing gegevensstromen

Azure Data Factory toewijzingsgegevensstromen zijn visueel ontworpen gegevenstransformaties waarmee data engineers grafische logica voor gegevenstransformatie kunnen ontwikkelen zonder code te schrijven. Gebruik de volgende methode om een gegevensstroom te maken en gegevens op te nemen in Azure Data Explorer:

  1. Maak de toewijzingsgegevensstroom.
  2. Exporteer de gegevens naar Azure Blob.
  3. Definieer event grid- of ADF-kopieeractiviteit om de gegevens op te nemen in Azure Data Explorer.

Selecteren tussen de activiteiten Kopiëren en Azure Data Explorer Command bij het kopiëren van gegevens

Deze sectie helpt u bij het selecteren van de juiste activiteit voor het kopiëren van gegevens.

Wanneer u gegevens van of naar Azure Data Explorer kopieert, zijn er twee opties beschikbaar in Azure Data Factory:

  • Copy-activiteit.
  • Azure Data Explorer Command-activiteit, waarmee een van de beheeropdrachten wordt uitgevoerd waarmee gegevens worden overgedragen in Azure Data Explorer.

Gegevens kopiëren uit Azure Data Explorer

U kunt gegevens uit Azure Data Explorer kopiëren met behulp van de kopieeractiviteit of de .export opdracht . Met .export de opdracht wordt een query uitgevoerd en worden vervolgens de resultaten van de query geëxporteerd.

Zie de volgende tabel voor een vergelijking van de Copy-activiteit en .export opdracht voor het kopiëren van gegevens uit Azure Data Explorer.

Kopieeractiviteit opdracht .export
Beschrijving van stroom ADF voert een query uit op Kusto, verwerkt het resultaat en verzendt het naar het doelgegevensarchief.
(Azure Data Explorer > ADF-sinkgegevensarchief>)
ADF verzendt een .export beheeropdracht naar Azure Data Explorer, waarmee de opdracht wordt uitgevoerd en de gegevens rechtstreeks naar het doelgegevensarchief worden verzonden.
(** Azure Data Explorer > sink-gegevensarchief**)
Ondersteunde doelgegevensarchieven Een breed scala aan ondersteunde gegevensarchieven ADLSv2, Azure Blob, SQL Database
Prestaties Gecentraliseerd
  • Gedistribueerd (standaard), gegevens van meerdere knooppunten tegelijk exporteren
  • Sneller en COGS (kosten van verkochte goederen) efficiënt.
Serverlimieten Querylimieten kunnen worden uitgebreid/uitgeschakeld. ADF-query's bevatten standaard het volgende:
  • Groottelimiet van 500.000 records of 64 MB.
  • Tijdslimiet van 10 minuten.
  • noTruncation ingesteld op false.
De querylimieten worden standaard uitgebreid of uitgeschakeld:
  • Groottelimieten zijn uitgeschakeld.
  • De time-out van de server wordt verlengd tot 1 uur.
  • MaxMemoryConsumptionPerIterator en MaxMemoryConsumptionPerQueryPerNode worden uitgebreid tot max (5 GB, TotalPhysicalMemory/2).

Tip

Als uw kopieerbestemming een van de gegevensarchieven is die worden ondersteund door de .export opdracht en als geen van de Copy-activiteit functies cruciaal is voor uw behoeften, selecteert u de .export opdracht.

Gegevens kopiëren naar Azure Data Explorer

U kunt gegevens kopiëren naar Azure Data Explorer met behulp van de kopieeractiviteit of opnameopdrachten, zoals opnemen uit query (.set-or-append, .set-or-replace, .set, .replace)en opnemen uit opslag (.ingest).

Zie de volgende tabel voor een vergelijking van de Copy-activiteit en opnameopdrachten voor het kopiëren van gegevens naar Azure Data Explorer.

Kopieeractiviteit Opname via query
.set-or-append / .set-or-replace / .set / .replace
Opname vanuit opslag
.ingest
Beschrijving van stroom ADF haalt de gegevens op uit het brongegevensarchief, converteert deze naar een tabelindeling en voert de vereiste schematoewijzingswijzigingen uit. ADF uploadt vervolgens de gegevens naar Azure-blobs, splitst deze in segmenten en downloadt vervolgens de blobs om ze op te nemen in de Azure Data Explorer-tabel.
(Brongegevensarchief > ADF > Azure-blobs > Azure Data Explorer)
Met deze opdrachten kunt u een query of opdracht .show uitvoeren en de resultaten van de query opnemen in een tabel (Azure Data Explorer > Azure Data Explorer). Met deze opdracht worden gegevens opgenomen in een tabel door de gegevens op te halen uit een of meer opslagartefacten in de cloud.
Ondersteunde brongegevensarchieven diverse opties ADLS Gen 2, Azure Blob, SQL (met behulp van de invoegtoepassing sql_request(), Azure Cosmos DB (met behulp van de cosmosdb_sql_request-invoegtoepassing) en andere gegevensarchieven die HTTP- of Python-API's bieden. Bestandssysteem, Azure Blob Storage, ADLS Gen 1, ADLS Gen 2
Prestaties Opname wordt in de wachtrij geplaatst en beheerd, wat zorgt voor kleine opnamebewerkingen en hoge beschikbaarheid door taakverdeling, nieuwe pogingen en foutafhandeling te bieden.
  • Deze opdrachten zijn niet ontworpen voor het importeren van gegevens met grote volumes.
  • Werkt zoals verwacht en goedkoper. Maar voor productiescenario's en wanneer de verkeerssnelheden en gegevensgrootten groot zijn, gebruikt u de Copy-activiteit.
Serverlimieten
  • Geen groottelimiet.
  • Maximale time-outlimiet: één uur per opgenomen blob.
  • Er is alleen een groottelimiet voor het queryonderdeel, die kan worden overgeslagen door op te noTruncation=truegeven.
  • Maximale time-outlimiet: één uur.
  • Geen groottelimiet.
  • Maximale time-outlimiet: één uur.

Tip

  • Gebruik de ingest from query opdrachten bij het kopiëren van gegevens van ADF naar Azure Data Explorer.
  • Voor grote gegevenssets (>1 GB) gebruikt u de Copy-activiteit.

Vereiste machtigingen

De volgende tabel bevat de vereiste machtigingen voor verschillende stappen in de integratie met Azure Data Factory.

Stap Bewerking Minimummachtigingsniveau Notities
Een gekoppelde service maken Databasenavigatie databaseviewer
De aangemelde gebruiker die ADF gebruikt, moet gemachtigd zijn om metagegevens van de database te lezen.
De gebruiker kan de databasenaam handmatig opgeven.
Verbinding testen databasemonitor of tabel ingestor
De service-principal moet zijn gemachtigd om opdrachten op databaseniveau .show of opname op tabelniveau uit te voeren.
  • TestConnection controleert de verbinding met het cluster en niet met de database. Het kan zelfs lukken als de database niet bestaat.
  • Beheerdersmachtigingen voor tabellen zijn niet voldoende.
Een gegevensset maken Tabelnavigatie databasemonitor
De aangemelde gebruiker die ADF gebruikt, moet gemachtigd zijn om opdrachten op databaseniveau .show uit te voeren.
De gebruiker kan de tabelnaam handmatig opgeven.
Een gegevensset of kopieeractiviteit maken Voorbeeld van gegevens bekijken databaseviewer
Service-principal moet gemachtigd zijn om databasemetagegevens te lezen.
Schema importeren databaseviewer
Service-principal moet gemachtigd zijn om databasemetagegevens te lezen.
Wanneer Azure Data Explorer de bron is van een kopie in tabelvorm naar tabel, importeert ADF automatisch het schema, zelfs als de gebruiker het schema niet expliciet heeft geïmporteerd.
Azure Data Explorer als sink Een kolomtoewijzing op naam maken databasemonitor
De service-principal moet zijn gemachtigd om opdrachten op databaseniveau .show uit te voeren.
  • Alle verplichte bewerkingen werken met table ingestor.
  • Sommige optionele bewerkingen kunnen mislukken.
  • Een CSV-toewijzing voor de tabel maken
  • De toewijzing verwijderen
table ingestor of database admin
De service-principal moet gemachtigd zijn om wijzigingen aan te brengen in een tabel.
Gegevens opnemen table ingestor of database admin
De service-principal moet gemachtigd zijn om wijzigingen aan te brengen in een tabel.
Azure Data Explorer als bron Query uitvoeren databaseviewer
Service-principal moet gemachtigd zijn om databasemetagegevens te lezen.
Kusto-opdracht Volgens het machtigingsniveau van elke opdracht.

Prestaties

Als Azure Data Explorer de bron is en u de activiteit Opzoeken, kopiëren of opdracht gebruikt die een query bevat, raadpleegt u best practices voor query's voor prestatie-informatie en ADF-documentatie voor kopieeractiviteit.

In deze sectie wordt het gebruik van kopieeractiviteit besproken waarbij Azure Data Explorer de sink is. De geschatte doorvoer voor Azure Data Explorer sink is 11-13 MBps. In de volgende tabel worden de parameters beschreven die van invloed zijn op de prestaties van de Azure Data Explorer-sink.

Parameter Opmerkingen
Geografische nabijheid van onderdelen Plaats alle onderdelen in dezelfde regio:
  • bron- en sinkgegevensarchieven.
  • ADF-integratieruntime.
  • Uw Azure Data Explorer-cluster.
Zorg ervoor dat uw Integration Runtime zich ten minste in dezelfde regio bevindt als uw Azure Data Explorer-cluster.
Aantal DIUs Eén VM voor elke vier DIUs die door ADF worden gebruikt.
Het verhogen van de DTU's helpt alleen als uw bron een archief op basis van bestanden met meerdere bestanden is. Elke VM verwerkt vervolgens een ander bestand parallel. Daarom heeft het kopiëren van één groot bestand een hogere latentie dan het kopiëren van meerdere kleinere bestanden.
Hoeveelheid en SKU van uw Azure Data Explorer-cluster Een groot aantal Azure Data Explorer-knooppunten verhoogt de verwerkingstijd van de opname. Het gebruik van dev-SKU's beperkt de prestaties sterk
Parallelle uitvoering Als u een grote hoeveelheid gegevens uit een database wilt kopiëren, partitioneert u uw gegevens en gebruikt u vervolgens een ForEach-lus waarmee elke partitie parallel wordt gekopieerd of gebruikt u de sjabloon Bulksgewijs kopiëren van database naar Azure Data Explorer. Opmerking: Instellingen>Mate van parallellisme in de Copy-activiteit is niet relevant voor Azure Data Explorer.
Complexiteit van gegevensverwerking Latentie varieert afhankelijk van de bronbestandsindeling, kolomtoewijzing en compressie.
De VM waarop uw integratieruntime wordt uitgevoerd
  • Voor Azure Copy kunnen ADF-VM's en machine-SKU's niet worden gewijzigd.
  • Voor on-premises naar Azure kopiëren moet u bepalen of de VM die als host fungeert voor uw zelf-hostende IR sterk genoeg is.

Tips en veelvoorkomende valkuilen

Voortgang van activiteiten bewaken

  • Bij het bewaken van de voortgang van de activiteit kan de eigenschap Geschreven gegevens groter zijn dan de eigenschap Gegevens lezen , omdat Gelezen gegevens worden berekend op basis van de binaire bestandsgrootte, terwijl Geschreven gegevens worden berekend op basis van de grootte in het geheugen, nadat gegevens zijn gedeserialiseerd en gedecomprimeerd.

  • Wanneer u de voortgang van de activiteit bewaakt, ziet u dat gegevens naar de Azure Data Explorer-sink worden geschreven. Wanneer u een query uitvoert op de Azure Data Explorer-tabel, ziet u dat de gegevens niet zijn aangekomen. Dit komt omdat er twee fasen zijn bij het kopiëren naar Azure Data Explorer.

    • De eerste fase leest de brongegevens, splitst deze in segmenten van 900 MB en uploadt elk segment naar een Azure-blob. De eerste fase wordt gezien door de voortgangsweergave van de ADF-activiteit.
    • De tweede fase begint zodra alle gegevens zijn geüpload naar Azure Blobs. De knooppunten van uw cluster downloaden de blobs en nemen de gegevens op in de sinktabel. De gegevens worden vervolgens weergegeven in uw Azure Data Explorer-tabel.

Kan CSV-bestanden niet opnemen vanwege onjuiste escape

Azure Data Explorer verwacht dat CSV-bestanden zijn afgestemd op RFC 4180. Het verwacht het volgende:

  • Velden die tekens bevatten waarvoor escape vereist is (zoals " en nieuwe regels) moeten beginnen en eindigen met een " teken, zonder witruimte. Alle " tekens in het veld worden escaped met behulp van een dubbel " teken (""). ' Hallo, ''Wereld'' is bijvoorbeeld een geldig CSV-bestand met één record met één kolom of veld met de inhoud Hallo, 'Wereld'.
  • Alle records in het bestand moeten hetzelfde aantal kolommen en velden hebben.

Azure Data Factory staat het backslashteken (escape) toe. Als u een CSV-bestand met een backslash-teken genereert met behulp van Azure Data Factory, mislukt de opname van het bestand in Azure Data Explorer.

Voorbeeld

De volgende tekstwaarden: Hallo, "Wereld"
ABC DEF
"ABC\D"EF
"ABC DEF

Moet als volgt in een correct CSV-bestand worden weergegeven: "Hallo, ""Wereld"""
"ABC DEF"
"""ABC\D"""EF"
"""ABC DEF"

Als u het standaard escape-teken (backslash) gebruikt, werkt het volgende CSV-bestand niet met Azure Data Explorer: 'Hallo, 'Wereld''
"ABC DEF"
""ABC\D"EF"
""ABC DEF"

Geneste JSON-objecten

Wanneer u een JSON-bestand naar Azure Data Explorer kopieert, moet u rekening houden met het volgende:

  • Matrices worden niet ondersteund.
  • Als uw JSON-structuur objectgegevenstypen bevat, worden Azure Data Factory de onderliggende items van het object platgemaakt en wordt geprobeerd elk onderliggend item toe te wijzen aan een andere kolom in uw Azure Data Explorer-tabel. Als u het hele objectitem wilt toewijzen aan één kolom in Azure Data Explorer:
    • De hele JSON-rij opnemen in één dynamische kolom in Azure Data Explorer.
    • Bewerk de pijplijndefinitie handmatig met behulp van de JSON-editor van Azure Data Factory. In Toewijzingen
      • Verwijder de meerdere toewijzingen die voor elk onderliggend item zijn gemaakt en voeg één toewijzing toe waarmee uw objecttype wordt toegewezen aan uw tabelkolom.
      • Voeg na het vierkante haakje sluiten een komma toe gevolgd door:
        "mapComplexValuesToString": true.

Aanvullende eigenschappen opgeven bij het kopiëren naar Azure Data Explorer

U kunt aanvullende opname-eigenschappen toevoegen door deze op te geven in de kopieeractiviteit in de pijplijn.

Eigenschappen toevoegen

  1. Selecteer in Azure Data Factory het potloodhulpmiddel Auteur.

  2. Selecteer onder Pijplijn de pijplijn waaraan u aanvullende opname-eigenschappen wilt toevoegen.

  3. Selecteer in het canvas Activiteiten de activiteit Gegevens kopiëren .

  4. Selecteer Sink in de activiteitsdetails en vouw vervolgens Aanvullende eigenschappen uit.

  5. Selecteer Nieuw, selecteer Knooppunt toevoegen of Matrix toevoegen indien vereist en geef vervolgens de naam en waarde van de opname-eigenschap op. Herhaal deze stap om meer eigenschappen toe te voegen.

  6. Zodra u klaar bent, slaat u de pijplijn op en publiceert u deze.

Volgende stap