BT

Início Notícias Combinando sql server e hadoop usando polybase

Combinando sql server e hadoop usando polybase

Favoritos

Com o recente lançamento do SQL Server 2016, podemos agora utilizar consultas SQL nos ambientes Hadoop e Azure blob storage. A tecnologia responsável por esta funcionalidade, conhecida como PolyBase, foi previamente disponibilizada no SQL Server Parallel Data Warehouse.

A tecnologia PolyBase busca transferir o máximo de processamento possível para o banco de dados de origem. Isto significa que, ao executar uma consulta no Hadoop ou no Azure blob storage, ela vai gerar as operações de map/reduce apropriadas. Este comportamento é conhecimento como “pushdown” e possui algumas limitações que os desenvolvedores devem estar atentos:

O SQL Server permite as seguintes expressões e operadores básicos para criação de predicados no modelo pushdown:

  • Operadores de comparação binária( <, >, =, !=, <>, >=, <= ) para valores de tipo numérico, de data e de tempo.

  • Operadores aritméticos ( +, -, *, /, % ).

  • Operadores lógicos ( AND, OR ).

  • Operadores unários ( NOT, IS NULL, IS NOT NULL ).

A documentação também esclarece que:

Os operadores BETWEEN, NOT, IN e LIKE podem ser utilizadas no modelo pushdown. A forma de utilização destes operadores depende de como o otimizador de consultas vai reescrevê-los em uma sequência de instruções que utilizem operadores relacionais.

A utilização do modelo pushdown pode ser explicitamente forçada ou desabilitada usando as opções OPTION (FORCE EXTERNALPUSHDOWN) e OPTION (DISABLE EXTERNALPUSHDOWN), respectivamente.

Combinando dados relacionais e não relacionais

Como o PolyBase se baseia em T-SQL, os desenvolvedores possuem acesso às operações usuais, como joins. Isto significa que pode-se executar uma operação map/reduce em um cluster Hadoop e realizar a associação (join) dos resultados em tabelas do SQL Server em único comando.

Importação e exportação

A movimentação de dados entre o SQL Server, Hadoop e o Azure blob storage não mais requer processos ETL ou ferramentas adicionais. Ao invés disso, pode-se utilizar a mesma sintaxe INSERT INTO/SELECT FROM que é usualmente utilizada para transferir dados entre tabelas. Da perspectiva do desenvolvedor, o Hadoop e o Azure blob storage são somente mais dois tipos de tabelas que podem ser utilizadas durante o processo de provisionamento do banco de dados. (Do ponto de vista da equipe de operações, você ainda precisa gerenciar a segurança e o backup separadamente.)

Avalie esse artigo

Relevância
Estilo/Redação

Olá visitante

Você precisa cadastrar-se no InfoQ Brasil ou para enviar comentários. Há muitas vantagens em se cadastrar.

Obtenha o máximo da experiência do InfoQ Brasil.

HTML é permitido: a,b,br,blockquote,i,li,pre,u,ul,p

Comentários da comunidade

HTML é permitido: a,b,br,blockquote,i,li,pre,u,ul,p

HTML é permitido: a,b,br,blockquote,i,li,pre,u,ul,p

BT

Seu cadastro no InfoQ está atualizado? Poderia rever suas informações?

Nota: se você alterar seu email, receberá uma mensagem de confirmação

Nome da empresa:
Cargo/papel na empresa:
Tamanho da empresa:
País:
Estado:
Você vai receber um email para validação do novo endereço. Esta janela pop-up fechará em instantes.