Rövid útmutató: Az Apache HBase lekérdezése az Azure HDInsightban az Apache Phoenix használatával
Ebből a rövid útmutatóból megtudhatja, hogyan futtathat HBase-lekérdezéseket az Azure HDInsightban az Apache Phoenix használatával. Az Apache Phoenix az Apache HBase SQL-lekérdezési motorja. JDBC-illesztőként érhető el, és lehetővé teszi a HBase táblák SQL eszközzel végzett lekérdezését és kezelését. Az SQLLine egy parancssori segédprogram az SQL végrehajtásához.
Ha még nincs Azure-előfizetése, kezdés előtt hozzon létre egy ingyenes fiókot.
Előfeltételek
Apache HBase-fürt. Lásd: Fürt létrehozása HDInsight-fürt létrehozásához. Győződjön meg arról, hogy a HBase-fürttípust választja.
Egy SSH-ügyfél. További információért lásd: Csatlakozás a HDInsighthoz (Apache Hadoop) SSH-val.
ZooKeeper-csomópont azonosítása
Ha HBase-fürthöz csatlakozik, az Apache ZooKeeper-csomópontok egyikéhez kell csatlakoznia. Minden HDInsight-fürtnek három ZooKeeper-csomópontja van. A Curl segítségével gyorsan azonosíthatók a ZooKeeper-csomópontok. Szerkessze az alábbi curl parancsot a megfelelő értékek lecserélésével PASSWORD
, CLUSTERNAME
majd írja be a parancsot egy parancssorba:
curl -u admin:PASSWORD -sS -G https://CLUSTERNAME.azurehdinsight.net/api/v1/clusters/CLUSTERNAME/services/ZOOKEEPER/components/ZOOKEEPER_SERVER
A kimenet egy része a következőhöz hasonló lesz:
{
"href" : "http://hn*.432dc3rlshou3ocf251eycoapa.bx.internal.cloudapp.net:8080/api/v1/clusters/myCluster/hosts/<zookeepername1>.432dc3rlshou3ocf251eycoapa.bx.internal.cloudapp.net/host_components/ZOOKEEPER_SERVER",
"HostRoles" : {
"cluster_name" : "myCluster",
"component_name" : "ZOOKEEPER_SERVER",
"host_name" : "<zookeepername1>.432dc3rlshou3ocf251eycoapa.bx.internal.cloudapp.net"
}
Jegyezze fel a későbbi használatra vonatkozó host_name
értéket.
Tábla létrehozása és adatok kezelése
Az SSH használatával csatlakozhat a HBase-fürtökhöz, majd az Apache Phoenix használatával HBase-táblákat hozhat létre, adatokat szúrhat be és adatokat kérdezhet le.
A HBase-fürthöz való csatlakozáshoz használja
ssh
a parancsot. Szerkessze az alábbi parancsot a fürt nevére cserélveCLUSTERNAME
, majd írja be a parancsot:ssh sshuser@CLUSTERNAME-ssh.azurehdinsight.net
Módosítsa a könyvtárat a Phoenix-ügyfélre. Írja be a következő parancsot:
cd /usr/hdp/current/phoenix-client/bin
Indítsa el az SQLLine-t. Szerkessze az alábbi parancsot úgy, hogy lecseréli
ZOOKEEPER
a korábban azonosított ZooKeeper-csomópontra, majd írja be a parancsot:./sqlline.py ZOOKEEPER:2181:/hbase-unsecure
Hozzon létre egy HBase-táblát. Írja be a következő parancsot:
CREATE TABLE Company (company_id INTEGER PRIMARY KEY, name VARCHAR(225));
Az SQLLine
!tables
paranccsal listázhatja a HBase összes táblát. Írja be a következő parancsot:!tables
Értékek beszúrása a táblába. Írja be a következő parancsot:
UPSERT INTO Company VALUES(1, 'Microsoft'); UPSERT INTO Company VALUES(2, 'Apache');
A tábla lekérdezése. Írja be a következő parancsot:
SELECT * FROM Company;
Rekord törlése. Írja be a következő parancsot:
DELETE FROM Company WHERE COMPANY_ID=1;
A táblázat elvetése. Írja be a következő parancsot:
DROP TABLE Company;
Az SQLLine
!quit
paranccsal lépjen ki az SQLLine-ból. Írja be a következő parancsot:!quit
Az erőforrások eltávolítása
A rövid útmutató elvégzése után érdemes lehet törölni a fürtöt. A HDInsight az Azure Storage szolgáltatásban tárolja az adatokat, így biztonságosan törölhet olyan fürtöket, amelyek nincsenek használatban. Ráadásul a HDInsight-fürtök akkor is díjkötelesek, amikor éppen nincsenek használatban. Mivel a fürt költsége a sokszorosa a tároló költségeinek, gazdaságossági szempontból is ésszerű törölni a használaton kívüli fürtöket.
A fürtök törléséről a HDInsight-fürt törlése a böngésző, a PowerShell vagy az Azure CLI használatával című témakörben olvashat.
Következő lépések
Ebben a rövid útmutatóban megtanulta, hogyan futtathat HBase-lekérdezéseket az Azure HDInsightban az Apache Phoenix használatával. Ha többet szeretne megtudni az Apache Phoenixről, a következő cikk részletesebb vizsgálatot nyújt.