Použití osvětlení k ingestování dat do Azure Průzkumník dat
Osvětlení je nástroj příkazového řádku pro přijímání dat ad hoc do Azure Průzkumník dat. Nástroj může vyžádat zdrojová data z místní složky nebo z kontejneru úložiště objektů BLOB v Azure. Osvětlení je nejužitečnější, když chcete ingestovat velké objemy dat, protože doba trvání příjmu není nijak omezený. Je to také užitečné v případě, že chcete později zadávat dotazy na záznamy podle času vytvoření, a ne podle času jejich ingestování.
Chcete-li automaticky vygenerovat příkaz světla, přečtěte si téma Průvodce příjemem příjmu pro jednorázové přijímání historických dat s osvětlením.
Požadavky
osvětlení – stáhněte si ho jako součást balíčku Microsoft. Azure. Kusto. Tools NuGet.
WinRAR – Stáhněte si ho z www.win-rar.com/download.html
Instalovat osvětlení
- Přejděte do umístění v počítači, kam jste si stáhli osvětlení.
- Pomocí WinRAR rozbalte do svého počítače adresář Tools .
Spustit osvětlení
Přejděte do složky extrahované nástroje ve vašem počítači.
Odstraní existující informace o poloze z pruhu umístění.
Zadejte
cmda stiskněte klávesucmd.Na příkazovém řádku zadejte
LightIngest.exenásledovaný odpovídajícím argumentem příkazového řádku.Tip
Seznam podporovaných argumentů příkazového řádku získáte zadáním příkazu
LightIngest.exe /help.
Zadejte
ingest-následovaný připojovacím řetězcem ke clusteru Azure Průzkumník dat, který bude spravovat přijímání. Vložte připojovací řetězec do dvojitých uvozovek a postupujte podle specifikace připojovacích řetězců Kusto.Například:
ingest-{Cluster name and region}.kusto.windows.net;AAD Federated Security=True -db:{Database} -table:Trips -source:"https://{Account}.blob.core.windows.net/{ROOT_CONTAINER};{StorageAccountKey}" -pattern:"*.csv.gz" -format:csv -limit:2 -ignoreFirst:true -cr:10.0 -dontWait:true
Doporučení
Doporučenou metodou je osvětlení pro práci s koncovým bodem příjmu v
https://ingest-{yourClusterNameAndRegion}.kusto.windows.net. Díky tomu může služba Azure Průzkumník dat spravovat zatížení ingestování a můžete je snadno obnovit z přechodných chyb. Můžete ale také nakonfigurovat osvětlení, aby fungovalo přímo s koncovým bodem modulu (https://{yourClusterNameAndRegion}.kusto.windows.net).Poznámka
Pokud budete ingestovat přímo s koncovým bodem modulu, nemusíte vkládat
ingest-. Nebude ale k dispozici funkce DM pro ochranu stroje a zvýšení úspěšnosti příjmu.Pro zajištění optimálního výkonu ingestování je potřeba velikost nezpracovaných dat, aby osvětlení mohla odhadnout nekomprimovanou velikost místních souborů. Osvětlení ale nemusí být schopné správně odhadnout velikost komprimovaných objektů BLOB bez jejich předchozího stažení. Proto při ingestování komprimovaných objektů BLOB nastavte
rawSizeBytesvlastnost u metadat objektu BLOB na nekomprimovaná velikost dat v bajtech.
Argumenty příkazového řádku
| Název argumentu | Typ | Popis | Povinný/volitelný |
|---|---|---|---|
| řetězec | Připojovací řetězec služby Azure Průzkumník dat určující koncový bod Kusto, který bude zpracovávat přijímání. By měl být uzavřený v dvojitých uvozovkách. | Povinné | |
| -Database,-DB | řetězec | Název cílové databáze služby Azure Průzkumník dat | Volitelné |
| – tabulka | řetězec | Název cílové tabulky Azure Průzkumník dat | Povinné |
| -zdrojová_cesta,-source | řetězec | Cesta ke zdrojovým souborům nebo kořenovému identifikátoru URI kontejneru objektů BLOB. Pokud jsou data v objektech blob, musí obsahovat klíč účtu úložiště nebo SAS. Doporučuje se uzavřít do dvojitých uvozovek. | Povinné |
| -prefix | řetězec | Když se zdrojová data ingestují v úložišti objektů blob, tato předpona adresy URL se sdílí všemi objekty blob, a to s výjimkou názvu kontejneru. Například pokud jsou data v MyContainer/Dir1/Dir2 , musí být předpona Dir1/Dir2 . Doporučuje se uzavřít do dvojitých uvozovek. |
Volitelné |
| – vzor | řetězec | Vzor, podle kterého se mají vybrat zdrojové soubory nebo objekty blob Podporuje zástupné znaky. Například, "*.csv". Doporučuje se uzavřít do dvojitých uvozovek. |
Volitelné |
| -zipPattern | řetězec | Regulární výraz, který se má použít při výběru souborů v archivu ZIP k ingestování Všechny ostatní soubory v archivu budou ignorovány. Například, "*.csv". Doporučuje se ho obklopit v dvojitých uvozovkách. |
Volitelné |
| – formát,-f | řetězec | Formát zdrojových dat. Musí být jedním z podporovaných formátů . | Volitelné |
| -ingestionMappingPath, -mappingPath | řetězec | Cesta k místnímu souboru pro mapování sloupce pro přijímání. Povinné pro formáty JSON a Avro. Zobrazit mapování dat | Volitelné |
| -ingestionMappingRef, -mappingRef | řetězec | Název mapování sloupce pro příjem dat, které bylo dříve vytvořeno v tabulce. Povinné pro formáty JSON a Avro. Zobrazit mapování dat | Volitelné |
| -creationTimePattern | řetězec | Když se nastaví, použije se k extrakci vlastnosti CreationTime ze souboru nebo cesty k objektu BLOB. Viz Jak ingestovat data pomocí | Volitelné |
| -ignoreFirstRow, -ignoreFirst | bool | Pokud nastavíte hodnotu , první záznam každého souboru nebo objektu blob se ignoruje (například pokud zdrojová data mají hlavičky). | Volitelné |
| -tag (značka) | řetězec | Značky, které se mají přidružit k ingestovaných datům. Je povoleno více výskytů. | Volitelné |
| -dontWait | bool | Pokud je nastavená hodnota true, nečeká na dokončení příjmu dat. Užitečné při ingestování velkých objemů souborů nebo objektů blob | Volitelné |
| -compression, -cr | double | Nápověda k kompresnímu poměru. Užitečné při ingestování komprimovaných souborů nebo objektů blob, které Azure Data Explorer vyhodnocují velikost nezpracovaných dat. Vypočítá se jako původní velikost dělená komprimovanou velikostí. | Volitelné |
| -limit , -l | integer | Pokud je nastavené, omezí příjem dat na prvních N souborů. | Volitelné |
| -listOnly, -list | bool | Pokud je nastavené, zobrazí se jenom položky, které by byly vybrány pro příjem dat. | Volitelné |
| -ingestTimeout | integer | Časový limit v minutách pro dokončení všech operací ingestování Výchozí hodnota je 60 |
Volitelné |
| -forceSync | bool | Pokud je nastavené, vynutí synchronní příjem dat. Výchozí hodnota je false |
Volitelné |
| -dataBatchSize | integer | Nastaví limit celkové velikosti (MB, nekomprimovaný) každé operace ingestování. | Volitelné |
| -filesInBatch | integer | Nastaví limit počtu souborů nebo objektů blob pro každou operaci ingestování. | Volitelné |
| -devTracing, -trace | řetězec | Pokud je nastavené, diagnostické protokoly se zapisou do místního adresáře (ve výchozím nastavení, v aktuálním adresáři, nebo je možné je upravit RollingLogs nastavením hodnoty přepínače). |
Volitelné |
Možnosti specifické pro objekty blob Azure
Při použití s objekty blob Azure lightIngest použije určité vlastnosti metadat objektů blob k vylepšení procesu příjmu dat.
| Vlastnost metadat | Využití |
|---|---|
rawSizeBytes, kustoUncompressedSizeBytes |
Pokud je nastavená, bude interpretována jako nekomprimovaná velikost dat. |
kustoCreationTime, kustoCreationTimeUtc |
Interpretováno jako časové razítko UTC. Pokud je nastavená hodnota , použije se k přepsání času vytvoření v Kusto. Užitečné pro scénáře obnovení dat |
Příklady použití
Jak ingestovat data pomocí CreationTime
Když načtete historická data z existujícího systému do Azure Data Explorer, všechny záznamy obdrží stejné datum příjmu dat. Pokud chcete povolit dělení dat podle času vytvoření, a ne času ingestování, můžete použít -creationTimePattern argument . Argument -creationTimePattern extrahuje CreationTime vlastnost ze souboru nebo cesty k objektu blob. Vzor nemusí odrážet celou cestu k položce, pouze část ohraničující časové razítko, které chcete použít.
Hodnoty argumentů musí obsahovat:
- Konstantní text bezprostředně před formátem časového razítka uzavřený v jednoduchých uvozovkách (předpona)
- Formát časového razítka ve standardním notaci .NET DateTime
- Konstantní text bezprostředně po časovém razítku (příponě).
Důležité
Při určování, že se má přepsat čas vytvoření, se ujistěte, že je vlastnost v efektivních zásadách sloučení Rozsahy v cílové tabulce zarovnána s hodnotami v cestách k souborům nebo Lookback objektům blob. Lookback
Příklady
Název objektu blob, který obsahuje následující datum a čas: (časové razítko je čtyři číslice pro rok, dvě číslice pro měsíc a dvě číslice pro
historicalvalues19840101.parquetden v měsíci),Hodnota argumentu je součástí názvu
-creationTimePatternsouboru:-creationTimePatterningest-{Cluster name and region}.kusto.windows.net;AAD Federated Security=True -db:{Database} -table:Trips -source:"https://{Account}.blob.core.windows.net/{ROOT_CONTAINER};{StorageAccountKey}" -creationTimePattern:"'historicalvalues'yyyyMMdd'.parquet'" -pattern:"*.parquet" -format:parquet -limit:2 -cr:10.0 -dontWait:trueIdentifikátor URI objektu blob, který odkazuje na hierarchickou strukturu složek, jako
https://storageaccount/container/folder/2002/12/01/blobname.extensionje ,Hodnota argumentu je součástí struktury
-creationTimePatternsložky:-creationTimePatterningest-{Cluster name and region}.kusto.windows.net;AAD Federated Security=True -db:{Database} -table:Trips -source:"https://{Account}.blob.core.windows.net/{ROOT_CONTAINER};{StorageAccountKey}" -creationTimePattern:"'folder/'yyyy/MM/dd'/blob'" -pattern:"*.csv.gz" -format:csv -limit:2 -ignoreFirst:true -cr:10.0 -dontWait:true
Ingestování objektů blob pomocí klíče účtu úložiště nebo tokenu SAS
- Ingestování 10 objektů blob v rámci zadaného účtu úložiště
ACCOUNTve složce v kontejneru aDIRodpovídajícíCONTvzor*.csv.gz - Cílem je databáze, tabulka a v cíli se předem vytvoří mapování
DBTABLEpříjmuMAPPINGdat. - Nástroj počká na dokončení operací ingestování.
- Všimněte si různých možností pro určení cílové databáze a klíče účtu úložiště vs. tokenu SAS.
LightIngest.exe "https://ingest-{ClusterAndRegion}.kusto.windows.net;Fed=True"
-database:DB
-table:TABLE
-source:"https://ACCOUNT.blob.core.windows.net/{ROOT_CONTAINER};{StorageAccountKey}"
-prefix:"DIR"
-pattern:*.csv.gz
-format:csv
-mappingRef:MAPPING
-limit:10
LightIngest.exe "https://ingest-{ClusterAndRegion}.kusto.windows.net;Fed=True;Initial Catalog=DB"
-table:TABLE
-source:"https://ACCOUNT.blob.core.windows.net/{ROOT_CONTAINER}?{SAS token}"
-prefix:"DIR"
-pattern:*.csv.gz
-format:csv
-mappingRef:MAPPING
-limit:10
Ingestování všech objektů blob v kontejneru bez zahrnutí řádků záhlaví
- Ingestování všech objektů blob v zadaném účtu úložiště
ACCOUNTve složce v kontejneru aDIR1/DIR2odpovídajícíCONTvzor*.csv.gz - Cílem je databáze, tabulka a v cíli se předem vytvoří mapování
DBTABLEpříjmuMAPPINGdat. - Zdrojové objekty blob obsahují řádek záhlaví, takže nástroj má vypustit první záznam každého objektu blob.
- Nástroj bude data pro příjem dat odeslat a nebude čekat na dokončení operací ingestování.
LightIngest.exe "https://ingest-{ClusterAndRegion}.kusto.windows.net;Fed=True"
-database:DB
-table:TABLE
-source:"https://ACCOUNT.blob.core.windows.net/{ROOT_CONTAINER}?{SAS token}"
-prefix:"DIR1/DIR2"
-pattern:*.csv.gz
-format:csv
-mappingRef:MAPPING
-ignoreFirstRow:true
Ingestování všech souborů JSON z cesty
- Ingestování všech souborů v cestě
PATHodpovídající vzoru*.json - Cílem je databáze , tabulka a
DBmapování příjmu dat je definované v místnímTABLEsouboru.MAPPING_FILE_PATH - Nástroj bude data pro příjem dat odeslat a nebude čekat na dokončení operací ingestování.
LightIngest.exe "https://ingest-{ClusterAndRegion}.kusto.windows.net;Fed=True"
-database:DB
-table:TABLE
-source:"PATH"
-pattern:*.json
-format:json
-mappingPath:"MAPPING_FILE_PATH"
Ingestování souborů a zápis souborů trasování diagnostiky
- Ingestování všech souborů v cestě
PATHodpovídající vzoru*.json - Cílem je databáze , tabulka a
DBmapování příjmu dat je definované v místnímTABLEsouboru.MAPPING_FILE_PATH - Nástroj bude data pro příjem dat odeslat a nebude čekat na dokončení operací ingestování.
- Trasovací soubory diagnostiky se zapisou místně do složky .
LOGS_PATH
LightIngest.exe "https://ingest-{ClusterAndRegion}.kusto.windows.net;Fed=True"
-database:DB
-table:TABLE
-source:"PATH"
-pattern:*.json
-format:json
-mappingPath:"MAPPING_FILE_PATH"
-trace:"LOGS_PATH"