Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Z tego przewodnika Szybki start dowiesz się, jak używać rozwiązania Apache Phoenix do uruchamiania zapytań HBase w usłudze Azure HDInsight. Apache Phoenix to aparat zapytań SQL dla bazy danych Apache HBase. Jest on dostępny jako sterownik JDBC i umożliwia wykonywanie zapytań w tabelach HBase i zarządzanie nimi przy użyciu języka SQL. SQLLine to narzędzie wiersza polecenia do wykonywania kodu SQL.
Jeśli nie masz subskrypcji platformy Azure, przed rozpoczęciem utwórz bezpłatne konto.
Wymagania wstępne
Klaster Apache HBase. Zobacz Tworzenie klastra , aby utworzyć klaster usługi HDInsight. Upewnij się, że wybrano typ klastra HBase .
Klient SSH. Aby uzyskać więcej informacji, zobacz Łączenie się z usługą HDInsight (Apache Hadoop) przy użyciu protokołu SSH.
Identyfikowanie węzła ZooKeeper
Podczas nawiązywania połączenia z klastrem HBase należy nawiązać połączenie z jednym z węzłów usługi Apache ZooKeeper. Każdy klaster usługi HDInsight ma trzy węzły usługi ZooKeeper. Narzędzie Curl może służyć do szybkiego identyfikowania węzła ZooKeeper. Zmodyfikuj poniższe polecenie curl, zastępując PASSWORD i CLUSTERNAME odpowiednimi wartościami, a następnie wprowadź polecenie w terminalu:
curl -u admin:PASSWORD -sS -G https://CLUSTERNAME.azurehdinsight.net/api/v1/clusters/CLUSTERNAME/services/ZOOKEEPER/components/ZOOKEEPER_SERVER
Część danych wyjściowych będzie wyglądać podobnie do następujących:
{
"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"
}
Zanotuj wartość host_name do późniejszego użycia.
Tworzenie tabeli i manipulowanie danymi
Za pomocą protokołu SSH możesz nawiązać połączenie z klastrami HBase, a następnie utworzyć tabele bazy danych HBase, wstawić dane i wysyłać zapytania o dane przy użyciu platformy Apache Phoenix.
Użyj
sshpolecenia , aby nawiązać połączenie z klastrem HBase. Zmodyfikuj poniższe polecenie, zastępującCLUSTERNAMEnazwą twojego klastra, a następnie wykonaj polecenie.ssh sshuser@CLUSTERNAME-ssh.azurehdinsight.netZmień katalog na klienta Phoenix. Wprowadź następujące polecenie:
cd /usr/hdp/current/phoenix-client/binUruchom program SQLLine. Zmodyfikuj poniższe polecenie, zastępując
ZOOKEEPERelement węzłem ZooKeeper zidentyfikowanym wcześniej, a następnie wprowadź polecenie:./sqlline.py ZOOKEEPER:2181:/hbase-unsecureUtwórz tabelę HBase. Wprowadź następujące polecenie:
CREATE TABLE Company (company_id INTEGER PRIMARY KEY, name VARCHAR(225));Użyj polecenia SQLLine
!tables, aby wyświetlić listę wszystkich tabel w bazie HBase. Wprowadź następujące polecenie:!tablesWstaw wartości w tabeli. Wprowadź następujące polecenie:
UPSERT INTO Company VALUES(1, 'Microsoft'); UPSERT INTO Company VALUES(2, 'Apache');Zapytaj tabelę. Wprowadź następujące polecenie:
SELECT * FROM Company;Usuwanie rekordu. Wprowadź następujące polecenie:
DELETE FROM Company WHERE COMPANY_ID=1;Usuń tabelę. Wprowadź następujące polecenie:
DROP TABLE Company;Użyj polecenia SQLLine, aby zamknąć program SQLLine
!quit. Wprowadź następujące polecenie:!quit
Czyszczenie zasobów
Po ukończeniu procedury szybkiego startu możesz usunąć klaster. W usłudze HDInsight dane są przechowywane w usłudze Azure Storage, dzięki czemu można bezpiecznie usunąć klaster, gdy nie jest używany. Opłaty są również naliczane za klaster usługi HDInsight, nawet jeśli nie jest używany. Ponieważ opłaty za klaster są wielokrotnie większe niż opłaty za magazyn, warto usunąć klastry, gdy nie są używane.
Aby usunąć klaster, zobacz Usuwanie klastra usługi HDInsight przy użyciu przeglądarki, programu PowerShell lub interfejsu wiersza polecenia platformy Azure.
Następne kroki
W tym szybkim starcie nauczyłeś się, jak używać Apache Phoenix do uruchamiania zapytań HBase w usłudze Azure HDInsight. Aby dowiedzieć się więcej na temat platformy Apache Phoenix, następny artykuł zawiera dokładniejsze badanie.