Indo além de um Data Lakehouse

6 min. de leitura

A forma como as coisas recebem nomes neste setor pode ser bem peculiar. Muita gente tem ouvido falar de como é incrível um "data lakehouse", já que combina o poder de um data lake com o de um data warehouse . Quando penso em um lakehouse, penso em um ótimo lugar para pescar e tomar umas cervejas. Certamente não penso em um lugar para fazer minhas análises.

Essa é uma das razões pelas quais a Vertica® optou por se autodenominar uma “plataforma unificada de análise”. Além disso, nosso objetivo sempre foi unificar diferentes maneiras de realizar análises, diferentes equipes de analistas e diferentes arquiteturas, portanto, “análise unificada” se alinha melhor aos nossos objetivos. Ademais, acreditamos que o foco está na análise, e não em onde você armazena seus dados. Isso significa que a Vertica não funcionará como um data lake? Não, certamente funcionará.

A Vertica é um data lakehouse, mas vamos muito além dos requisitos básicos de um data lakehouse , oferecendo mais do que as empresas que usam o termo. Vamos começar analisando a definição de data lakehouse de outra pessoa para mostrar que a Vertica atende a todos esses critérios.

Após cada seção, procure um suplemento " Além disso " que explique como o Vertica se baseia nos fundamentos básicos. Onde se define o conceito de data lakehouse?

Existem muitas definições na internet, mas vamos usar a definição da Databricks.

 

Armazém de dados tradicional

Para maior eficiência, vamos agrupar as funcionalidades em funcionalidades de data warehouse e funcionalidades de data lake , e usar suas definições palavra por palavra .

Suporte a transações: Em um ambiente de data lake corporativo, muitos pipelines de dados frequentemente leem e gravam dados simultaneamente. O suporte a transações ACID garante a consistência, visto que várias partes leem ou gravam dados simultaneamente, geralmente usando SQL.

Aplicação e governança de esquemas: O Lakehouse deve ter um mecanismo para suportar a aplicação e a evolução de esquemas, incluindo arquiteturas de esquemas de data warehouse, como esquemas em estrela/floco de neve. O sistema deve ser capaz de avaliar a integridade dos dados e possuir mecanismos robustos de governança e auditoria.

Embora essas funcionalidades possam parecer novas, interessantes e de ponta para um fornecedor com experiência em data lakes, para a Vertica, elas são essenciais. A Vertica possui total conformidade com ACID e forte consistência desde o seu início. Consistência eventual sempre foi um termo pejorativo para nós. Se você consultar a Vertica duas vezes com os mesmos dados, você OBTERÁ a mesma resposta. Integridade de dados, governança e auditoria também são fundamentais para nós, não uma meta a ser alcançada. Inteligência de negócios de alto desempenho em escala praticamente ilimitada tem sido o nosso ganha-pão por anos.

 

Imagem de ACID.

Além disso: o Vertica integra-se com praticamente todas as ferramentas de BI e visualização de dados disponíveis no mercado. Nosso objetivo é nunca limitar suas análises.

 

Lago de dados tradicional

Certo, então, e quanto às funcionalidades que tradicionalmente fazem parte de um data lake, como:

O armazenamento é desacoplado do processamento: na prática, isso significa que o armazenamento e o processamento usam clusters separados, permitindo que esses sistemas sejam dimensionados para um número muito maior de usuários simultâneos e volumes de dados maiores. Alguns data warehouses modernos também possuem essa característica.

O Eon Mode, a arquitetura de computação e armazenamento separados da Vertica, tornou-se parte da Vertica há alguns anos. Ele possui a capacidade exclusiva de oferecer todas as vantagens dessa arquitetura elástica nativa da nuvem, independentemente da infraestrutura, em qualquer nuvem e até mesmo em ambientes locais. O Vertica Accelerator, nosso serviço gerenciado, também foi lançado recentemente e é baseado nessa arquitetura.

Além disso: quando a Vertica fala em usuários simultâneos, estamos nos referindo a muito mais do que apenas dez. Os clientes da Vertica geralmente têm centenas, ou até milhares, de usuários acessando os dados para embasar suas decisões de trabalho todos os dias.

Suporte para diversas cargas de trabalho: incluindo ciência de dados, aprendizado de máquina, SQL e análise. Várias ferramentas podem ser necessárias para dar suporte a todas essas cargas de trabalho, mas todas dependem do mesmo repositório de dados.

Como mencionado anteriormente, o Vertica sempre foi conhecido por sua BI extremamente rápida. Além disso, o Vertica não apenas suporta todo o fluxo de trabalho de ciência de dados de ponta a ponta, como também torna muito mais fácil e rápido implantar modelos de aprendizado de máquina, da prova de conceito à produção, do que qualquer outra plataforma. E tudo isso sem exigir que você compre um monte de outras ferramentas ou um pacote caro. Todas as funções de ciência de dados do Vertica são criadas para funcionar no banco de dados, com a tecnologia do nosso mecanismo. Elas são projetadas para escalar, executar em paralelo e rodar incrivelmente rápido. Tudo isso faz parte da Plataforma Unificada de Análise do Vertica. E se você quiser adicionar as suas próprias, fique à vontade para criar um algoritmo ou função e inseri-lo em nossa estrutura UDx para extensibilidade praticamente infinita.

Além disso: além de BI e aprendizado de máquina, o Vertica também oferece suporte a muitos outros recursos importantes de análise avançada, como análise geoespacial, correspondência de padrões de eventos, análise de séries temporais e análise de texto.

