Quando falamos em Data Cloud Platform – Plataforma de Dados na Nuvem – Snowflake é, certamente, um dos nomes mais lembrados e isso não é à toa!

A Snowflake vem revolucionando a forma de como gerenciar dados de forma simples, rápida, segura e barata, transformando definitivamente a forma como as empresas armazenam, acessam e analisam seus dados. Mas, quanto custa essa revolução?

Neste artigo, desvendamos os segredos por trás dos custos de implementação do Snowflake te explicando o que você deve comparar em relação a outras ferramentas.

Quando alguém me diz “é caro”, a minha pergunta imediata é “relativo a quê?”

Como você compara o custo de ambas as soluções?

Deixe-me mostrar como você pode calcular o custo total do Snowflake em comparação com outras soluções.

Em primeiro lugar, o Snowflake é uma plataforma de nuvem de dados (multicloud), também conhecida como The Data Cloud, e não é um conjunto de ferramentas como outros produtos. Isso significa que o Snowflake cobre o custo de muitas áreas da solução que você está implantando, dessa fora, você terá apenas uma fatura em comparação com várias faturas. Em segundo lugar, o Snowflake é SaaS, ou serviço gerenciado em que muitas funções são realizadas pelo Snowflake e, em terceiro lugar, o custo do Snowflake é baseado no pagamento por consumo, ou seja, você paga pelo que usa. Isso é único no mercado e revolucionário e, por isso, você deve considerar muitos aspectos do custo associado à solução que está comparando.

Observe a arquitetura Snowflake a seguir, ela mostra o que está incluído como parte de um único serviço.

Custo-Snowflake-arquitetura-triggo.ai
Arquitetura interna do Snowflake

Para fazer o Custo Total de Propriedade (TCO) e comparar o custo com outros produtos de fornecedores, você pode usar a tabela a seguir.

Veja cada seção em detalhes sobre o que o Snowflake tem a oferecer e o que você precisa descobrir em outras soluções.

Custo-Snowflake-tabela-triggo.ai
Modelo de TCO

Custo de Armazenamento

Quando você carrega dados no Snowflake, ele os compacta automaticamente e cobra apenas pelo que foi compactado, e não o tamanho real dos dados originais. E o Snowflake usa um algoritmo de compressão patenteado altamente eficiente. Por exemplo, se você tiver dados no formato CSV e seu tamanho for 12 TB, provavelmente os dados compactados terão cerca de 2 TB e você será cobrado por 2 TB por mês. Isso representa uma economia de 6x no custo de armazenamento. Da mesma forma, se você tiver dados no formato Parquet, eles podem ser compactados de 1,2 a 2x, embora o próprio formato parquet seja um formato compactado. Além disso, o Snowflake também incluiu o custo S3 PUT/GET para ler e gravar Data Bucket em nuvem.

Em sua solução, você deve considerar o custo de armazenamento e outros custos de serviço, como PUT/GET, que são difíceis de descobrir sem implantar uma solução.

Custo de Cálculo

O custo do Snowflake é baseado em quanto tempo o warehouse está funcionando e a plataforma conta com um recurso que permite suspender automaticamente o warehouse quando não está sendo usado, ou seja, enquanto nenhuma consulta está sendo executada. Em contrapartida, há a retomada automática de cobrança apenas quando um usuário começa a executar a carga de trabalho. Isso significa que o Snowflake inicia automaticamente em alguns segundos e pode escalar automaticamente, horizontalmente para simultaneidade (Multi Cluster Warehouse) e tem a capacidade de escalar verticalmente (Query Acceleration Service), dependendo da carga de trabalho.

O Snowflake também pode executar SQL, Java, Python e Scala sem a necessidade de ser ter clusters de warehouse separados, isso quer dizer que não é necessário executar vários clusters 24 horas por dia, 7 dias por semana para cada carga de trabalho.

Outro ponto de destaque importante é que o Snowflake Warehouse cobra por segundo após o primeiro minuto, o que oferece uma enorme oportunidade de economizar custos, já que muitas soluções cobram por hora.

