Importálás Hive-lekérdezésből

Fontos

A (klasszikus) Machine Learning Studio támogatása 2024. augusztus 31-én megszűnik. Javasoljuk, hogy addig térjen át az Azure Machine Learning használatára.

2021. december 1-től kezdve nem fog tudni létrehozni új (klasszikus) Machine Learning Studio-erőforrásokat. 2024. augusztus 31-ig továbbra is használhatja a meglévő (klasszikus) Machine Learning Studio-erőforrásokat.

A (klasszikus) ML Studio dokumentációjának kivezetése folyamatban van, és a jövőben nem várható a frissítése.

Ez a cikk azt ismerteti, hogyan használhatja az Adatok importálása modult a (klasszikus) Machine Learning Studióban a Hadoop-fürtök és a HDInsight elosztott tárolók adatainak lekéréséhez.

Megjegyzés

Csak a következőre vonatkozik: Machine Learning Studio (klasszikus)

Hasonló húzási modulok érhetők el Azure Machine Learning tervezőben.

Az adatok Hive-ból történő importálása különösen hasznos nagy adathalmazok betöltéséhez, vagy ha egy MapReduce-feladattal előre szeretné feldolgozni az adatokat, mielőtt betöltené az adatokat egy gépi tanulási kísérletbe.

Fontos

2018. július 31-én Microsoft Azure HDInsight 3.3-as verziója volt a HDInsight utolsó verziója Windows. Ha a Windows 3.3-at vagy korábbi verziójú HDInsight-fürtöket használja, át kell telepítenie a HDInsightra Linux rendszeren (HDInsight 3.5-ös vagy újabb verzió). A HDInsight kivezetett verzióival kapcsolatos további információért tekintse meg a Kivezetett verziók szakaszt. Machine Learning Studio (klasszikus) bizonyos esetekben támogatja a HDInsightot Linuxon.

A HDInsight támogatása Linuxon

A Machine Learning Studio (klasszikus) a következő esetekben támogatja a HdInsightot Linuxon:

  • Hadoop 2.7.3 (HDI 3.6) blob alapértelmezett, másodlagos ADLS
  • Spark 2.1.0 (HDI 3.6) blob alapértelmezés szerint, másodlagos ADLS
  • Spark 2.2.0 (HDI 3.6) blob alapértelmezés szerint, másodlagos ADLS
  • Spark 2.3.0 (HDI 3.6) blob alapértelmezés szerint, másodlagos ADLS

Ismert problémák

A Hive-lekérdezések Importálási adatok importálása modul linuxos HDInsighttal való használatával kapcsolatban számos ismert probléma merült fel:

Adatok importálása Hive-lekérdezésekből

A varázsló használata

A modul egy új varázslóval segíti a tárolási lehetőségek kiválasztását, a meglévő előfizetések és fiókok közül való választást, valamint az összes beállítás gyors konfigurálását.

  1. Adja hozzá az Adatok importálása modult a kísérlethez. A modul a Studio (klasszikus) adatbemeneti és kimeneti kategóriájában található.

  2. Kattintson az Adatok importálása varázsló indítása gombra, és kövesse az utasításokat.

  3. Ha a konfigurálás befejeződött, az adatoknak a kísérletbe való másolásához kattintson a jobb gombbal a modulra, és válassza a Kijelölt futtatása parancsot.

Ha szerkesztenie kell egy meglévő adatkapcsolatot, a varázsló betölti az összes korábbi konfigurációs adatot, hogy ne kelljen újrakezdenie az alapoktól

Importálási tulajdonságok manuális beállítása

