Vídeo: hadoop hbase grupo 13 2024
O HBase está escrito em Java, um idioma elegante para a construção de tecnologias distribuídas como HBase, mas enfrente - nem todo mundo que quer aproveitar as inovações da HBase é um desenvolvedor Java. É por isso que existe um rico ecossistema de cliente HBase lá fora, cuja única finalidade é fazer o levantamento de Java pesado para você e permitir que você se concentre em fazer o HBase funcionar para você.
Rich geralmente é uma boa característica, mas quando esse adjetivo cruza a linha em esmagador, , você começa a ter um problema. Aqui está uma visão geral do ecossistema do cliente em forma de diagrama. Observe que o diagrama é semelhante ao diagrama de arquitetura HBase, com uma exibição explodida da caixa do cliente.
As seguintes listas resumem suas opções, começando com os clientes Apache Hadoop, mais especificamente os clientes HBase que fazem parte do ecossistema Apache Hadoop, juntamente com as tecnologias incluídas no HBase projetadas para ajudá-lo a construir HBase clientes:
-
Hive: Hive é outro projeto Apache de nível superior. A Hive fornece sua própria capacidade de armazenamento de dados em cima do Apache Hadoop. Ele vem com um manipulador de armazenamento para HBase e também fornece a linguagem de consulta HiveQL, que é bastante semelhante ao SQL. Com o Hive, você pode fazer todas as consultas do HBase que você deseja usar o HiveQL e - aqui é o kicker - nenhuma codificação Java é necessária quando você está usando o HBase com o Hive.
-
MapReduce: MapReduce faz parte do framework Apache Hadoop. O reconhecimento da MapReduce à fama é que é um modelo de programação para processar dados em paralelo em um cluster distribuído. No universo Hadoop, o HBase é (como o nome indica) o "Banco de Dados Hadoop". "O HBase utiliza o sistema de arquivos distribuídos Hadoop (HDFS) e também pode ser alavancado pelos trabalhos MapReduce. As tabelas HBase podem ser uma fonte ou um coletor para trabalhos de MapReduce em processamento paralelo.
-
Porco: Porco é outra tecnologia incluída com Apache Hadoop e, como com a Hive, Pig pode aproveitar a HBase. O porco leva você a um nível, dando-lhe uma linguagem de programação de nível superior chamada Pig Latin, que pode fazer o levantamento MapReduce pesado para você.
-
Sistema de Renda de Linguagem múltipla: A Thrift fornece uma abordagem neutra do idioma para a construção de clientes HBase. Desenvolvido pelo Facebook, o Idioma de Definição de Interface (IDL) da Thrift permite que você defina tipos de dados e interfaces de serviço, de modo que dois sistemas diferentes escritos em diferentes idiomas possam se comunicar uns com os outros. Depois que o IDL é escrito, Thrift gera o código necessário para a comunicação.
-
Cliente Java: Se você for um desenvolvedor Java e você entende os prós e contras dos pacotes Java, então você quer verificar o pacote que vem acompanhado da distribuição HBase.
-
REST System: Provavelmente, a abordagem mais rápida para acessar uma tabela HBase é aproveitar a interface REST. REST, que representa Re S tate T ransfer, é a tecnologia que faz o seu navegador web funcionar. A maioria das pessoas simplesmente aceita os navegadores da web, então, o que poderia ser mais natural para qualquer pessoa do que apenas usar seu navegador favorito como o gateway para um cluster HBase?
Tal como acontece com a abordagem Thrift, o servidor de gateway REST é fornecido com o HBase e você precisa iniciar pelo menos um para permitir a interação do navegador com suas tabelas. Para fazer isso, basta escolher um número de porta para seu servidor de gateway e digitar o seguinte comando:
$ INSTALL_DIR / hbase-0. 94. 7 / bin / hbase rest start _p 7777
-
JRuby (HBase Shell): A maneira mais rápida de enrolar as mangas e aprender a usar o HBase é através do shell HBase. Como você provavelmente já viu no exemplo prático do shell HBase na seção anterior, o shell é uma poderosa ferramenta para interagir com o HBase. O shell HBase é baseado no Interactive Ruby Shell ou no IRB da JRuby para breve.
Tenha em mente, no entanto, que você também pode escrever scripts e executá-los no modo em lote.