#04-[Série] SQL Server Big Data Clusters – Ingestão de Dados no Storage Pool (HDFS) – DATA IS BIG | GARETTI | Microsoft MVP
Continuando a série de posts sobre SQL Server Big Data Cluster (BDC) agora vamos brincar um pouco com a Ingestão de dados no Storage Pool (HDFS). Para entender com mais detalhes a aquitetura de uma olhada neste artigo e se quiser instalar o BDC é só seguir esse guia.
Storage Pool no BDC
Para informações mais detalhadas leia esse artigo.
Acessando HDFS via Azure Data Studio (ADS)
Conecte no Azure Data Studio com o IP e Porta. Para pegar essas informações execute via Kubectl (substitua bdccluster pelo nome do seu cluster)
Abra o Azure Data Studio e vá em New Connection e informe os dados de conexão.
Pronto, agora você está "dentro". Via ADS é possível fazer muita coisa, como acessar o Controller (assunto para outro post), criar banco de dados, execução de querys, Notebooks entre outras coisas… mas vamos focar no HDFS.
Do lado esquerdo, existirá a conexão com o seu ambiente, expanda e será possível observar o item HDFS. Olha que mágico :), de forma visual e simples é possível acessar os diretórios, criar pastas, gerenciar pemissionamento e também fazer upload de arquivos.
Ingestão no HDFS
De forma muito simples, clique com botão direto sob HDFS, criar novo diretório, especifique o nome (RepoTesteGaretti) e pronto.. por baixo dos panos você acabou de executar um hdfs dfs -mkdir RepoTesteGaretti.
Agora vamos incluir alguns arquivos no HDFS, no diretório RepoTesteGaretti, botão direito, Upload Files, escolha os arquivos e faça o upload.
Em Produção precisamos automatizar esse processo certo? afinal, teremos n jobs fazendo ingestão, criando diretórios e fazer isso manualmente é muito ruim.
Para isso, podemos acessar a o HDFS via Command line, da seguinte forma:
azdata bdc hdfs shell
E via linha de comando podemos exibir os diretórios (ls), acessar os arquivos (cd dir..), e executar uma infinidade de comandos.
Para exemplificar, vamos criar outro diretório e fazer upload de arquivos via command line.
Criando o diretório RepoTesteGaretti02.
No HDFS execute o comando:
mkdir RepoTesteGaretti02
Para listar o novo diretório:
ls /RepoTesteGaretti02
Fazendo upload via curl
Execute o comando Curl substituindo "Senha", "IP" e "Diretório":
curl -i -L -k -u root:SENHA -X PUT https://IP:30443/gateway/default/webhdfs/v1/RepoTesteGaretti02/Candidatos_2018.csv?op=create -H 'Content-Type: application/octet-stream -T C:\tmp\Candidatos_2018.csv'
Listando o novo arquivo no diretório /RepoTesteGaretti02/
ls /RepoTeste/Garetti02
Foi fácil né? Com essas informações em mãos já podemos começar a brincar com massas de dados interessantes e que servirá como insumo para os próximos posts.
Tente executar esses comandos, inserindo arquivos de vários formatos (pdf, parquet, csv, etc) e caso tenha alguma dúvida é só comentar no post ou me enviar por e-mail.
A missão do próximo post será "Ler" esses dados no HDFS via T-SQL, utilizando um recurso chamado EXTERNAL TABLE.. vamos executar SELECT e também um Python via Spark (pyspark).
SQL Big Data Clusters	Big Data, bigdataclusters, curl, ingestaoHDFS
One thought on "#04-[Série] SQL Server Big Data Clusters – Ingestão de Dados no Storage Pool (HDFS)"