Az alábbi lépések az importálási forrás manuális konfigurálását írják le.

  1. Adja hozzá az Adatok importálása modult a kísérlethez. A modul a Studio (klasszikus) adatbemeneti és kimeneti kategóriájában található.

  2. Adatforrásként válassza a Hive-lekérdezést.

  3. A Hive-adatbázis lekérdezésének szövegmezőjében adja meg azokat az adatokat, amelyeket a HiveQL használatával szeretne olvasni.

    A HiveQL egy SQL-szerű lekérdezési nyelv, amely az adatok összesítésére és adatszűrésére is használható, mielőtt hozzáadja az adatokat a Machine Learning Studióhoz (klasszikus). A Hive-lekérdezésnek azonban táblázatos formátumban kell visszaadnia az adatokat.

    Ez az utasítás például egy érvényes Hive-lekérdezés:

    SELECT <column list> FROM table WHERE <expression>;

  4. Kattintson a HCatalog-kiszolgáló URI szövegmezőjére, majd írja be a fürt teljes nevét.

    Ha például létrehozott egy mycluster001 nevű fürtöt, használja a következő formátumot: https://mycluster001.azurehdinsight.net

  5. Kattintson a Hadoop-felhasználónév szövegmezőre, és illessze be azt a Hadoop-felhasználói fiókot, amelyet a fürt kiépítésekor használt.

  6. Kattintson a Hadoop felhasználói fiók jelszava szövegmezőre, és írja be a fürt kiépítésekor használt hitelesítő adatokat.

    A Hadoop fürtelnevezésével és hitelesítésével kapcsolatos további információkért lásd: Hadoop-fürtök kiépítése a HDInsightban.

  7. A kimeneti adatok helyének megadásához válassza ki azt a beállítást, amely az adatok tárolási helyét jelzi. Ha az adatok a Hadoop elosztott fájlrendszerben (HDFS) találhatóak, azoknak az imént megadott fiókkal és jelszóval kell elérhetőknek lenniük. Ha az adatok az Azure-ban találhatók, adja meg a tárfiók helyét és hitelesítő adatait.

    • HDFS: Írja be vagy illessze be a HDFS-kiszolgáló URI-jait. Ügyeljen arra, hogy a HDInsight-fürt nevét használja az HTTPS:// előtag nélkül.

    • Azure: Az Azure Storage-fiók neveként írja be az Azure-fiók nevét. Ha például a tárfiók teljes URL-címe, https://myshared.blob.core.windows.netírja be a következőt myshared: .

    • Azure Storage-kulcs: Másolja és illessze be a tárfiók eléréséhez megadott kulcsot.

    • Az Azure-tároló neveként adja meg a fürt alapértelmezett tárolójának nevét. A Tippek szakaszban talál segítséget annak megállapításához, hogy melyik tárolót kell használnia.

  8. Válassza a Gyorsítótárazott eredmények használata lehetőséget, ha nem számít arra, hogy az adatok sokat változnak, vagy ha el szeretné kerülni az adatok újbóli betöltését a kísérlet minden futtatásakor.

    Ha ez a beállítás be van jelölve, a modulparaméterek további módosítása nélkül a kísérlet a modul első futtatásakor betölti az adatokat, és ezt követően az adathalmaz gyorsítótárazott verzióját használja.

    Ha újra be szeretné tölteni az adathalmazt a kísérlet adathalmazának minden iterációjára, törölje a jelölést a Gyorsítótárazott eredmények használata lehetőségből. Az eredmények akkor is újratöltődnek, ha módosulnak az importálási adatok paraméterei.

  9. Futtassa a kísérletet.

Results (Eredmények)

Ha elkészült, kattintson a kimeneti adatkészletre, és válassza a Vizualizáció lehetőséget, és ellenőrizze, hogy az adatok importálása sikeresen megtörtént-e.

Ha hibaüzenetet kap, ellenőrizze az adatok hiányzó értékeit, további üres oszlopait vagy nem kompatibilis adattípusait.

Példák

A HDInsight-fürtök konfigurálására és a Hive-lekérdezések gépi tanulási kísérletekben való használatára vonatkozó példákért tekintse meg az alábbi forrásokat:

