Neste tutorial, mostramos como fazer as seguintes tarefas:
Neste documento, você usará os seguintes componentes faturáveis do Google Cloud:
Para gerar uma estimativa de custo baseada na projeção de uso deste tutorial, use a calculadora de preços.
Se ainda não tiver feito, crie um projeto do Google Cloud Platform.
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Make sure that billing is enabled for your Google Cloud project.
Enable the Dataproc and Compute Engine APIs.
Execute o comando a seguir em um terminal de sessão do Cloud Shell para:
--properties
para adicionar a configuração e a biblioteca do HBase ao
caminho de classe do driver e do executor do Spark.gcloud dataproc clusters createcluster-name \ --region=region \ --optional-components=HBASE,ZOOKEEPER \ --num-workers=3 \ --enable-component-gateway \ --image-version=2.0 \ --properties='spark:spark.driver.extraClassPath=/etc/hbase/conf:/usr/lib/hbase/*,spark:spark.executor.extraClassPath=/etc/hbase/conf:/usr/lib/hbase/*'
No console do Google Cloud ou em um terminal de sessão do Cloud Shell, execute o SSH no nó mestre do cluster do Dataproc.
Verifique a instalação do conector Apache HBase Spark no nó mestre:
ls -l /usr/lib/spark/jars | grep hbase-spark
-rw-r--r-- 1 root rootsize date time hbase-spark-connector.version .jar
Mantenha o terminal da sessão SSH aberto para:
Execute os comandos listados nesta seção no terminal da sessão SSH do nó mestre que você abriu na etapa anterior.
Abra o shell do HBase:
hbase shell
Crie uma "my-table" do HBase com um grupo de colunas "cf":
create 'my_table','cf'
my-table
é listado na seção Tabelas na página Início.
Abra um terminal de sessão do Cloud Shell.
Clone o repositório do GitHub GoogleCloudDataproc/cloud-dataproc no terminal da sessão do Cloud Shell:
git clone https://github.com/GoogleCloudDataproc/cloud-dataproc.git
Altere para o diretório cloud-dataproc/spark-hbase
:
cd cloud-dataproc/spark-hbase
user-name @cloudshell:~/cloud-dataproc/spark-hbase (project-id )$
Envie o job do Dataproc.
pom.xml
.
scala -version
spark-shell
hbase version
pom.xml
:
<properties> <scala.version>scala full version (for example, 2.12.14) </scala.version> <scala.main.version>scala main version (for example, 2.12) </scala.main.version> <spark.version>spark version (for example, 3.1.2) </spark.version> <hbase.client.version>hbase version (for example, 2.2.7) </hbase.client.version> <hbase-spark.version>1.0.0(the current Apache HBase Spark Connector version)> </properties>
hbase-spark.version
é a versão atual do conector Spark HBase.
Deixe esse número de versão inalterado.pom.xml
no editor do Cloud Shell para inserir os
números de versão corretos do Scala, do Spark e do HBase.
Clique em Abrir terminal quando terminar de editar para retornar à
linha de comando do terminal do Cloud Shell.
cloudshell edit .
sudo update-java-alternatives -s java-1.8.0-openjdk-amd64 && export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
java -version
openjdk version "1.8..."
jar
:
mvn clean package
.jar
é colocado no subdiretório /target
(por exemplo,
target/spark-hbase-1.0-SNAPSHOT.jar
).Envie o job.
gcloud dataproc jobs submit spark \ --class=hbase.SparkHBaseMain \ --jars=target/filename .jar \ --region=cluster-region \ --cluster=cluster-name
--jars
: insira o nome do arquivo .jar
depois de "target/" e antes de ".jar".‑‑properties
no comando de envio de job:
--properties='spark.driver.extraClassPath=/etc/hbase/conf:/usr/lib/hbase/*,spark.executor.extraClassPath=/etc/hbase/conf:/usr/lib/hbase/*'
Confira a saída da tabela do HBase na saída do terminal da sessão do Cloud Shell:
Waiting for job output... ... +----+----+ | key|name| +----+----+ |key1| foo| |key2| bar| +----+----+
Envie o job.
gcloud dataproc jobs submit pyspark scripts/pyspark-hbase.py \ --region=cluster-region \ --cluster=cluster-name
‑‑properties
no comando de envio de job:
--properties='spark.driver.extraClassPath=/etc/hbase/conf:/usr/lib/hbase/*,spark.executor.extraClassPath=/etc/hbase/conf:/usr/lib/hbase/*'
Confira a saída da tabela do HBase na saída do terminal da sessão do Cloud Shell:
Waiting for job output... ... +----+----+ | key|name| +----+----+ |key1| foo| |key2| bar| +----+----+
É possível verificar o conteúdo da tabela HBase executando os seguintes comandos no terminal da sessão SSH do nó mestre que você abriu em Verificar a instalação do conector:
hbase shell
scan 'my_table'
ROW COLUMN+CELL key1 column=cf:name, timestamp=1647364013561, value=foo key2 column=cf:name, timestamp=1647364012817, value=bar 2 row(s) Took 0.5009 seconds
Depois de concluir o tutorial, você pode limpar os recursos que criou para que eles parem de usar a cota e gerar cobranças. Nas seções a seguir, você aprenderá a excluir e desativar esses recursos.
O jeito mais fácil de evitar cobranças é excluindo o projeto que você criou para o tutorial.
Para excluir o projeto, faça o seguinte:
gcloud dataproc clusters deletecluster-name \ --region=${REGION}
Exceto em caso de indicação contrária, o conteúdo desta página é licenciado de acordo com a Licença de atribuição 4.0 do Creative Commons, e as amostras de código são licenciadas de acordo com a Licença Apache 2.0. Para mais detalhes, consulte as políticas do site do Google Developers. Java é uma marca registrada da Oracle e/ou afiliadas.
Última atualização 2025-02-06 UTC.