Uwaga
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
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
ssh
polecenia , aby nawiązać połączenie z klastrem HBase. Zmodyfikuj poniższe polecenie, zastępującCLUSTERNAME
nazwą twojego klastra, a następnie wykonaj polecenie.ssh sshuser@CLUSTERNAME-ssh.azurehdinsight.net
Zmień katalog na klienta Phoenix. Wprowadź następujące polecenie:
cd /usr/hdp/current/phoenix-client/bin
Uruchom program SQLLine. Zmodyfikuj poniższe polecenie, zastępując
ZOOKEEPER
element węzłem ZooKeeper zidentyfikowanym wcześniej, a następnie wprowadź polecenie:./sqlline.py ZOOKEEPER:2181:/hbase-unsecure
Utwó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:!tables
Wstaw 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.