Tutorial: Consultar o HDFS em um cluster de Big Data do SQL Server
Artigo
Aplica-se a: SQL Server 2019 (15.x)
Importante
O complemento Clusters de Big Data do Microsoft SQL Server 2019 será desativado. O suporte para Clusters de Big Data do SQL Server 2019 será encerrado em 28 de fevereiro de 2025. Todos os usuários existentes do SQL Server 2019 com Software Assurance terão suporte total na plataforma e o software continuará a ser mantido por meio de atualizações cumulativas do SQL Server até esse momento. Para obter mais informações, confira a postagem no blog de anúncio e as opções de Big Data na plataforma do Microsoft SQL Server.
Este tutorial demonstra como consultar dados do HDFS em um Clusters de Big Data do SQL Server 2019.
Neste tutorial, você aprenderá como:
Criar uma tabela externa apontando para os dados do HDFS em um cluster de Big Data.
Unir esses dados com os dados de alto valor na instância mestre.
Dica
Se preferir, você poderá baixar e executar um script para os comandos neste tutorial. Para obter instruções, confira os Exemplos de virtualização de dados no GitHub.
Este vídeo de 7 minutos orienta você pela consulta de dados do HDFS em um cluster de Big Data:
O pool de armazenamento contém dados de cliques da Web em um arquivo CSV armazenado no HDFS. Use as etapas a seguir para definir uma tabela externa que pode acessar os dados nesse arquivo.
Crie uma fonte de dados externos para o pool de armazenamento se ela ainda não existir.
IF NOT EXISTS(SELECT * FROM sys.external_data_sources WHERE name = 'SqlStoragePool')
BEGIN
CREATE EXTERNAL DATA SOURCE SqlStoragePool
WITH (LOCATION = 'sqlhdfs://controller-svc/default');
END
Crie uma tabela externa que possa ler o /clickstream_data do pool de armazenamento. O SqlStoragePool pode ser acessado da instância mestre de um cluster de Big Data.
Execute a consulta a seguir para unir os dados do HDFS na tabela externa web_clickstream_hdfs com os dados relacionais no banco de dados Sales local.
SELECT
wcs_user_sk,
SUM( CASE WHEN i_category = 'Books' THEN 1 ELSE 0 END) AS book_category_clicks,
SUM( CASE WHEN i_category_id = 1 THEN 1 ELSE 0 END) AS [Home & Kitchen],
SUM( CASE WHEN i_category_id = 2 THEN 1 ELSE 0 END) AS [Music],
SUM( CASE WHEN i_category_id = 3 THEN 1 ELSE 0 END) AS [Books],
SUM( CASE WHEN i_category_id = 4 THEN 1 ELSE 0 END) AS [Clothing & Accessories],
SUM( CASE WHEN i_category_id = 5 THEN 1 ELSE 0 END) AS [Electronics],
SUM( CASE WHEN i_category_id = 6 THEN 1 ELSE 0 END) AS [Tools & Home Improvement],
SUM( CASE WHEN i_category_id = 7 THEN 1 ELSE 0 END) AS [Toys & Games],
SUM( CASE WHEN i_category_id = 8 THEN 1 ELSE 0 END) AS [Movies & TV],
SUM( CASE WHEN i_category_id = 9 THEN 1 ELSE 0 END) AS [Sports & Outdoors]
FROM [dbo].[web_clickstreams_hdfs]
INNER JOIN item it ON (wcs_item_sk = i_item_sk
AND wcs_user_sk IS NOT NULL)
GROUP BY wcs_user_sk;
GO
Limpar
Use o comando a seguir para remover a tabela externa usada neste tutorial.
DROP EXTERNAL TABLE [dbo].[web_clickstreams_hdfs];
GO
Próximas etapas
Avance para o próximo artigo para saber como consultar o Oracle de um cluster de Big Data.
Saiba mais sobre a virtualização de dados, como usar o Polybase para acessar e consultar dados externos e recursos avançados do Polybase no SQL Server 2022.
Demonstre a compreensão das tarefas comuns de engenharia de dados para implementar e gerenciar cargas de trabalho de engenharia de dados no Microsoft Azure, usando vários serviços do Azure.