Bár a Hive számos adattisztítási és -előfeldolgozási funkcióhoz kínál kiváló funkciókat, az importálás után hasznosnak bizonyulhatnak ezek az eszközök az adatok modellezésre való előkészítéséhez:

  • A Metaadatok szerkesztése és más modulok segítségével módosíthatja az oszlopneveket, megadhatja, hogy mely oszlopok tartalmaznak címkéket és szolgáltatásokat, és adja meg az oszlop adattípusát. Példákért lásd az adathalmaz-feldolgozást.

  • Szövegadatok feldolgozása Python használatával az írásjelek eltávolításához, a beszédrészek megjelöléséhez és sok máshoz. Példákért lásd a Szövegbesorolás című témakört.

  • Több különböző forrásból származó táblázat kombinálása egyetlen betanítási adattáblában. Példákért lásd a prediktív karbantartást.

Technikai megjegyzések

Ez a szakasz a megvalósítás részleteit, a tippeket és a gyakori kérdésekre adott válaszokat tartalmazza.

Az alapértelmezett tároló meghatározása

Ha az összes alapértelmezett beállítás elfogadásával hozta létre a fürtöt, a fürt létrehozásakor egy, a fürt nevével megegyező nevű tároló jött létre. Ez a tároló a fürt alapértelmezett tárolója. Ha azonban a CUSTOM CREATE lehetőséget választotta a fürt létrehozásakor, két lehetőség közül választhatja ki az alapértelmezett tárolót. Az első lehetőség egy meglévő tároló kiválasztása. Ha így tesz, az a tároló lesz a fürt alapértelmezett tárolója. A második lehetőség az alapértelmezett tároló létrehozása. Ha ezt a beállítást használja, az alapértelmezett tároló neve megegyezik a fürt nevével.

Python-szkriptek meghívása Hive-lekérdezésből

Az Adatok importálása modullal olyan Hive-lekérdezéseket futtathat, amelyek Python UDF-eket hívnak meg a rekordok feldolgozásához.

További információ: A Python használata a Hive és a Pig használatával a HDInsightban.

Memóriakihasználtság elkerülése az adatok Hive-beli elő feldolgozásakor

Amikor Hive-lekérdezésekkel nyer ki rekordokat big data-forrásokból, a Hadoop-fürt alapértelmezett konfigurációja néha túl korlátozott a MapReduce-feladat futtatásának támogatásához. A HDInsight kibocsátási megjegyzéseiben például az alapértelmezett beállítások négycsomópontos fürtként vannak definiálva.

Ha a MapReduce-feladat követelményei túllépik a rendelkezésre álló kapacitást, a Hive-lekérdezések memóriakihasználtságot jelző hibaüzenetet adhatnak vissza, amely miatt az Adatok importálása művelet meghiúsul. Ha ez történik, módosíthatja a Hive-lekérdezések alapértelmezett memóriafoglalását az Adatok importálása modulban, az itt látható módon:

Increase memory to maximum allowed on cluster

Ebben a példában a parancsok set mapreduce.map.memory.mbset mapreduce.reduce.memory.mb a fürtben megengedett maximális memóriamennyiség növelésére szolgálnak.

Gyakori kérdések

Hogyan kerülhetem el, hogy feleslegesen töltsem be ugyanazokat az adatokat?

Ha a forrásadatok megváltoznak, frissítheti az adathalmazt, és új adatokat adhat hozzá az Adatok importálása újrafuttatásával. Ha azonban nem szeretne a kísérlet minden futtatásakor újraolvasni a forrásból, válassza a Gyorsítótárazott eredmények használata beállítást IGAZ értékre. Ha ez a beállítás IGAZ értékre van állítva, a modul ellenőrzi, hogy a kísérlet korábban ugyanazzal a forrással és ugyanazokkal a bemeneti beállításokkal futott-e, és ha egy korábbi futtatás található, a rendszer a gyorsítótárban lévő adatokat használja ahelyett, hogy újra betölti az adatokat a forrásból.

Szűrhetem az adatokat a forrásból beolvasott adatok alapján

Maga az Adatok importálása modul nem támogatja a szűrést az adatok beolvasása közben.

Ha szűrni szeretné az adatokat, mielőtt beolvassa őket a Machine Learning Studióba (klasszikus), használjon Hive-lekérdezést vagy MapReduce-feladatot az adatok összesítéséhez és átalakításához.