Suporte para diversos tipos de dados, desde dados não estruturados até dados estruturados: O Lakehouse pode ser usado para armazenar, refinar, analisar e acessar tipos de dados necessários para muitas novas aplicações de dados, incluindo imagens, vídeo, áudio, dados semiestruturados e texto.

Os data lakes residem em um sistema de armazenamento de objetos, como o S3, ou no Hadoop File System (HDFS). A vantagem desses sistemas é a capacidade de armazenar uma grande variedade de dados, desde o formato altamente estruturado que o Vertica utiliza, o ROS (Read Optimized Storage), até outros formatos colunares como Parquet e ORC, passando por formatos semiestruturados como JSON, Avro, CSV, arquivos de log, etc., até dados completamente não estruturados como imagens e vídeos. O Vertica não analisa áudio, imagens ou vídeos não estruturados, mas consegue consultar, treinar um modelo de aprendizado de máquina, combinar, etc., todos os outros tipos de dados dessa lista . Nossos dados ficam armazenados em um sistema de armazenamento de objetos, lado a lado com os de todos os outros, e nós os analisamos por completo.

 

Imagem de diversos tipos de dados.

 

Além disso, o Vertica funciona como um mecanismo de consulta, analisando os dados onde eles estão armazenados, em vez de exigir uma importação/conversão para o nosso formato antes da análise, ao contrário de muitas outras tecnologias. Não pedimos que você insira todos os seus dados em nosso produto primeiro para depois analisá-los. Trabalhamos onde quer que seus dados estejam atualmente. O Vertica possui até mesmo uma função integrada muito útil chamada INFER_EXTERNAL_TABLE_DDL, que analisa um arquivo como o Parquet e determina automaticamente sua estrutura, para que você possa usar essas informações para analisar os dados.

Abertura: Os formatos de armazenamento que utilizam são abertos e padronizados, como o Parquet, e fornecem uma API para que diversas ferramentas e mecanismos, incluindo aprendizado de máquina e bibliotecas Python/R, possam acessar os dados de forma eficiente e direta.

O Vertica oferece suporte nativo a SQL e Python, com suporte de código aberto para diversas bibliotecas e tipos de arquivo, como Parquet, ORC, JSON, Avro, CSV, etc., e, como mencionado anteriormente, suporte bidirecional e rápido para Spark. Embora nosso formato de armazenamento interno seja proprietário, também oferecemos suporte à troca aberta de modelos de aprendizado de máquina via PMML, uma linguagem de marcação projetada especificamente para o compartilhamento de modelos. Além disso, importamos grafos do TensorFlow, entre outros.

Além disso: como você pode usar qualquer uma das mais de 650 funções do Vertica via SQL, R ou Python, é possível capacitar o cientista de dados cidadão, proficiente em SQL e familiarizado com seus dados e caso de uso, a utilizar algoritmos preditivos. Da mesma forma, o especialista em ciência de dados que se sente confortável com Jupyter e Python nunca precisa sair desse ambiente para realizar tarefas simples, como analisar as vendas agregadas por região.

Transmissão de ponta a ponta: Relatórios em tempo real são a norma em muitas empresas. O suporte para transmissão elimina a necessidade de sistemas separados dedicados a fornecer aplicativos de dados em tempo real.

A Vertica é tanto consumidora quanto produtora de tópicos do Apache Kafka, e muitos de nossos clientes utilizam tecnologias de streaming semelhantes, como Amazon Kinesis e Apache Pulsar. A Vertica oferece suporte completo a streaming de dados com recursos integrados de correspondência de padrões de eventos, janelas, média móvel e outras funcionalidades relacionadas à IoT e streaming. Os clientes da Vertica frequentemente têm requisitos de tempo de resposta na ordem de centenas de milissegundos, e nós os atendemos diariamente.

Além disso: quando mencionei anteriormente que trabalhamos com alta concorrência em diversas cargas de trabalho, isso inclui a ingestão e transformação constantes de dados de fluxo contínuo. Podemos fazer isso, treinar um algoritmo de aprendizado de máquina, alimentar seus painéis, otimizar seus aplicativos e ainda responder a quaisquer consultas ad hoc que você possa ter. Tudo ao mesmo tempo.

Imagem de diversos subgrupos de isolamento de carga de trabalho.

 

Outro aspecto que não é mencionado nos requisitos para um data lakehouse , e que o Vertica faz de forma um pouco diferente da maioria das outras tecnologias neste segmento, é o seu licenciamento. Os clusters de desenvolvimento, teste e alta disponibilidade são iguais aos de produção no Vertica, pois cobramos apenas pela produção. O restante está incluído. Nossos recursos de aprendizado de máquina e análise avançada são rápidos e fáceis de usar, pois estão inclusos em todas as versões. Não nos surpreende que sua empresa queira realizar tanto BI quanto ciência de dados; isso é algo comum nos negócios atualmente. Também não nos surpreende que você queira um ambiente de desenvolvimento, além de testes, recuperação de desastres e produção. Para nós, esses não são complementos extras ou inovações de ponta; são simplesmente parte integrante de uma boa plataforma de análise.

 

O Vertica permite que você vá além de um data lake e alcance uma análise verdadeiramente unificada.

Conteúdo relacionado

Rocket® Vertica®

Analise grandes volumes de dados empresariais em tempo real com um banco de dados analítico de alto desempenho, desenvolvido para IA, escalabilidade e flexibilidade.