HBase
 sql >> Base de Dados >  >> NoSQL >> HBase

O que vem a seguir para o Impala após o lançamento 1.1


Em dezembro de 2012, enquanto o Cloudera Impala ainda estava em fase beta, fornecemos um roteiro para a funcionalidade planejada na versão de produção. No mesmo espírito de manter os usuários, clientes e entusiastas do Impala bem informados, este post fornece um roteiro atualizado para os próximos lançamentos no final deste ano e no início de 2014.

Mas primeiro, um obrigado:desde o lançamento beta inicial, recebemos uma tremenda quantidade de feedback e validação sobre o Impala - abundante em qualidade e quantidade. Pelo menos uma pessoa em aproximadamente 4.500 organizações únicas em todo o mundo baixou o binário Impala, até o momento. E mesmo após apenas alguns meses de GA, vimos clientes Cloudera Enterprise de vários setores implantarem o Impala 1.x em ambientes críticos de negócios com suporte por meio de uma assinatura Cloudera RTQ (Real-Time Query) — incluindo organizações líderes em seguros, bancos, varejo, saúde, jogos, governo, telecomunicações e publicidade.

Além disso, com base na reação de outros fornecedores no espaço de gerenciamento de dados, poucos observadores contestariam a noção de que a Impala tornou as consultas SQL interativas de baixa latência para o Hadoop um requisito do cliente tão importante quanto as consultas SQL orientadas a lotes de alta latência habilitado pelo Apache Hive. Esse é um ótimo desenvolvimento para usuários do Hadoop em todos os lugares!

O que foi entregue no Impala 1.0/1.1


Vamos começar com um boletim sobre o roteiro do Impala 1.0/1.1 publicado anteriormente. Aqui está a lista de recursos, agrupados por status de entrega:

Entregue:

  • Suporte para o formato Parquet, formato de arquivo Apache Avro e TextFiles compactados em LZO
  • Suporte para as mesmas plataformas de SO de 64 bits compatíveis com CDH
  • Driver JDBC
  • Suporte a DDL
  • Uniões mais rápidas, maiores e mais eficientes em memória
  • Agregações mais rápidas, maiores e mais eficientes em memória
  • Mais otimizações de desempenho do SQL

Adiado com base no feedback do cliente:

  • Manuseio de retardatários
  • Atualização automática de metadados



Além disso, graças à adição do módulo Apache Sentry (incubação), o Impala 1.1 e posteriores agora também fornecem autorização granular baseada em função, garantindo que os usuários e aplicativos certos tenham acesso aos dados certos. (Com a recente contribuição do Sentry para o Apache Incubator e do HiveServer2 para o Hive da Cloudera, o Hive 0.11 e posteriores também possuem essa funcionalidade.)

Muito trabalho foi feito, mas ainda há muito trabalho a fazer. Agora, vamos para a onda Impala 2.0.

Roteiro de curto prazo


A nova funcionalidade Impala a seguir será lançada de forma incremental em versões futuras de curto prazo, começando com Impala 1.2 no final de 2013 e terminando com Impala 2.0 no primeiro terço de 2014. Além disso, você verá mais ganhos de desempenho e aprimoramentos de funcionalidade SQL em cada lançamento – com o objetivo de expandir a liderança de desempenho do Impala sobre as abordagens alternativas SQL-on-Hadoop de fornecedores de bancos de dados relacionais legados, bem como fornecedores de distribuição Hadoop.

Observe que, como sempre acontece com os roteiros, as linhas do tempo e os recursos estão sempre sujeitos a alterações. No entanto, o que você vê abaixo captura nosso plano de registro atual.

Impala 1.2
  • UDFs e extensibilidade – permite que os usuários adicionem suas próprias funcionalidades personalizadas; O Impala suportará UDFs Java Hive existentes, bem como UDFs e UDAFs nativos de alto desempenho
  • Atualização automática de metadados – permite que novas tabelas e dados estejam perfeitamente disponíveis para consultas Impala à medida que são adicionadas sem ter que emitir uma atualização manual em cada nó Impala
  • Cache HDFS na memória – permite acesso a dados Hadoop acessados ​​com frequência em velocidades na memória
  • Otimização da ordem de junção com base em custo – libera o usuário de ter que adivinhar a ordem de junção correta
  • Visualização do gerenciador de recursos integrado ao YARN — permite a priorização de cargas de trabalho em uma granularidade mais fina do que o isolamento de nível de serviço atualmente fornecido no Cloudera Manager

Impala 2.0

A lista abaixo captura apenas os recursos maiores e mais solicitados; não é de forma alguma completo.
  • Funções de janela analítica compatíveis com SQL 2003 (agregação OVER PARTITION) – para fornecer recursos analíticos SQL mais avançados
  • Mecanismos de autenticação adicionais – incluindo a capacidade de especificar nome de usuário/senhas, além da autenticação Kerberos já compatível
  • UDTFs (funções de tabela definidas pelo usuário) – para funções de usuário mais avançadas e extensibilidade
  • Agregações e junções paralelizadas intra-nós – para fornecer junções e agregações ainda mais rápidas além dos ganhos de desempenho do Impala
  • Dados aninhados – permite consultas em estruturas aninhadas complexas, incluindo mapas, estruturas e matrizes
  • Gerenciador de recursos aprimorado, pronto para produção e integrado ao YARN
  • Aprimoramentos do parquet – ganhos contínuos de desempenho, incluindo páginas de índice
  • Tipos de dados adicionais – incluindo tipos de data e decimal
  • ORDER BY sem cláusulas LIMIT

Além do Impala 2.0

A lista a seguir de recursos são aqueles que atualmente prevemos que estarão presentes na versão 2.1 ou em uma versão logo em seguida:
  • Funcionalidade analítica adicional do SQL – ROLLUP, CUBE e GROUPING SET
  • Apache HBase CRUD – permite o uso do Impala para inserções e atualizações no HBase
  • Junções externas usando disco – permite que as junções entre tabelas se espalhem para o disco para junções que exigem tabelas de junção maiores que o tamanho da memória agregada
  • Subconsultas dentro de cláusulas WHERE

À medida que aprendemos mais sobre os requisitos de clientes e parceiros, essa lista se expandirá.

Conclusão


Como você pode ver, o Impala evoluiu consideravelmente desde seu lançamento beta e continuará a evoluir à medida que coletamos mais feedback de usuários, clientes e parceiros.

Em última análise, acreditamos que o Impala já possibilitou nosso objetivo geral de permitir que os usuários armazenem todos os seus dados em formatos de arquivo nativos do Hadoop e executem simultaneamente todas as cargas de trabalho em lote, aprendizado de máquina, SQL/BI interativo, matemática, pesquisa e outras cargas de trabalho nesses dados. no lugar. A partir daqui, é apenas uma questão de continuar a construir sobre essa base muito sólida com funcionalidades mais ricas e desempenho aprimorado.

Justin Erickson é diretor de gerenciamento de produtos da Cloudera.