O que é um data lake?

Um data lake é um repositório de armazenamento que contém uma grande quantidade de dados em seu formato nativo bruto. Os armazenamentos de data lake são otimizados para dimensionamento para terabytes e petabytes de dados. Os dados normalmente vêm de várias fontes heterogêneas e podem ser estruturados, semiestruturados ou não estruturados. A ideia com um data lake é armazenar tudo em seu estado original e não transformado. Essa abordagem difere de um data warehouse tradicional, que transforma e processa os dados no momento da ingestão.

A diagram that shows the different data lake use cases.

A seguir estão os principais casos de uso do data lake:

  • Movimentação de dados na nuvem e IoT
  • Processamento de macrodados
  • Análise
  • Relatórios
  • Movimentação de dados no local

Vantagens de um data lake:

  • Os dados nunca são descartados, porque os dados são armazenados em seu formato bruto. Isso é especialmente útil em um ambiente de big data, quando você pode não saber com antecedência quais insights estão disponíveis a partir dos dados.
  • Os usuários podem explorar os dados e criar suas próprias consultas.
  • Pode ser mais rápido do que as ferramentas ETL tradicionais.
  • Mais flexível do que um armazém de dados, porque pode armazenar dados não estruturados e semiestruturados.

Uma solução completa de data lake consiste em armazenamento e processamento. O armazenamento do data lake foi projetado para tolerância a falhas, escalabilidade infinita e ingestão de dados de alta taxa de transferência com formas e tamanhos variados. O processamento do data lake envolve um ou mais mecanismos de processamento criados com esses objetivos em mente e pode operar em dados armazenados em um data lake em escala.

Quando usar um data lake

Os usos típicos de um data lake incluem exploração de dados, análise de dados e aprendizado de máquina.

Um data lake também pode atuar como a fonte de dados para um data warehouse. Com essa abordagem, os dados brutos são ingeridos no data lake e, em seguida, transformados em um formato consultável estruturado. Normalmente, essa transformação usa um pipeline ELT (extract-load-transform), onde os dados são ingeridos e transformados no local. Os dados de origem que já são relacionais podem ir diretamente para o data warehouse, usando um processo ETL, ignorando o data lake.

Os armazenamentos de data lake são frequentemente usados em cenários de streaming de eventos ou IoT, porque podem persistir grandes quantidades de dados relacionais e não relacionais sem transformação ou definição de esquema. Eles são criados para lidar com grandes volumes de pequenas gravações com baixa latência e são otimizados para uma taxa de transferência massiva.

A tabela a seguir compara data lakes e data warehouses:

A table that compares data lake features with data warehouse features.

Desafios

  • A falta de um esquema ou metadados descritivos pode tornar os dados difíceis de consumir ou consultar.
  • A falta de consistência semântica entre os dados pode dificultar a realização de análises nos dados, a menos que os usuários sejam altamente qualificados em análise de dados.
  • Pode ser difícil garantir a qualidade dos dados que vão para o data lake.
  • Sem uma governança adequada, o controle de acesso e as questões de privacidade podem ser problemas. Que informações estão indo para o data lake, quem pode acessar esses dados e para que usos?
  • Um data lake pode não ser a melhor maneira de integrar dados que já são relacionais.
  • Por si só, um data lake não fornece visões integradas ou holísticas em toda a organização.
  • Um data lake pode se tornar um terreno de despejo para dados que nunca são realmente analisados ou extraídos para obter insights.

Opções de tecnologia

Crie soluções de data lake usando os seguintes serviços oferecidos pelo Azure:

A diagram that shows the key data lake services.

  • O Azure HD Insight é um serviço de análise gerenciado, de espectro completo e de código aberto na nuvem para empresas.
  • O Repositório Azure Data Lake é um repositório de hiperescala compatível com Hadoop.
  • O Azure Data Lake Analytics é um serviço de trabalho de análise sob demanda para simplificar a análise de big data.

Contribuidores

Este artigo é mantido pela Microsoft. Foi originalmente escrito pelos seguintes contribuidores.

Autor principal:

Próximos passos