Az adatok szűrésére a Machine Learning Studio (klasszikus) szolgáltatásba való betöltése után is többféle lehetőség áll rendelkezésre:

  • Egyéni R-szkripttel csak a kívánt adatokat szerezheti be.
  • Az Adatok felosztása modul relatív kifejezéssel vagy reguláris kifejezéssel elkülönítheti a kívánt adatokat, majd adathalmazként mentheti őket.

Megjegyzés

Ha azt tapasztalja, hogy a szükségesnél több adatot töltött be, felülírhatja a gyorsítótárazott adathalmazt egy új adatkészlet beolvasásával, és a régebbi, nagyobb adatokkal megegyező néven mentheti azokat.

Modulparaméterek

Name Tartomány Típus Alapértelmezett Description
Adatforrás Lista Adatforrás vagy fogadó Azure Blob Storage Az adatforrás lehet HTTP, FTP, névtelen HTTPS vagy FTPS, egy fájl az Azure BLOB Storage-ban, egy Azure-tábla, egy Azure SQL Database, egy helyszíni SQL Server-adatbázis, egy Hive-tábla vagy egy OData-végpont.
Hive-adatbázis lekérdezése bármelyik StreamReader HQL-lekérdezés
HCatalog-kiszolgáló URI-ja bármelyik Sztring Templeton-végpont
Hadoop-felhasználói fiók neve bármelyik Sztring Hadoop HDFS/HDInsight felhasználónév
Hadoop felhasználói fiók jelszava bármelyik SecureString Hadoop HDFS/HDInsight-jelszó
A kimeneti adatok helye bármelyik DataLocation HDFS HDFS vagy Azure megadása outputDirhez
HDFS-kiszolgáló URI-ja bármelyik Sztring HDFS rest végpont
Azure Storage-tárfiók neve bármelyik Sztring Azure Storage-tárfiók neve
Azure Storage-kulcs bármelyik SecureString Azure Storage-kulcs
Azure-tároló neve bármelyik Sztring Azure-tároló neve
Adattartalom típusa Lista (részhalmaz) URL-cím tartalma OData Adatformátum típusa
Forrás URL-címe bármelyik Sztring Power Query adatforrás URL-címe
Gyorsítótárazott eredmények használata IGAZ/HAMIS Logikai HAMIS leírás

Kimenetek

Név Típus Description
Eredmények adatkészlete Adattábla Letöltött adatokkal rendelkező adatkészlet

Kivételek

Kivétel Description
0027-s hiba Kivételt képez, ha két objektumnak azonos méretűnek kell lennie, de nem.
0003-os hiba Kivétel történik, ha egy vagy több bemenet null értékű vagy üres.
0029-s hiba Kivétel akkor fordul elő, ha érvénytelen URI-t ad át.
0030-ás hiba Kivétel történik, ha nem lehet letölteni egy fájlt.
0002-s hiba Kivétel történik, ha egy vagy több paraméter nem elemezhető vagy konvertálható a megadott típusból a célmetódus által megkövetelt típusra.
0009-s hiba Kivétel történik, ha az Azure Storage-fiók neve vagy a tároló neve helytelenül van megadva.
0048-ás hiba Kivétel történik, ha nem lehet megnyitni egy fájlt.
0015-ös hiba Kivétel történik, ha az adatbázis-kapcsolat meghiúsult.
0046-os hiba Kivétel történik, ha nem lehet könyvtárat létrehozni a megadott elérési úton.
0049-s hiba Kivétel akkor fordul elő, ha nem lehet elemezni egy fájlt.

A Studio (klasszikus) modulokkal kapcsolatos hibák listáját Machine Learning hibakódok között találja.

Az API-kivételek listájáért lásd Machine Learning REST API hibakódjait.

Lásd még

Adatok importálása
Adatok exportálása
Importálás webes URL-ről HTTP-kapcsolaton keresztül
Importálás Azure SQL Database-ből
Importálás az Azure Tableből
Importálás Azure Blob Storage
Importálás adatcsatorna-szolgáltatókból
Importálás helyszíni SQL Server-adatbázisból