Na época em que Jeff Bezos – CEO da Amazon – respondia a encomendas na sua garagem e carregava ele mesmo as embalagens até aos correios, o controlo de inventário e a previsão da procura eram relativamente simples. 25 anos depois, o negócio de distribuição da Amazon conta com mais de 175 centros de atendimento em todo o mundo e mais de 250 mil colaboradores que enviam milhões de produtos por dia.
A equipa mundial de operações financeiras da Amazon tem a tarefa de seguir todos os dados, à escala de petabytes. Na Amazon, uma métrica mal calculada, seja o custo por unidade ou o atraso de dados, pode custar milhões de dólares. A equipa está constantemente à procura de obter dados mais precisos o mais rápido possível.
É por isso que em 2019 se construiu um data lake – um repositório centralizado seguro, que permite armazenar, gerir, descobrir e partilhar todos os dados estruturados e não estruturados em qualquer escala. Este data lake consegue suportar uma das maiores redes de logística do planeta. Tem o nome de Galaxy Data Lake e recebe dados de todos as equipas da empresa. É construído no Amazon Simple Storage Service (Amazon S3), um serviço de armazenamento de objetos que oferece acessibilidade, durabilidade e escalabilidade. O Galaxy combina ativos de metade dos vários serviços, incluindo Amazon Redshift, RDS e o catálogo de dados do AWS Glue, numa camada de catálogo unificada criada sobre o Amazon DynamoDB, um banco de dados de valores e documentos importantes.
Os desafios do Big Data
Os desafios que a Amazon enfrentou com o Big Data são semelhantes aos desafios de muitas outras empresas: silos de dados, dificuldade em analisar vários conjuntos de dados, controlo e segurança sobre eles e incorporação de machine learning. Mas vou explicar mais detalhadamente esses desafios e demonstrar como um data lake ajuda a resolvê-los.
Desconstruir silos de dados – uma das principais razões pelas quais as empresas optam por criar data lakes é a desconstrução dos silos de dados. Ter conjuntos de dados em locais diferentes, controlados por grupos diferentes, acaba por escondê-los. Isso normalmente acontece quando uma empresa cresce rapidamente ou adquire novos negócios. Um data lake resolve o problema, ao unir todos os dados numa só localização central. As várias equipas podem continuar a funcionar como unidades ágeis, mas tudo regressa ao data lake para análise.
Analisar vários conjuntos de dados – outro desafio da utilização de diferentes sistemas e abordagens na gestão de dados é que a estrutura de dados e informação varia. Se quiser combinar toda essa informação numa base de dados sem um data lake será necessário muito esforço na preparação e exportação de dados, transformação e carregamento. Os data lakes permitem importar qualquer quantidade de dados em qualquer formato, porque não existe um esquema predefinido. Pode até incluir dados em tempo real. É possível recolher dados de várias fontes e passá-los para o data lake, no seu formato original, além de criar links entre informações que podem ser etiquetadas de maneira diferente, mas que representam a mesma coisa.
Gerir acesso a dados – com os dados armazenados em vários lugares, é difícil aceder simultaneamente a todos eles e vinculá-los a ferramentas externas para análise. No nosso caso, os dados financeiros das operações estão espalhados por mais de 25 bases de dados, com equipas regionais a criarem a sua própria versão local. São mais de 25 credenciais de gestão de acesso para algumas pessoas. Muitas bases de dados exigem suporte para gerir o acesso em ações como modificar perfis ou redefinir palavras-passe. Com um data lake, é mais fácil obter os dados certos para as pessoas certas, na hora certa. Em vez de gerir o acesso a todos as diferentes localizações onde os dados são armazenados, só é necessário preocupar-se com um conjunto de credenciais. Na verdade, os data lakes têm controlos que permitem que os utilizadores autorizados visualizem, acedam, processem e modifiquem ativos específicos. Ajudam a garantir que as pessoas não autorizadas não possam executar ações que comprometam a confidencialidade e segurança dos dados.
Com um data lake, os dados são armazenados em formato aberto, o que facilita trabalhar com diferentes serviços analíticos O formato aberto permite mais facilmente que os dados sejam compatíveis com ferramentas que ainda não existam. Várias funções dentro da empresa, como cientistas de dados, engenheiros, developers e business analytics podem assim aceder aos dados, utilizando ferramentas ou frameworks da sua preferência. Em 2019, a AWS lançou o serviço AWS Lake Formation, que otimiza o processo de criação do data lake e constrói um data lake seguro num espaço de dias.
Acelerar o machine learning – um data lake é um forte suporte de base para machine learning e inteligência artificial, porque ambos recorrem a grandes e diversas bases de dados. O machine learning utiliza algoritmos estatísticos que aprendem com dados existentes (treino) e que tomam decisões sobre nova informação (inferência). No treino, padrões e correlações nos dados são identificados para criar um modelo. Esse modelo permite tomar decisões inteligentes sobre dados com que estamos a trabalhar pela primeira vez. Quanto mais dados tivermos, melhor treinamos os modelos de machine learning, resultando numa precisão melhorada. Ao passar toda a informação para o data lake, as operações das equipas podem combinar conjuntos de dados para treinar e implantar modelos mais precisos. O treino de modelos de machine learning com dados mais relevantes aumenta a precisão de previsão, além de libertar os colaboradores para outros projetos mais estratégicos.
Para concluir, ao armazenar dados num repositório unificado em formato de dados abertos baseados em padrões, os data lakes permitem desconstruir silos de dados, usar uma variedade de serviços analíticos para obter o máximo de insights e aumentar rentável e eficientemente as necessidades de armazenamento e processamento de dados ao longo do tempo.