Import z Azure Blob Storage
Důležité
Podpora studia Machine Learning (Classic) skončí 31. srpna 2024. Doporučujeme do tohoto data přejít na službu Azure Machine Learning.
Od 1. prosince 2021 nebude možné vytvářet nové prostředky studia Machine Learning (Classic). Do 31. srpna 2024 můžete pokračovat v používání stávajících prostředků studia Machine Learning (Classic).
- Podívejte se na informace o přesunu projektů strojového učení z ML Studia (klasického) do Azure Machine Learning.
- Další informace o Azure Machine Learning.
Dokumentace ke studiu ML (Classic) se vyřazuje z provozu a v budoucnu se nemusí aktualizovat.
Toto téma popisuje, jak pomocí modulu Import dat v Machine Learning Studiu (klasickém) číst data z Azure Blob Storage, abyste mohli tato data použít v experimentu strojového učení.
Poznámka
Platí pro: Machine Learning Studio (classic)
Podobné moduly s přetahováním jsou k dispozici v Azure Machine Learning návrháři.
Služba Azure Blob Service je uložená pro ukládání velkých objemů dat, včetně binárních dat. K objektům blob Azure je možné přistupovat odkudkoli pomocí protokolu HTTP nebo HTTPS. V závislosti na typu úložiště objektů blob se může zadat ověřování.
- K veřejným objektům blob má přístup kdokoli nebo uživatelé, kteří mají adresu URL SAS.
- Soukromé objekty blob vyžadují přihlášení a přihlašovací údaje.
Import z úložiště objektů blob vyžaduje, aby se data ukládaly v objektech blob, které používají formát objektů blob bloku. Soubory uložené v objektu blob musí používat formáty oddělené čárkami (CSV) nebo formáty TSV (tab-separated). Při čtení souboru se záznamy a všechny příslušné nadpisy atributů načtou jako řádky do paměti jako datová sada.
Poznámka
Modul importu dat nepodporuje připojení k Azure Blob Storage, pokud je povolená možnost Požadováno zabezpečený přenos.
Další omezení typů úložiště objektů blob podporovaných pro použití s Machine Learning najdete v části Technické poznámky.
Tip
Potřebujete importovat data ve formátu, který se nepodporuje? Můžete použít Python nebo R. Podívejte se na tuto ukázku v Azure AI Gallery: Načtení netextového souboru z Azure Blob Storage
Import dat z objektů blob Azure
Důrazně doporučujeme profilovat data před importem, abyste měli jistotu, že schéma je podle očekávání. Proces importu prohledává několik hlavního řádku, aby určil schéma, ale pozdější řádky mohou obsahovat další sloupce nebo data, která způsobují chyby.
Použití Průvodce importem dat
Modul obsahuje nového průvodce, který vám pomůže vybrat možnost úložiště, vybrat si z existujících předplatných a účtů a rychle nakonfigurovat všechny možnosti.
Přidejte do experimentu modul Import dat. Modul najdete v sadě Studio (classic) v kategorii Vstup a výstup dat.
Klikněte na Spustit Průvodce importem dat a postupujte podle pokynů.
Po dokončení konfigurace zkopírujte data do experimentu tak, že kliknete pravým tlačítkem na modul a vyberete Spustit vybrané.
Pokud potřebujete upravit existující datové připojení, průvodce načte všechny předchozí podrobnosti o konfiguraci, abyste znovu začali od začátku.
Ruční nastavení vlastností v modulu Import dat
Následující kroky popisují ruční konfiguraci zdroje importu.
Přidejte do experimentu modul Import dat. Tento modul najdete v sadě Studio (classic) v kategorii Vstup a výstup dat.
Jako Zdroj dat vyberte Azure Blob Storage.
Pokud víte, že informace byly poskytnuté jako veřejný zdroj dat, jako Typ ověřování zvolte Veřejný (adresa URL SAS ). Adresa URL SAS je časová adresa URL pro veřejný přístup, kterou můžete vygenerovat pomocí nástroje úložiště Azure.
Jinak zvolte Účet.
Pokud jsou vaše data ve veřejném objektu blob, ke kterým je možné získat přístup pomocí adresy URL SAS, nepotřebujete další přihlašovací údaje, protože řetězec adresy URL obsahuje všechny informace potřebné ke stažení a ověření.
Do pole URI zadejte nebo vložte úplný identifikátor URI, který definuje účet a veřejný objekt blob.
Poznámka
Na stránce přístupné přes adresu URL SAS je možné ukládat data pouze v těchto formátech: CSV, TSV a ARFF.
Pokud jsou vaše data v privátním účtu, musíte zadat přihlašovací údaje, včetně názvu účtu a klíče.
Jako Název účtu zadejte nebo vložte název účtu, který obsahuje objekt blob, ke které chcete získat přístup.
Pokud je například úplná adresa URL účtu úložiště
https://myshared.blob.core.windows.net
, zadejtemyshared
.Do pole Klíč účtu vložte přístupový klíč k úložišti, který je přidružený k účtu.
Pokud přístupový klíč ještě nevíte, projděte si část Správa účtů úložiště Azure v tomto článku: Informace o účtech Azure Storage Azure.
Do pole Cesta ke kontejneru, adresáři nebo objektu blob zadejte název konkrétního objektu blob, který chcete načíst.
Pokud jste například nahráli soubor s názvemdata01.csv do kontejneru trainingdata v účtu s názvem mymldata, bude úplná adresa URL souboru: .
https://mymldata.blob.core.windows.net/trainingdata/data01.txt
Proto do pole Cesta ke kontejneru, adresáři nebo objektu blob zadejte:
trainingdata/data01.csv
Pokud chcete importovat více souborů, můžete použít zástupné znaky
*
(hvězdička) nebo?
(otazník).Například za předpokladu,
trainingdata
že kontejner obsahuje více souborů kompatibilního formátu,data
můžete pomocí následující specifikace načíst všechny soubory začínající na a zřetězit je do jedné datové sady:trainingdata/data*.csv
V názvech kontejnerů nelze použít zástupné znaky. Pokud potřebujete importovat soubory z více kontejnerů, použijte pro každý kontejner samostatnou instanci modulu Import dat a pak sloučíte datové sady pomocí modulu Přidat řádky.
Poznámka
Pokud jste vybrali možnost Použít výsledky uložené v mezipaměti, žádné změny provedené v souborech v kontejneru nespouštějí aktualizaci dat v experimentu.
Jako Formát souboru blob vyberte možnost, která označuje formát dat uložených v objektu blob, aby Machine Learning mohli data odpovídajícím způsobem zpracovat. Podporují se následující formáty:
CSV: Hodnoty oddělené čárkami (CSV) jsou výchozím formátem úložiště pro export a import souborů v Machine Learning. Pokud data již obsahují řádek záhlaví, nezapomeňte vybrat možnost Soubor má řádek záhlaví nebo se záhlaví bude považovat za řádek dat.
Další informace o formátu CSV používaném v Machine Learning najdete v tématu [Convert to CSV](convert-to-csv.md
TSV: Hodnoty oddělené tabulátorem je formát používaný mnoha nástroji strojového učení. Pokud data již obsahují řádek záhlaví, nezapomeňte vybrat možnost Soubor má řádek záhlaví nebo se záhlaví bude považovat za řádek dat.
Další informace o formátu TSV použitém v Machine Learning najdete v tématu Převod na TSV.
ARFF: Tento formát podporuje import souborů ve formátu, který používá sada nástrojů Weka. Další informace najdete v tématu Převod na ARFF.
SDÍLENÝ SVAZEK CLUSTERU se zadaným kódováním: Tuto možnost použijte pro soubory CSV, které mohly být připraveny pomocí jiného oddělovače polí, nebo v případě, že zdroj použil jiné kódování znaků než UTF-8. Tento formát se nepodporuje u souborů uložených v adrese URL SAS.
Excel: Tato možnost slouží ke čtení dat z Excel sešitů uložených v Azure Blob Storage. Formát Excel nepodporuje soubory uložené v adrese URL SAS.
Pro soubory CSV se speciálním kódováním nastavte tyto další možnosti pro řízení správného importu znaků:
Formát oddělovače čárek: Vyberte ze seznamu běžných znaků, které se používají jako oddělovače polí,
,
včetně znaku tabulátoru čárky a středníku;
.Formát kódování: Zvolte kódování znaků používané souborem, který chcete přečíst. Seznam podporovaných kódování najdete v části Technické poznámky.
Soubor obsahuje řádek záhlaví: Tuto možnost vyberte, pokud data již obsahují řádek záhlaví. Jinak se záhlaví naimportuje jako řádek dat.
U Excel souborů musíte po zadání účtu a kontejneru, ve kterém je soubor Excel uložený, určit pomocí těchto možností formát Excel a rozsah nebo název tabulky:
Excel formátu dat: Určete, jestli jsou data v Excel nebo v Excel tabulce.
Excel nebo vloženou tabulku: Pokud vyberete možnost Excel list, zadejte název listu (název karty) nebo tabulku vloženou do sešitu. Čtou se všechna data z listu. Není možné zadat rozsah buněk. Pokud vyberete možnost Excel tabulky, musíte získat název tabulky, a ne název listu, i když je na listu jenom jedna tabulka. Pokud chcete zobrazit název tabulky, klikněte do tabulky a pak zobrazte vlastnost Název tabulky na kartě Nástroje tabulky.
Spusťte experiment.
Příklady
Informace o tom, jak používat data z Azure Blob Storage v experimentech strojového učení, najdete v galerii Azure:
Ukázka kategorizace zpráv: Načte a pak zkombinuje více datových sad z Azure Blob Storage.
Ukázka výkonu studenta: Čte data uložená ve formátu TSV z Azure Blob Storage.
Technické poznámky
Tato část obsahuje podrobnosti o implementaci, tipy a odpovědi na nejčastější dotazy.
Časté dotazy
Existuje nějaký způsob automatizace importu dat?
Existují různé způsoby, jak získat nová data a použít je k pravidelné aktualizaci experimentu. Hodně závisí na tom, odkud zdrojová data pocházejí, a na nástrojích, které dáváte přednost přesunu dat. Některé nápady najdete v těchto článcích.
Automatizace provádění experimentu obecně vyžaduje vytvoření webové služby, kterou pak může aktivovat plánovač úloh, PowerShell nebo jiný vlastní kód.
Proč se mi při pokusu o čtení vstupních dat z existujícího objektu blob zobrazí chyba?
Existuje několik možných problémů:
- Objekt blob používá nepodporovaný formát.
- Samotný účet byl vytvořen pomocí možnosti, kterou zatím nepodporuje Machine Learning.
Nepodporovaný formát: Při čtení z Azure Blob Storage vyžaduje Machine Learning objekt blob formát objektů blob bloku, který umožňuje efektivně nahrávat velké objekty blob. Pokud například nahrajete soubor CSV do úložiště objektů blob, soubor se uloží jako objekt blob bloku. Když ale soubor objektů blob vytváříte programově, možná generujete jiný typ objektu blob, například typ AppendBlob, který se nepodporuje.
Jako alternativní řešení doporučujeme použít typ objektu blob bloku .
Důležité
Po vytvoření objektu blob nelze typ změnit.
Další informace najdete v tématu Vysvětlení objektů blob bloku, doplňovací objekty blob a objektů blob stránky.
Nepodporovaný typ účtu: Moduly pro import a export mohou číst a zapisovat data pouze z účtů úložiště Azure vytvořených pomocí modelu nasazení Classic. Jinými slovy, nový typ účtu Azure Blob Storage, který nabízí horkou a studenou úroveň přístupu úložiště, se zatím nepodporuje. Obecně platí, že na žádné účty Úložiště Azure, které jste možná vytvořili před tím, než byla tato možnost služby dostupná, by to nemělo mít vliv.
Pokud potřebujete vytvořit nový účet pro použití s Machine Learning, jako Model nasazení vyberte Classic, nebo použijte Resource Manager a jako Druh účtu místo Úložiště objektů blob vyberte Obecné účely.
Jak se můžu vyhnout zbytečnému načítání stejných dat?
Pokud se zdrojová data změní, můžete datovou sadu aktualizovat a přidat nová spuštěním importu dat. Pokud ale nechcete znovu číst ze zdroje při každém spuštění experimentu, vyberte možnost Použít výsledky uložené v mezipaměti na HODNOTU TRUE. Pokud je tato možnost nastavená na hodnotu TRUE, modul zkontroluje, jestli se experiment dříve spouštěl pomocí stejného zdroje a stejných vstupních možností, a pokud je nalezeno předchozí spuštění, použije se data v mezipaměti místo opětovného načtení dat ze zdroje.
Můžu filtrovat data tak, jak se čtou ze zdroje?
Modul Import dat nepodporuje filtrování, protože se data čtou.
Po načtení dat do nástroje Machine Learning Studio (Classic) můžete data upravit pomocí těchto nástrojů:
K filtrování nebo transformaci dat použijte vlastní skript jazyka R.
Použijte modul Rozdělit data s relativním výrazem nebo regulárním výrazem k izolaci dat, která chcete, a pak je uložte jako datovou sadu.
Pokud zjistíte, že jste načetl více dat, než potřebujete, můžete datovou sadu přepsat tak, že načtete novou datovou sadu a zadáte, že se uloží se stejným názvem jako starší větší data.
Proč proces importu přidá na konec datové sady další řádek, když najde na konci nový řádek?
Pokud modul Import dat narazí na řádek dat následovaný prázdným řádkem nebo znakem nového řádku na konci, přidá se na konec tabulky další řádek obsahující chybějící hodnoty.
Důvodem pro interpretaci nového koncového řádku jako nového řádku je, že import dat nedokáže určit rozdíl mezi skutečným prázdným řádkem a prázdným řádkem, který vytvořil uživatel stisknutím klávesy ENTER na konci souboru.
Vzhledem k tomu, že některé algoritmy strojového učení podporují chybějící data, a proto by tento řádek považovaly za případ (který by pak mohl mít vliv na výsledky), měli byste pomocí funkce Vyčistit chybějící data zkontrolovat chybějící hodnoty a podle potřeby je odebrat.
Než zkontrolujete prázdné řádky, můžete také oddělit poslední prázdný řádek od ostatních řádků s částečnými chybějícími hodnotami, které mohou představovat skutečné chybějící hodnoty ve zdrojových datech. To můžete udělat tak, že datovou sadu vydělíte rozdělením dat. Výběrem možnosti Select head N rows (Vybrat N řádků) načtěte všechny řádky, ale až na poslední řádek.
Co se stane, když importujete data načtená z různých geografických oblastí?
Pokud se účet úložiště objektů blob nebo tabulek nachází v jiné oblasti než výpočetní uzel použitý pro experiment strojového učení, může být přístup k datům pomalejší. Dál se vám účtují poplatky za příchozí a příchozí přenos dat v předplatném.
Proč se některé znaky ve zdrojovém souboru v záhlaví nezobrazují správně?
Machine Learning obecně podporuje kódování UTF-8. Pokud zdrojový soubor používá jiný typ kódování, nemusí být znaky importovány správně.
Pokud máte potíže se správným načtením dat, zkuste použít možnost CSV s kódováním a zadat parametry pro vlastní oddělovače, znakovou stránku atd.
Změnily se během importu nějaké zakázané znaky nebo znaky?
Pokud data atributů obsahují uvozovky nebo sekvence uvozovek, jsou zpracovány pomocí pravidel pro tyto znaky v Microsoft Excel. Všechny ostatní znaky se zpracovávají podle následujících specifikací jako vodítka: RFC 4180.
Potřebuji importovat velmi velký soubor. Jaká je doporučená metoda?
Omezení velikosti pro nahrávání místních datových sad přímo do Machine Learning je 1,98 GB. U velmi velkých souborů může dokončení přidání datové sady do účtu experimentu trvat dlouhou dobu.
- Odhad 10 minut nebo více na GB dat.
- Pokud chcete optimalizovat výkon, použijte účet úložiště ve stejné oblasti, kterou ML Azure.
Pokud chcete nahrát větší soubory o velikosti až 10 GB, existuje několik přístupů:
Použijte komprimovaný soubor. Datové sady můžete nahrát do azure ML Studia (klasického) ve formátu ZIP a pak pomocí modulu Rozbalit komprimované datové sady rozbalit a uložit datovou sadu. Komprimované datové sady je také možné rozbalit pomocí modulu Spustit skript jazyka R , ale výkon může být omezený.
Použijte rychlý nástroj Azure, jako je AzCopy. Pomocí nástroje, jako je AzCopy, Microsoft Azure data pro Storage blob. Pak použijte modul Import dat k importu dat z úložiště objektů blob do studia (classic).
Následující kód například ukazuje syntaxi AzCopy pro zápis do úložiště objektů blob.
cd "C:\Program Files (x86)\Microsoft SDKs\Azure\AzCopy" .\AzCopy.exe /Source:C:\LocalFolder /Dest:https://mystorage.blob.core.windows.net/mycontainer /DestKey:MyStorageAccountKey /Pattern:myfile.csv
Importoval(a) jsem soubor CSV pomocí zadaného kódování, ale text se nezobrazuje správně, když k vizualizaci používám možnost . Proč?
U nahraných datových sad Machine Learning obecně podporuje pouze UTF-8. Modul Import dat ale podporuje další formáty kódování. Proto po importu souboru pomocí jednoho z těchto formátů můžete zjistit, že se znaky nezobrazují správně. Řešením je převést kódování na UTF-8 pomocí jedné z těchto metod:
Importovaná data uložte jako datovou sadu. (Výkon může zlepšit také použití uložené datové sady místo dat CSV.)
Pokud používáte datovou sadu v modulu Spustit skript jazyka R , můžete vynutit správné kódování pomocí skriptu, jako je tento:
dataset <- maml.mapInputPort(1) Encoding(dataset$city) <- "UTF-8" maml.mapOutputPort("dataset")
Pak můžete použít vizualizovat na výstupu modulu Spustit skript jazyka R a ověřit, že se znaky zobrazují správně.
Jaké mám možnosti pro import textových souborů? Soubor CSV není vhodný pro moje data.
Zpracování a čištění nestrukturovaných textu tak, aby se přesně vešly do sloupců, je vždy výzvou. Pokud ale potřebujete importovat sloupce textových dat, formát TSV často představuje méně problémů, i když je potřeba předem zkontrolovat nadbytečné znaky tabulátoru.
Doporučujeme zkontrolovat šablonu Klasifikace textu v Azure AI Gallery, abyste viděli příklad příjmu a zpracování textu v Machine Learning Studiu (klasickém).
Vlastní kódování pro soubory CSV
Starší verze modulu Import dat nepodporují některé druhy platných souborů CSV. Například data exportovaná z Excel někdy obsahovala znaky, které zabránily správné analýze souboru.
Pro podporu širšího možného rozsahu oddělovačů a formátů znaků teď import dat podporuje výběr oddělovače a formátu kódování. Pokud použijete možnost CSV s kódováním, výsledkem je robustnější a efektivnější analýza souboru CSV.
Můžete použít následující kódování znaků:
Typ | Encoding |
---|---|
Kódování Unicode | Unicode (UTF-8) Kódování Unicode Unicode (UTF-32) Unicode (UTF-7) |
CJYK | Tradiční čínština (Big5) Zjednodušená čínština (GB2312) Zjednodušená čínština (Mac) Zjednodušená čínština (GB2312-80) Zjednodušená čínština (ISO-2022) Zjednodušená čínština (GB18030) Japonština (JIS) Korejština (ISO) Korejština (Mac) |
Jiné | Západní Evropa (Windows) Západní Evropa (ISO) Hebrejština (ISO-Visual) US ASCII |
Tip
Po dokončení importu csv doporučujeme uložit importované soubory jako datovou sadu, abyste zajistili, že importovaná data v experimentu budou používat kódování UTF-8.
Odvozování datových typů ve formátech CSV a TSV
Když modul Import dat načte data ze souboru CSV nebo TSV v Azure Blob Storage, hledá odhadce typů ve zdrojovém souboru kategorická nebo číselná data a představuje zjištěný typ v metadatech nové datové sady.
Můžete však po načtení dat přepsat výsledky uhodnouče typu úpravou atributů sloupce v modulu Upravit metadata .
Parametry modulu
Obecné možnosti
Name | Rozsah | Typ | Výchozí | Description |
---|---|---|---|---|
Zdroj dat | Seznam | Zdroj nebo jímka dat | Azure Blob Storage | Zdrojem dat může být HTTP, FTP, anonymní HTTPS nebo FTPS, soubor v úložišti objektů blob v Azure, tabulka Azure, Azure SQL Database, místní databáze SQL Server, tabulka Hive nebo koncový bod OData. |
Typ ověřování | PublicOrSas/Account | Řetězec | Účet | Určete, jestli jsou data ve veřejném kontejneru přístupném přes adresu URL SAS, nebo jestli jsou v privátním účtu úložiště, který vyžaduje ověření přístupu. |
Použití výsledků uložených v mezipaměti | TRUE/FALSE | Logická hodnota | FALSE | Tuto možnost vyberte, pokud se chcete vyhnout načítání dat mezi spuštěními. |
Veřejný nebo SAS – Možnosti veřejného úložiště
Name | Rozsah | Typ | Výchozí | Description |
---|---|---|---|---|
Identifikátor URI | Libovolný | Řetězec | žádné | Koncový bod REST HDFS |
Formát souboru | ARFF, CSV nebo TSV | Řetězec | CSV | Vyberte jeden z podporovaných formátů. |
Identifikátor URI má řádek záhlaví | Logická hodnota | TRUE/FALSE | TRUE | True, pokud soubor obsahuje řádek záhlaví; Pokud je false, jako záhlaví sloupců se použije první řádek dat. |
Účet – možnosti privátního úložiště
Name | Rozsah | Typ | Výchozí | Description |
---|---|---|---|---|
Název účtu | Libovolný | Řetězec | žádné | Zadejte název účtu úložiště. |
Klíč účtu | Libovolný | Securestring | žádné | Vložení klíče účtu |
Cesta ke kontejneru, adresáři nebo objektu blob | Libovolný | Řetězec | – | Zadejte název kontejneru nebo adresáře. |
Formát souboru blob | ARFF, CSV nebo TSV | Řetězec | CSV | Vyberte jeden z podporovaných formátů. |
Soubor má řádek záhlaví | Libovolný | Řetězec | Ano | Azure storage account name |
Výstupy
Název | Typ | Description |
---|---|---|
Datová sada výsledků | Tabulka dat | Datová sada s importem dat |
Výjimky
Výjimka | Description |
---|---|
Chyba 0027 | K výjimce dochází v případě, že dva objekty musí mít stejnou velikost, ale nemají. |
Chyba 0003 | K výjimce dojde, pokud má jeden nebo více vstupů hodnotu null nebo je prázdný. |
Chyba 0029 | K výjimce dojde, když je předán neplatný identifikátor URI. |
Chyba 0030 | K výjimce dojde v nástroji , když není možné stáhnout soubor. |
Chyba 0002 | K výjimce dochází v případě, že jeden nebo více parametrů nebylo možné analyzovat nebo převést ze zadaného typu na typ vyžadovaný cílovou metodou. |
Chyba 0009 | K výjimce dojde, pokud je nesprávně zadaný název účtu úložiště Azure nebo název kontejneru. |
Chyba 0048 | K výjimce dojde, když není možné otevřít soubor. |
Chyba 0046 | K výjimce dochází v případě, že není možné vytvořit adresář v zadané cestě. |
Chyba 0049 | K výjimce dochází v případě, že není možné parsovat soubor. |
Seznam chyb specifických pro moduly sady Studio (classic) najdete v Machine Learning kódy chyb.
Seznam výjimek rozhraní API najdete v tématu Machine Learning REST API kódy chyb.
Viz také
Import dat
Export dat
Import z webové adresy URL přes HTTP
Import z dotazu Hive
Import z Azure SQL Database
Import z tabulky Azure
Import od poskytovatelů datových kanálů
Import z místní SQL Server Database