A equipe da Snowflake Engineering está inovando continuamente para otimizar a carga de trabalho. Em 2022, implementou o Warehouse Scheduling Services, que reduz o tempo de consulta para todos os clientes sem alterar uma única linha de código e, como resultado, os clientes da Snowflake conseguem ter uma maior economia ao longo do tempo.

Custo de software e/ou outro serviço de nuvem

O Snowflake não cobra nenhum custo por diversas funções que você executa no dia a dia, o que pode não ser verdade caso você opte por outras soluções.

Veja alguns exemplos:

  • O Snowflake não cobra nenhum custo (em muitos casos) para consultas DDLs (CREATE/DROP etc), comandos SHOW e consultas do cache de resultados. Portanto, se um warehouse estiver suspenso, ele não será ativado caso você execute esses comandos. A Snowflake cobra qualquer coisa acima de 10% do custo de uso do warehouse diariamente, ou seja, se o uso do seu warehouse for de 100 créditos por dia, desde que você use menos de 10 créditos para a função de serviços em nuvem mencionada acima, você não receberá nenhuma cobrança. Aproximadamente, 90% dos clientes da Snowflake se enquadram nessa categoria;
  • Se você quiser usar recursos sem servidor no Snowflake, como Clustering Automático, Snowpipe, Serviço de Aceleração de Consulta, Visualização Materializada, etc, há um custo adicional para usar esse serviço.

Você deve verificar com o seu outro fornecedor quais outros serviços ou custos estão associados ao uso de seus produtos para implementar soluções. Por exemplo, o nó mestre precisa ser executado 24 horas por dia, 7 dias por semana?

Custo de continuidade de negócios

Para qualquer solução que você está implantando, é importante considerar a continuidade dos negócios e o SLA para o serviço que está sendo contratado. Pense sempre em Alta Disponibilidade e Recuperação de Desastres.

Alta disponibilidade

O Snowflake fornece uma solução pronta para uso e para alta disponibilidade, portanto, não há nenhum custo adicional associado a isso. No diagrama abaixo você poderá observar que, se deseja implantar uma solução desse tipo, tem que considerar o custo de engenharia para criar tal serviço e o custo operacional para mantê-lo, além de outras cobranças, como custo de saída e esforços de teste para garantir que essa solução funcione. Em muitos casos, você precisará de um produto de terceiros para automatizar o failover e isso aumenta o custo da solução. Novamente, com Snowflake, é custo zero e fornece 99,99% SLA.

Custo-Snowflake-imagem-alta-disponibilidade-triggo.ai
Alta disponibilidade com Snowflake

Recuperação de desastres

Existem alguns casos de uso em que você precisa replicar dados. São eles:

  1. Recuperação de desastres;
  2. Migração na nuvem (de um CSP para outro);
  3. Fornecer uma melhor latência para o usuário final localizado em uma região diferente.

No Snowflake, configurar a replicação de dados/contas é extremamente fácil (bastam alguns comandos) e você pode definir o RTO e o RPO com base em suas necessidades. Snowflake suporta até 1 min de RPO.

Custo-Snowflake-replicacao-triggo.ai
Replicação de contas e dados no Snowflake

Existem três custos associados à configuração do DR no Snowflake:

  1. Custo de armazenamento dos dados que são replicados em outra região;
  2. Custo de saída e custo de passagem do CSP subjacente;
  3. Custos do serviço de nuvem (replicação) para enviar dados do database/conta primário para o secundário.

O Snowflake também oferece redirecionamento de cliente, isso significa que, quando o site principal estiver inativo, é possível fazer alterações para que todos os clientes sejam redirecionados para um local secundário. Você tem controle total sobre isso.

Em outras soluções, para configurar o DR, pode ser necessário outras ferramentas de terceiros e integração/configuração/teste para garantir que funcione. É importante descobrir o custo associado a este processo. Você provavelmente terá os mesmos três tipos de custo do Snowflake, mas poderá precisar de softwares ou serviços adicionais para configurar o processo de recuperação de desastres.

Custo de gerenciamento

Agora, observe outros custos indiretos que você precisa considerar como parte da implantação de qualquer solução:

Setup

Snowflake é um serviço no qual você pode configurar rapidamente uma conta on-line. Depois de obter a credencial, você pode configurar facilmente um processo para carregar dados e consultá-los. Não há um custo alto para começar e, o mais importante, você pode entrar no mercado mais rapidamente com o Snowflake.

Segurança

O Snowflake, por padrão, criptografa os dados em três camadas para torná-los mais seguros e isso ocorre em três níveis. Primeiro, ele criptografa os arquivos (aqueles arquivos compactados) usando uma chave da tabela, depois criptografa a tabela usando uma chave da conta e a conta é criptografada com uma chave chamada Root Key.

Se você tiver que fazer uma criptografia semelhante em uma outra plataforma, há um enorme trabalho de engenharia para gerenciar a chave e alterná-la para conformidade com a segurança. Como alternativa, você teria de comprar alguma solução de terceiros e integrá-la à sua conta na nuvem. Descubra o custo para fazê-lo!

Outra coisa para levar em conta é que você precisa garantir que a segurança do data lake seja mantida bloqueando a política do IAM. Em muitas empresas, existe toda uma equipe responsável por gerenciar a política de segurança de quem terá acesso a esses dados e, muitas vezes, isso é um obstáculo para a democratização dos dados. Mas as operações de segurança precisam fazer seu trabalho! As empresas precisam contratar pessoas altamente qualificadas para gerenciar essa segurança e fornecer acesso ao usuário apropriado, e isso tem um custo.

Risco reduzido de extração de dados/roubo de dados PII

Com o CSP Storage, os clientes gerenciam o acesso com base em estruturas de pastas e nomes de arquivos e podem cometer erros. Com o Snowflake, os arquivos gerenciados internamente e expostos apenas como tabelas que são mais fáceis de gerenciar. O Snowflake possui uma pilha de recursos de governança para reduzir os riscos de usuários internos acessarem dados confidenciais.

Existem muitos outros procedimentos, como segurança física, controles de segurança, teste de penetração, teste de vulnerabilidade e monitoramento em vigor no Snowflake Cloud Operation que garantem um ambiente seguro e protegido. E isso está incluso como parte dos serviços quando você usa o warehouse.

Para sua segurança, você receberá um relatório SOC 1/2, PCI, HIPPA e muitos outros, preenchendo um ticket de suporte que o ajudará na conformidade, sem nenhum custo extra, para o ajudar a reduzir o risco para a empresa.

Administração

Com o Snowflake a administração é quase zero, e isso significa que não há nenhum software adicional para você instalar ou atualizar. Quando você cria um warehouse, ele tem tudo o que é necessário para executar a carga de trabalho. Você não tem acesso ao warehouse, como tem em uma VM, portanto não há necessidade de se preocupar com configurações no warehouse.

Tradicionalmente, o backup era feito pelos seguintes motivos:

  1. Poder recuperar dados corrompidos;
  2. Poder recuperar dados em casos de erros do usuário;
  3. Para fins de conformidade.

Com o Snowflake, talvez você não veja necessidade de realizar backups. Entenda:

  1. O Snowflake passa durabilidade de dados de 11–9s do CSP para você;
  2. A plataforma fornece um time travel de até 90 +7 dias à prova de falhas, isso pode ajudá-lo a recuperar dados voltando no tempo para mitigar erros do usuário;
  3. No quesito conformidade, os dados no Snowflake não são expurgados automaticamente, portanto, você pode mantê-los lá por muito tempo com base em sua programação.

DevOps e CI/CD

O DevOps é extremamente fácil usando comandos Zero Copy Clone e SWAP para trazer o ambiente de teste/QA para produção e vice-versa. Isso é inovador e torna a organização mais ágil e produtiva.

Outras atividades administrativas

Pode ser necessário configurar o SSO com Snowflake, o SCIM para o usuário e gerenciar funções. Fique tranquilo: a plataforma possui instruções passo a passo que podem ser executadas facilmente.

