Oktatóanyag: Apache Hive lekérdezése ODBC-vel és PowerShell-lel
A Microsoft ODBC-illesztőprogramok rugalmas módot biztosítanak a különböző típusú adatforrásokkal való interakcióra, beleértve az Apache Hive-t is. Olyan szkriptnyelvekbe írhat kódot, mint a PowerShell, amely az ODBC-illesztőprogramokkal kapcsolatot nyit meg a Hive-fürthöz, átad egy ön által választott lekérdezést, és megjeleníti az eredményeket.
Ebben az oktatóanyagban a következő feladatokat fogja elvégezni:
- A Microsoft Hive ODBC-illesztőprogram letöltése és telepítése
- A fürthöz társított Apache Hive ODBC-adatforrás létrehozása
- Mintaadatok lekérdezése a fürtből a PowerShell használatával
Ha nem rendelkezik Azure-előfizetéssel, mindössze néhány perc alatt létrehozhat egy ingyenes fiókot a virtuális gép létrehozásának megkezdése előtt.
Előfeltételek
Az oktatóanyag elkezdéséhez az alábbiakkal kell rendelkeznie:
- Interaktív lekérdezésfürt a HDInsighton. A létrehozáshoz tekintse meg az Azure HDInsight használatának első lépéseit. Fürttípusként válassza az Interaktív lekérdezés lehetőséget.
A Microsoft Hive ODBC-illesztőprogram telepítése
Töltse le és telepítse a Microsoft Hive ODBC-illesztőprogramot.
Apache Hive ODBC-adatforrás létrehozása
Az alábbi lépések bemutatják, hogyan hozhat létre Apache Hive ODBC-adatforrást.
A Windowsból lépjen a >Windows Rendszergazda istrative Tools ODBC Adatforrások>(32 bites)/(64 bites) elemre. Megnyílik egy ODBC-adatforrás Rendszergazda istrator ablak.
A Felhasználói DSN lapon válassza a Hozzáadás lehetőséget az Új adatforrás létrehozása ablak megnyitásához.
Válassza a Microsoft Hive ODBC-illesztőprogramot, majd a Befejezés lehetőséget a Microsoft Hive ODBC-illesztőprogram DSN telepítőablakának megnyitásához.
Írja be vagy válassza ki az alábbi értékeket:
Tulajdonság Leírás Adatforrás neve Adjon nevet az adatforrásának Házigazda Írja be CLUSTERNAME.azurehdinsight.net
. Például:myHDICluster.azurehdinsight.net
Kikötő Használja a 443 számú portot. Adatbázis Használja az alapértelmezett beállítást. Mechanizmus A Windows Azure HDInsight szolgáltatás kiválasztása Felhasználónév Adja meg a HDInsight-fürt HTTP-felhasználónevét. Az alapértelmezett felhasználónév a következő admin
: .Jelszó Adja meg a HDInsight-fürt felhasználói jelszavát. Jelölje be a Jelszó mentése (Titkosított) jelölőnégyzetet. Nem kötelező: Válassza a Speciális beállítások lehetőséget.
Paraméter Leírás Natív lekérdezés használata Ha ki van választva, az ODBC-illesztő NEM próbálja a TSQL-t HiveQL-re konvertálni. Ezt a lehetőséget csak akkor használja, ha 100%-ig biztos abban, hogy tiszta HiveQL-utasításokat küld. Az SQL Serverhez vagy az Azure SQL Database-hez való csatlakozáskor hagyja bejelöletlenül. Blokkonként lekért sorok Nagy számú rekord beolvasásakor szükség lehet a paraméter finomhangolására az optimális teljesítmény biztosításához. Alapértelmezett sztringoszlop hossza, Bináris oszlop hossza, Tizedesoszlop skálája Az adattípus hossza és pontossága befolyásolhatja az adatok visszaadása módját. Helytelen adatokat adnak vissza a pontosság és a csonkolás elvesztése miatt. Válassza a Tesztelés lehetőséget az adatforrás teszteléséhez. Ha az adatforrás megfelelően van konfigurálva, a teszt eredménye sikeres lesz.
A Teszt ablak bezárásához kattintson az OK gombra .
Kattintson az OK gombra a Microsoft Hive ODBC-illesztőprogram DSN telepítőablakának bezárásához .
Az OK gombra kattintva zárja be az ODBC Adatforrás Rendszergazda istrator ablakát.
Adatok lekérdezése a PowerShell-lel
A következő PowerShell-szkript egy függvény, amelyet az ODBC a Hive-fürtök lekérdezéséhez használ.
function Get-ODBC-Data {
param(
[string]$query=$(throw 'query is required.'),
[string]$dsn,
[PSCredential] $cred = (Get-Credential)
)
$conn = New-Object System.Data.Odbc.OdbcConnection
$uname = $cred.UserName
$pswd = (New-Object System.Net.NetworkCredential -ArgumentList "", $cred.Password).Password
$conn.ConnectionString = "DSN=$dsn;Uid=$uname;Pwd=$pswd;"
$conn.open()
$cmd = New-object System.Data.Odbc.OdbcCommand($query,$conn)
$ds = New-Object system.Data.DataSet
(New-Object system.Data.odbc.odbcDataAdapter($cmd)).fill($ds) #| out-null
$conn.close()
$ds.Tables
}
Az alábbi kódrészlet a fenti függvény használatával hajt végre egy lekérdezést az oktatóanyag elején létrehozott Interaktív lekérdezési fürtön. Cserélje le DATASOURCENAME
a Microsoft Hive ODBC-illesztőprogram DSN telepítő képernyőjén megadott adatforrásnévre. Amikor a rendszer hitelesítő adatokat kér, adja meg a fürt bejelentkezési felhasználóneve és a fürt bejelentkezési jelszava alatt megadott felhasználónevet és jelszót a fürt létrehozásakor.
$dsn = "DATASOURCENAME"
$query = "select count(distinct clientid) AS total_clients from hivesampletable"
Get-ODBC-Data -query $query -dsn $dsn
Az erőforrások eltávolítása
Ha már nincs rá szükség, törölje az erőforráscsoportot, a HDInsight-fürtöt és a tárfiókot. Ehhez válassza ki azt az erőforráscsoportot, amelyben a fürt létre lett hozva, és kattintson a Törlés gombra.
Következő lépések
Ebben az oktatóanyagban megtanulta, hogyan kérhet le adatokat az Azure HDInsight Interaktív lekérdezési fürtből a Microsoft Hive ODBC-illesztővel és a PowerShell-lel.
Visszajelzés
https://aka.ms/ContentUserFeedback.
Hamarosan elérhető: 2024-ben fokozatosan kivezetjük a GitHub-problémákat a tartalom visszajelzési mechanizmusaként, és lecseréljük egy új visszajelzési rendszerre. További információ:Visszajelzés küldése és megtekintése a következőhöz: