flex-height
text-black

Homem caminhando por uma sala de servidores

O que é data lake?

Data lake é um repositório centralizado de dados que ajuda na resolução de problemas de silos de dados.

default

{}

default

{}

primary

default

{}

secondary

O que é data lake: definição e propósito

Data lake é um repositório centralizado que armazena dados estruturados, semiestruturados e não estruturados em seus formatos nativos. Ao contrário de outros sistemas de armazenamento, nos quais os dados devem ser organizados antes de serem armazenados (por exemplo, data warehouses), um data lake aceita dados brutos tal como estão, preservando sua estrutura e formato originais até que sejam necessários para casos de uso de funções analíticas avançadas, IA (inteligência artificial) e ML (Machine Learning).

O principal objetivo dos data lakes é eliminar silos de dados e criar uma única fonte para os ativos de dados das organizações. Isso envolve a consolidação de dados de várias fontes em um único local acessível – o data lake –, permitindo que cientistas de dados, analistas e engenheiros de Machine Learning explorem, experimentem e extraiam valor de informações que, de outra forma, poderiam ter permanecido presas em sistemas diferentes. Os exemplos de fontes de dados que podem ser armazenadas em data lakes incluem:

O propósito dos data lakes é fornecer uma solução flexível e escalável para armazenamento e análise de dados de todos os tipos, viabilizada pela abordagem schema-on-read (em oposição à abordagem schema-on-write, usada em data warehouses).

O que significa schema-on-read?

Schema-on-read significa que a estrutura e o significado dos dados – o esquema – são aplicados quando os dados são acessados, não quando são armazenados. Esse método preserva a flexibilidade, permitindo que as organizações armazenem dados sem saber exatamente como eles serão usados no futuro. É por isso que os data lakes são ideais para funções analíticas exploratórias, data mining, Machine Learning e descoberta de padrões inesperados nos dados.

Arquitetura e componentes de data lake

A arquitetura de data lake é multicamada e consiste em vários componentes-chave que trabalham juntos para receber, armazenar, processar e fornecer dados a usuários finais e aplicativos. Estes são os componentes-chave de um data lake:

Camada de armazenamento

A camada de armazenamento é a base da arquitetura de data lake, normalmente construída sobre sistemas de armazenamento de objetos que oferecem uma solução econômica e escalável para volumes massivos de dados. Essa camada mantém os dados em seu formato nativo, sejam arquivos CSV, documentos JSON, arquivos Parquet, imagens, vídeos ou qualquer outro formato.

Ingestão de dados

A camada de ingestão de dados é responsável por levar dados de diversas fontes para o data lake em um processo que inclui a ingestão em lote para cargas de dados periódicas e a ingestão em streaming para fluxos de dados em tempo real. As ferramentas de ingestão de dados devem lidar com diversos tipos e fontes de dados, garantindo a integridade das informações e o rastreamento da linhagem dos dados.

Catálogo de dados e gerenciamento de metadados

O componente de catalogação e gerenciamento de metadados mantém um repositório organizado dos dados existentes no data lake, incluindo a localização, o significado e as relações com outros dados. Pense nesse componente como um gerenciador de catálogo de biblioteca ou arquivo. Um catálogo de dados robusto funciona como um índice pesquisável, permitindo que os usuários descubram conjuntos de dados relevantes sem precisar navegar manualmente por todo o repositório.

Camada de processamento

A camada de processamento viabiliza a transformação, a depuração, o enriquecimento e a análise de dados, e inclui mecanismos para processamento em lote e streaming, além de consultas interativas, permitindo que os usuários se preparem para casos de uso específicos ou realizem análises ad-hoc.

Camada de acesso

A camada de acesso fornece interfaces e ferramentas para diferentes tipos de usuários: cientistas de dados que usam notebooks, analistas que executam consultas SQL ou aplicativos que consomem dados por meio de APIs. Esta camada também aplica políticas de segurança, determinando quem pode acessar quais dados e em quais condições.

Tipos de data lakes: em nuvem, on premise, híbrido e multinuvem

Há diferentes tipos de data lakes, dependendo da configuração na qual a organização os implementa. Cada configuração tem seus prós e contras.

Data lakes em nuvem

Os data lakes em nuvem são hospedados inteiramente em plataformas de nuvem. Eles podem oferecer escalabilidade praticamente ilimitada, preços no modelo pay-as-you-go (pagamento por uso) e fácil integração com serviços de funções analíticas e IA nativos da nuvem. Os data lakes em nuvem eliminam a necessidade de investimento inicial em infraestrutura. Com isso, as empresas conseguem ampliar os recursos de armazenamento e computação de modo independente. Esse tipo de data lake é adequado especialmente para organizações em crescimento e para aquelas que buscam reduzir os custos operacionais, mantendo o acesso a recursos analíticos de última geração.

Data lakes on premise

Os data lakes on premise são implementados nos próprios centros de dados da organização, garantindo controle total sobre a infraestrutura, a segurança e a soberania dos dados – e atribuindo à empresa plena responsabilidade por esses elementos. Embora às vezes sejam usados por organizações com requisitos regulatórios e de segurança muito específicos, os data lakes on premise tendem a demandar investimentos significativos, manutenção contínua e esforço considerável em quaisquer projetos de transformação. Não raro, trata-se de uma troca: a maior granularidade do controle vem em detrimento da escalabilidade e da eficiência de custo.

Data lakes híbridos

Os data lakes híbridos combinam armazenamento em nuvem e on premise, permitindo que as organizações mantenham alguns dados on premise enquanto ainda usam recursos em nuvem para obter escalabilidade e funções analíticas avançadas. Apesar de oferecer flexibilidade, essa abordagem gera complexidade na sincronização de dados, na governança e no gerenciamento de uma experiência que seja consistente em todos os ambientes.

Data lakes multinuvem

Os data lakes multinuvem abrangem vários provedores de nuvem, ajudando as organizações a evitar a dependência em relação a um único fornecedor, otimizar os custos usando os melhores serviços de cada provedor e garantir a continuidade dos negócios por meio da redundância. No entanto, as arquiteturas multinuvem exigem planejamento cuidadoso no que diz respeito à interoperabilidade de dados, a políticas de segurança consistentes e ao controle dos custos de transferência de dados entre diferentes provedores de nuvem. Esse modelo também pode tornar mais complexo o processo de introduzir mudanças ou inovações.

Data lake vs. data warehouse vs. data lakehouse

Compreender as diferenças entre essas abordagens de armazenamento de dados é essencial para escolher as soluções certas para os objetivos de sua organização. Vamos comparar data lakes, data warehouses e data lakehouses com base em vários critérios importantes:

Recurso
Data lake
Data warehouse
data lakehouse
Esquema
Schema-on-read
Schema-on-write
Flexível com estrutura opcional
Tipos de dados
Estruturados, semiestruturados, não estruturados
Principalmente estruturados (ocasionalmente semiestruturados)
Todos os tipos com gerenciamento de tabelas
Custo típico de armazenamento
Custo baixo de armazenamento
Custo elevado de armazenamento
Custo moderado
Usuários primários
Cientistas e engenheiros de dados, engenheiros de ML, analistas
Analistas de negócios, executivos, cientistas de dados
Todos os tipos de usuário
Casos de uso
Exploração, ML, funções analíticas avançadas, IA, armazenamento escalável até processamento posterior
Otimizado para consultas e algoritmos específicos
Funções analíticas e relatórios unificados
Desempenho
Variável, dependendo do mecanismo de processamento
Otimizado para consultas
Alto desempenho com governança integrada
Qualidade dos dados
Dados brutos de qualidade variada
Dados depurados e validados
Qualidade imposta com alguma flexibilidade

Mas como isso acontece na prática?

Os data lakes são excelentes para armazenar grandes volumes de dados brutos de forma econômica e oferecem suporte a funções analíticas exploratórias e Machine Learning. Eles são ideais quando você precisa de flexibilidade para trabalhar com diversos tipos de dados e não sabe de antemão como os dados serão usados. Os data lakes também podem armazenar dados que serão inseridos posteriormente em data warehouses.

Os data warehouses são desenvolvidos para business intelligence e geração de relatórios, com esquemas estruturados e otimizados para o desempenho de consultas. Eles são mais adequados para suprir necessidades bem definidas de relatórios e modelagem, onde a consistência e a qualidade dos dados são fundamentais – por exemplo, para uso em funções analíticas preditivas. Na prática, os dados acumulados em data lakes podem até ser processados e transmitidos ou inseridos regularmente em data warehouses, dependendo de como os pipelines de dados estão configurados.

Data lakehouses representam uma arquitetura mais recente, que combina a flexibilidade dos data lakes com os recursos de gerenciamento e desempenho dos data warehouses. Eles permitem que as organizações executem funções analíticas exploratórias e gerem relatórios de negócios na mesma plataforma, reduzindo a duplicação e a complexidade dos dados.

Benefícios dos data lakes

Os benefícios dos data lakes os tornam uma escolha atraente para as organizações e um pilar da moderna arquitetura de dados. As vantagens da arquitetura de data lake incluem:

Flexibilidade: os data lakes aceitam qualquer tipo de dados em qualquer formato, eliminando a necessidade de transformá-los antes do armazenamento ou de lidar com a perda de alguns deles. Ou seja, você pode começar a coletar dados imediatamente, sem a necessidade de extenso planejamento prévio nem de saber como usá-los. A abordagem schema-on-read permite que diferentes equipes usem e interpretem os mesmos dados de várias formas, promovendo a inovação e a descoberta.

Escalabilidade: com os data lakes, o armazenamento pode aumentar de gigabytes para petabytes sem precisar de mudanças arquitetônicas nem migrações, especialmente com as implementações baseadas em nuvem. As organizações podem começar em pequena escala e expandir conforme suas necessidades de dados aumentam.

Eficiência de custos: um dos benefícios dos data lakes é que, neles, o custo de armazenamento do mesmo volume de dados é significativamente menor que o dos data warehouses tradicionais. Desse modo, torna-se economicamente viável reter dados históricos e explorar novas fontes de dados sem ultrapassar os limites orçamentários.

Suporte a funções analíticas avançadas: os data lakes permitem que cientistas de dados e engenheiros de Machine Learning acessem dados brutos para criar e treinar modelos, executar data mining e outras tarefas avançadas. Ao contrário dos dados processados em data warehouses, a ingestão de dados brutos preserva nuances e detalhes que podem ser essenciais para previsões e insights precisos. Os data lakes também dão suporte a funções analíticas em tempo real, ingerindo dados em streaming, o que permite às organizações agir com base em informações atualizadas.

Democratização dos dados: outra vantagem da arquitetura de data lake é que, quando todos os dados organizacionais estão armazenados em um único local acessível, mais pessoas em toda a organização podem descobrir e usar dados, eliminando silos e promovendo a tomada de decisões baseadas em dados em todos os níveis.

Desafios comuns de data lakes

Embora ofereçam enormes benefícios, os data lakes também apresentam desafios que as organizações precisam superar para concretizar todo o potencial desse tipo de arquitetura. Os desafios comuns de data lakes incluem:

Governança complexa de data lakes

A governança de dados torna-se mais complexa quando armazenamos grandes volumes de dados diversos. Sem frameworks de governança adequados, os data lakes podem se transformar em "pântanos de dados" (data swamps) – repositórios nos quais os dados são despejados sem qualquer organização, tornando difícil encontrar, interpretar e confiar neles. Estabelecer uma clara definição de responsabilidades, documentar a linhagem dos dados e gerenciar metadados são práticas essenciais, mas que exigem esforço contínuo e disciplina.

Preocupações com a segurança dos dados

A segurança e o controle de acesso exigem atenção cuidadosa. Os data lakes contêm informações confidenciais de toda a organização. Dessa forma, políticas e ferramentas de segurança robustas são necessárias para garantir que apenas usuários autorizados possam acessar conjuntos de dados específicos e manter trilhas de auditoria. Criptografia, autenticação, controles granulares de acesso e mascaramento de dados desempenham papéis importantes na segurança de ambientes de data lake e na prevenção de problemas de gerenciamento de data lakes.

Qualidade irregular dos dados

A qualidade dos dados não é garantida automaticamente nos data lakes. Como são armazenados tal como estão, dados brutos podem conter erros, duplicidades ou inconsistências. As organizações precisam de processos para validar, depurar e enriquecer tais dados antes que eles sejam usados em funções analíticas. Se não houver a devida atenção à qualidade dos dados, as funções analíticas e os modelos de ML criados com base nos dados de data lakes poderão produzir resultados pouco confiáveis.

Problemas no gerenciamento de data lakes

A complexidade e os requisitos de expertise não devem ser subestimados. Gerenciar um data lake com eficiência requer habilidades em sistemas distribuídos, engenharia de dados, gerenciamento de metadados e vários frameworks de processamento. É possível que as organizações precisem investir em treinamento, contratar talentos especializados ou estabelecer parceria com um provedor de serviços habilitado para criar e manter sua infraestrutura de data lake.

Demora na realização de consultas

Pode ser complicado otimizar o desempenho, especialmente o da realização de consultas interativas em grandes conjuntos de dados. Ao contrário dos data warehouses com esquemas pré-otimizados, os data lakes exigem muito cuidado na organização de dados, nas estratégias de particionamento e na escolha de formatos de arquivo para alcançar desempenho aceitável na execução de consultas. Em suma, como os data lakes podem conter volumes de dados inconcebivelmente vastos, encontrar o que você precisa pode levar tempo.

Exemplos de data lakes e casos de uso práticos

Os exemplos reais do uso de data lakes demonstram como as organizações os usam para enfrentar desafios de negócios e obter vantagens competitivas. Vamos analisar alguns dos casos de uso mais comuns de data lakes.

Caso de uso de data lakes: funções analíticas de IoT para manutenção preditiva

Uma empresa de produção coleta dados de sensores de milhares de máquinas em várias instalações, gerando terabytes de dados de série cronológica diariamente. Ao transmitir esses dados para um data lake, a organização os combina com registros de manutenção, programações de produção e informações de fornecedores. Modelos de Machine Learning analisam padrões históricos para prever falhas em equipamentos antes que ocorram, reduzindo o tempo de inatividade e economizando milhões em custos de reparo. Este caso de uso é viabilizado graças à capacidade do data lake de processar dados de streaming de alta velocidade a partir de diversas fontes.

Caso de uso de data lakes: visão de 360 graus do cliente para marketing personalizado

Uma organização de varejo consolida os dados de clientes em um data lake com base no comportamento de navegação online, histórico de compras, interações em aplicativos móveis, chamadas e chats de atendimento, engajamento em mídias sociais e visitas a lojas físicas. Ao analisar essa visão abrangente de cada cliente, a empresa pode criar segmentos detalhados e personalizar campanhas de marketing, recomendações de produtos e experiências dos clientes, o que pode aumentar a eficácia das campanhas e melhorar significativamente a satisfação dos clientes. Neste exemplo de data lake, a flexibilidade e a capacidade de armazenar tanto dados de transações estruturados quanto registros de interações não estruturados possibilitam essa visão holística do cliente.

Caso de uso de data lakes: modelagem de risco em serviços financeiros

Uma instituição financeira usa um data lake para agregar dados de negociações, feeds de mercado, artigos de notícias, análises de opiniões em mídias sociais e registros regulatórios. Cientistas de dados criam modelos de risco sofisticados que consideram métricas financeiras tradicionais e outras fontes de dados. A abordagem schema-on-read permite que os data lakes explorem várias fontes de dados e técnicas de modelagem sem interromper os sistemas existentes, ajudando-os a obter avaliações de risco mais precisas.

Melhores práticas de data lake

A implementação das seguintes melhores práticas pode ajudar as organizações a maximizar o valor de seus data lakes e a evitar armadilhas comuns:

  1. Priorizar o gerenciamento de metadados desde o primeiro dia. Crie um catálogo de dados abrangente que documente quais dados existem, de onde vieram, o que significam e como se relacionam com outros conjuntos de dados. Parte essencial da gestão de data lakes, metadados bem estruturados os transformam em um recurso pesquisável e compreensível, e não em um caótico depósito de dados.
  2. Garantir a governança do data lake. Implemente frameworks robustos de governança que definam a propriedade dos dados, estabeleçam padrões de qualidade e criem processos claros para ingestão, classificação e gestão do ciclo de vida dos dados. A governança não deve ser tratada como algo secundário. Ela precisa estar incorporada à arquitetura do data lake desde o início para ajudar a manter a confiabilidade dos dados e garantir o compliance com as exigências regulatórias.
  3. Proteger os dados. Desenvolva o data lake com foco na segurança e no compliance, implementando criptografia em repouso e em trânsito, controles de acesso refinados, logs de auditoria e mascaramento de dados quando necessário. Revise regularmente as permissões e os padrões de acesso para garantir que estejam alinhados ao princípio do menor privilégio.
  4. Otimizar o desempenho. Otimize a organização do armazenamento particionando dados de maneira lógica (por data, região ou outras dimensões relevantes), escolhendo formatos de arquivo eficientes para cargas de trabalho analíticas e implementando políticas de ciclo de vida para arquivar ou excluir dados desatualizados. Essas escolhas afetam significativamente o desempenho de consultas e o custo.
  5. Promover uma cultura baseada em dados. Torne os dados facilmente localizáveis e acessíveis, oferecendo treinamento e ferramentas que viabilizem a execução de funções analíticas self-service. Se a sua equipe não tiver a expertise necessária, considere contratar talentos adicionais que possam eliminar a lacuna entre os stakeholders de negócios e a tecnologia, garantindo a gestão otimizada do data lake. A infraestrutura técnica só tem valor se as pessoas realmente a usarem para tomar decisões mais acertadas.

O futuro dos data lakes

A evolução dos data lakes continua à medida que as organizações demandam flexibilidade e governança, levando ao surgimento de arquiteturas de data lakehouse que combinam os melhores aspectos dos data lakes e dos data warehouses. Essa convergência reflete um entendimento crescente de que as organizações precisam de plataformas unificadas que ofereçam suporte a diversas abordagens, em vez de manter sistemas separados para diferentes finalidades.

IA e Machine Learning estão se tornando cada vez mais centrais para as estratégias de data lake. Os data lakes modernos não são meros repositórios de armazenamento, mas sim plataformas centrais nas quais os modelos de IA são treinados com o uso de dados históricos, fazem previsões usando dados em streaming e são aprimorados continuamente por meio de loops de feedback. A integração com plataformas de IA e recursos automatizados de ML está se tornando o padrão, e não a exceção.

Conforme as organizações reconhecem o valor de agir com base em dados atualizados, as funções analíticas em streaming e em tempo real continuam ganhando destaque. Como resultado, os data lakes estão evoluindo para dar suporte ao processamento e às consultas de dados em frações de segundo, tornando tênue a linha entre análises históricas e operações em tempo real.

Por fim, à medida que as regulamentações de privacidade de dados se expandem e mudam em todo o mundo, os data lakes devem evoluir para oferecer suporte à privacidade e proteção de dados desde a concepção, com recursos como classificação automática de dados, gestão de consentimento e relatórios de compliance simplificados integrados à plataforma, em vez de adicionados posteriormente.

O futuro dos data lakes reside na flexibilidade, acessibilidade e automação: recursos que capacitam as organizações a gerenciar os crescentes volumes de dados com mais facilidade, mantendo a segurança, a qualidade e a governança. Os data lakes devem ser vistos como um ativo estratégico que exige atenção e investimento contínuos.

Perguntas frequentes