Talvez você precise de uma pessoa para a administração do Snowflake, mas, em muitos casos, alguém com meio período de atividades dedicadas a essa administração seja suficiente. Para outras soluções, você precisaria gerenciar o cluster, software, versão, linguagens de programação que funcionem para o cluster, dependências e assim por diante. Para fazer um comparativo real, você precisa encontrar o custo associado a essas atividades. Você também deve descobrir o processo DevOps e a ferramenta necessária para usar e contratar pessoas para gerenciar esse aspecto.

Outro custo que é preciso levar em conta é o de duplicação de dados no ambiente de Teste/QA e seu esforço. Como você gerenciará usuários e funções para autenticação e autorização? Quão fácil será configurar isso ou você precisará de serviços especializados de uma consultoria?

Talvez você esteja ponderando que a maioria das grandes empresas já possui processos (Infraestrutura como código usando Terraform etc.) para lidar com isso, o que é justo. Mas as empresas maiores têm uma carga de trabalho maior para gerenciar e a segurança é muito mais importante. As atualizações nunca acontecem a tempo e o ambiente se torna vulnerável. É comum que muitas empresas estejam rodando em versões mais antigas da pilha OSS e acabam tendo falhas de segurança. Considere que sempre há custos e riscos adicionais que, muitas vezes, são negligenciados.

Custo de saída

Como você sabe, a maior parte da carga de trabalho está na nuvem ou será movida para a nuvem. Mas os usuários finais não estarão na nuvem. E eles podem executar relatórios, painéis e análises usando ferramentas como Tableau, PowerBI etc. nos mais diversos ambientes de trabalho remoto ou no escritório. O Snowflake não cobra por nenhum custo de saída proveniente do driver, como o driver ODBC/JDBC. Isso que dizer que, se eles estiverem executando relatórios para baixar dados usando ferramentas que usam ODBC/JDBC, não haverá custo de saída para obter dados do Snowflake Cloud.

Marketplace e compartilhamento de dados

Muitas vezes, você precisa usar dados de terceiros para fornecer mais análises e aprendizado de máquina. Uma das vantagens do Snowflake Marketplace é que você obtém dados, como um “database” pronto para uso e nenhum trabalho adicional de Engenharia de Dados é necessário.

Em outras soluções, normalmente é necessário um esforço extra para definir esse processo e a equipe de operação precisa manter um serviço de monitoria para garantir que não haja interrupções. Com o Snowflake, não há nenhum custo associado ao pipeline de dados.

Outros custos

Manter um ambiente adequado para um Cientista de Dados pode ser muito caro. Vimos profissionais utilizando laptops muito caros (em torno de US$ 5.000 a US$ 7.000) devido à necessidade de alta memória para a carga de trabalho que precisam processar. Se você tiver 10 cientistas de dados, custaria mais de $ 50k a cada três anos, considerando a necessidade de atualização dos equipamentos.

No Snowflake, com Snowpark, não há a necessidade de uso de equipamentos tão caros, já que o Snowpark pushdown computa para o warehouse e este processa os dados.

Conclusão

Para fazer uma comparação real de custos com várias soluções, você deve examinar muitos outros gastos ocultos e não apenas os associados à tecnologia. Se a solução for open source, você também deve descobrir quanto essa solução custará quando for para produção, analisar todas as questões de segurança e como os riscos de problemas podem ser mitigados.

Na hora de comparar as soluções, faça todas as análises com muito cuidado e critério. Hoje, o Snowflake é uma solução altamente econômica que oferece baixo TCO e maior ROI no mercado.

Além disso, o plataforma faz melhorias contínuas nos serviços para otimizar a carga de trabalho e reduzir o custo automaticamente. Como resultado, aqueles que usam Snowflake trazem cada vez mais dados para a plataforma, pois entendem que assim conseguem fornecer um valor enorme para seus usuários de negócios.

Nós, aqui da triggo.ai, somos parceiros Snowflake no Brasil e oferecemos serviços especializados para você construir uma Modern Data Stack que realmente acelera a estratégia Data Driven da sua organização, reduzindo custos.

Entre em contato com a gente e veja como podemos te ajudar nesta jornada!