Por que o nome "data lake"?
O termo "data lake" (lago de dados) usa uma metáfora natural. Assim como muitos cursos de água fluem para um único lago, dados de várias fontes fluem para um repositório centralizado. Como um lago que armazena água em seu estado natural, em vez de filtrada e purificada, um data lake armazena dados em seu formato nativo, sem exigir transformação nem estruturação. A metáfora enfatiza a capacidade do lago de manter grandes volumes de diversos dados em seu estado "natural" e de ser usado para vários fins, assim como a água de um lago serve a inúmeros usos. Em comparação, um data warehouse teria água filtrada, engarrafada e rotulada, possivelmente até organizada por tamanho de garrafa ou equilíbrio de pH.
O que é data warehouse e qual a diferença entre esse tipo de repositório e um data lake?
Data warehouse é um repositório estruturado, enquanto data lake é uma abordagem de armazenamento que permite a ingestão e o armazenamento de todos os tipos de dados, estruturados ou não. A principal diferença entre data lakes e data warehouses está na abordagem: data warehouses usam schema-on-write (os dados devem ser estruturados antes do armazenamento), enquanto data lakes usam schema-on-read (a estrutura é aplicada quando os dados são acessados). Data warehouses são otimizados para necessidades conhecidas de relatórios e consultas, enquanto os data lakes suportam análises exploratórias e Machine Learning em dados brutos. Pense nos data warehouses como repositórios especializados em responder rapidamente a perguntas de negócios específicas, enquanto os data lakes são criados para flexibilidade, capacidade e descoberta de novas perguntas a serem feitas.
O que é gerenciamento de dados em um data lake?
O gerenciamento de dados em um data lake abrange várias atividades essenciais. A catalogação e o gerenciamento de metadados garantem que os usuários possam encontrar e compreender os conjuntos de dados disponíveis. A governança estabelece políticas em relação à propriedade dos dados, aos padrões de qualidade e aos controles de acesso. O gerenciamento de acesso e o rastreamento de linhagem mostram quem acessou quais dados e como eles foram transformados ou usados. As políticas de ciclo de vida e retenção determinam por quanto tempo os dados são mantidos e quando devem ser arquivados ou excluídos. O gerenciamento eficaz de data lakes impede que se tornem "pântanos de dados" desorganizados e reduz problemas de administração.
O que é data lakehouse?
Data lakehouse é uma arquitetura moderna que combina a flexibilidade e a boa relação custo-benefício dos data lakes com a estrutura e o desempenho dos data warehouses. Lakehouses permitem que as organizações armazenem dados brutos em seu formato nativo (como os data lakes), ao mesmo tempo que suportam estruturas semelhantes a tabelas, aplicação de esquemas e otimização do desempenho de consultas (como os data warehouses). Essa abordagem unificada elimina a necessidade de duplicar dados entre sistemas separados de data lake e data warehouse, simplificando a arquitetura e reduzindo custos, ao mesmo tempo que oferece suporte à execução de funções analíticas exploratórias e à geração de relatórios de negócios na mesma plataforma.
O que é multinuvem para data lakes?
Um data lake multinuvem abrange dois ou mais provedores de nuvem. As organizações adotam estratégias multinuvem para evitar a dependência em relação a um único fornecedor, otimizar os custos aproveitando os melhores serviços de cada provedor, garantir a continuidade dos negócios por meio de redundância e atender aos requisitos de residência de dados em diferentes regiões. No entanto, as arquiteturas multinuvem apresentam desafios em termos de interoperabilidade de dados, manutenção de políticas de segurança consistentes e controle dos custos de transferência de dados entre diferentes nuvens.
O que é armazenamento de objetos em data lakes?
O armazenamento de objetos é a camada fundamental responsável por manter os dados em um data lake. Diferentemente dos sistemas de arquivos, que organizam os dados em pastas hierárquicas, o armazenamento de objetos guarda os dados como objetos individuais, cada um com identificadores únicos, metadados e os dados propriamente ditos. Por ser altamente escalável e econômico, o armazenamento de objetos é ideal para acomodar grandes volumes de dados em formatos nativos.