Considerações sobre dimensionamento e custos do Openflow

O Snowflake Openflow tem considerações de custo em diversas áreas, incluindo infraestrutura, computação, ingestão de dados e outras. Escalar o Openflow envolve entender esses custos. As seções a seguir descrevem os custos do Openflow em geral e fornecem diversos exemplos de escalabilidade de tempos de execução do Openflow e custos associados.

Custos do Openflow

Ao usar o Openflow, você pode incorrer nos seguintes tipos de custos:

Categoria de custo

Descrição

Openflow (mostrado como “Openflow Compute BYOC” em sua fatura do Snowflake)

Custo baseado no número de núcleos de CPU virtuais (vCPU) usados ​​pelos tempos de execução do conector em seu ambiente «traga sua própria nuvem (BYOC)». Você é cobrado apenas pelos tempos de execução ativos. A computação usada para os processos de gerenciamento do Openflow está excluída dessa cobrança específica. Os créditos são cobrados por segundo, com um mínimo de 60 segundos.

Para um exemplo de uso de VCPU e os impactos do escalonamento, consulte Escalonamento do Openflow.

Para obter informações sobre a taxa por vCPU por hora, consulte a Tabela 1(g) na Tabela de consumo de serviços do Snowflake.

Além disso, as exibições METERING_DAILY_HISTORY e METERING_HISTORY no esquema Account Usage podem fornecer detalhes adicionais sobre os custos de computação do Openflow usando consultas para SERVICE_TYPE=OPENFLOW_COMPUTE_BYOC.

Consulte Exploração do custo de computação para obter mais informações sobre como explorar os custos de computação no Snowflake.

Infraestrutura (somente para a configuração BYOC)

Aplicável somente para implementações em BYOC, você paga diretamente ao seu provedor de nuvem, por exemplo, AWS, pela infraestrutura subjacente provisionada em seu ambiente para executar o Openflow. Isso inclui principalmente computação (para tempos de execução que você provisiona para executar os conectores e para gerenciar os tempos de execução), rede e custos de armazenamento e aparecerá em sua fatura CSP.

Os requisitos de computação EC2 são ilustrados na imagem a seguir:

Requisitos de computação EC2

Ingestão

Custo para carregar dados no Snowflake usando serviços como Snowpipe ou Snowpipe Streaming, com base no volume de dados. Aparece na sua fatura do Snowflake nos respectivos itens de linha de serviços de ingestão. Certos conectores podem exigir um warehouse padrão do Snowflake, incorrendo em custos adicionais de warehouse. Por exemplo, os conectores de banco de dados de CDC exigem um warehouse do Snowflake para o instantâneo inicial e a captura de dados alterados (CDC) incremental. Você pode agendar operações MERGE para gerenciar o custo de computação.

Ingestão de dados de telemetria

O Snowflake padrão cobra pelo envio de logs e métricas para implantações do Openflow e pelo envio de tempos de execução para sua tabela de eventos no Snowflake. A taxa de créditos por GB de dados de telemetria pode ser encontrada na Tabela 5, na Tabela de consumo de serviços do Snowflake.

Escalonamento do Openflow

Os tempos de execução e o comportamento de escalonamento que você escolhe são cruciais para gerenciar custos de forma eficaz. O Openflow oferece suporte a diferentes tipos de tempos de execução, cada um com as próprias características de escalonamento.

Tipos de tempo de execução e custos associados

A tabela a seguir ilustra o comportamento de escalonamento de vários tempos de execução e seus custos associados:

Tempos de execução

Atividade

Custos do Snowflake

Custos de nuvem

Sem tempos de execução

Nenhum

Sem custo

Cálculo e armazenamento do Dataplane

1 tempo de execução pequeno (1vCPU) . (mín. 1 máx. 2)

Ativo por 1 hora . O tempo de execução não é escalonável para 2.

1 tempo de execução x 1 nó x 1 vCPU x 1 hora = 1 . Total = 1 vCPU-hora

Cálculo e armazenamento do Dataplane

2 tempos de execução pequenos (1 vCPU) (mín./máx.=2) . 1 tempo de execução grande (8 vCPU) (mín./máx.=10)

Pequeno: 2 nós ativos por 1 hora . Grande: 10 nós ativos por 1 hora

2 tempos de execução 2 x 2 nós x 2 vCPU x 1 hora = 4 vCPU . 1 tempo de execução x 10 nós x 8 vCPU x 1 hora = 80 vCPU . Total = 84 vCPU-horas

Cálculo e armazenamento do Dataplane

1 médio (4vCPU) . (mín. = 1 máx. = 2)

Primeiros 20 minutos: 1 nó em execução . Após 20 minutos, escalona para 2 nós . Após 40 minutos, escalona novamente para 1 nó . Total de 1 hora .

20 minutos = 1/3 hora . 1 tempo de execução x 1 nó x 4 vCPU x 1/3 hora = 1 1/3 . 1 tempo de execução x 2 nós x 4 vCPU x 2/3 hora = 2 1/3 . 1 tempo de execução x 1 nó x 4 vCPU x 1/3 hora = 1 1/3 . Total = 5 1/2 vCPU-horas

Cálculo e armazenamento do Dataplane

1 médio (4vCPU) . (mín./máx. = 2)

Primeiros 30 minutos: 2 nós em execução . Suspende após os primeiros 30 minutos.

30 minutos = 1/2 hora . 1 tempo de execução x 2 nós x 4 vCPU x 1/2 hora = 4 . Total = 4 vCPU horas

Cálculo e armazenamento do Dataplane

Mapeamento de tempos de execução para tipos de instância EC2

A escolha de um tipo de tempo de execução (como tamanhos de camisetas) resulta no agendamento dos pods de tempo de execução no grupo de nós EC2 associado {key}-sm-group, {key}-md-group ou {key}-lg-group com os recursos descritos na tabela a seguir:

Tipo de tempo de execução

vCPUs

Memória disponível (GB)

Tipo de instância EC2

Grupo de nós EC2

Nó EC2 – CPUs

Nó EC2 – memória (GB)

Small

1

2

m7i.xlarge

{key}-sm-group

4

16

Medium

4

10

m7i.4xlarge

{key}-md-group

16

64

Large

8

20

m7i.8xlarge

{key}-lg-group

32

128

O tipo de tempo de execução escolhido impacta o número de núcleos (vCPUs) consumidos por segundo. O Openflow dimensiona o grupo de nós EC2 subjacente quando pods adicionais precisam ser agendados, com base no consumo de CPU e até a configuração máxima de nós definida durante a criação do tempo de execução.

Os grupos de nós EKS são configurados com um tamanho mínimo de 0 nó e um máximo de 50 nós. O tamanho desejado é ajustado dinamicamente dependendo do tempo de execução necessário da CPU e da memória.

Os clientes são cobrados pelo provedor de serviços de nuvem pelos nós subjacentes que hospedam o tempo de execução. As instâncias EC2 subjacentes são criadas quando o primeiro tempo de execução de um determinado tamanho é agendado.

Exemplos para calcular o consumo de tempo de execução do Openflow

Um usuário solicita uma implantação BYOC do Openflow e, em seguida, instala o agente e a implantação do Openflow

  • O usuário não criou nenhum tempo de execução. Zero vCPUs são alocadas; portanto, não há custo pelo software Openflow.

  • O usuário é cobrado pelo provedor de serviços de nuvem por conta do provisionamento de computação e armazenamento da implantação BYOC do Openflow.

  • Consumo total do Openflow = 0 vCPU-hora

Um usuário cria um tempo de execução pequeno com núm. mín. de nós = 1 e núm. máx. de nós = 2. O tempo de execução permanece em 1 nó por 1 hora.

  • 1 tempo de execução pequeno = 1 vCPU

  • Consumo total do Openflow = 1 vCPU hora

Um usuário cria 2 tempos de execução pequenos com mín./máx. de 2 nós cada e um tempo de execução grande com mín./máx. de 10 nós. Esses tempos de execução ficam ativos por 1 hora

  • 2 tempos de execução pequenos em 2 nós = 2 tempos de execução x 2 nós x 1 vCPU = 4 vCPUs

  • 1 tempo de execução grande em 10 nós = 1 tempo de execução x 10 nós x 8 vCPU = 80 vCPUs

  • Consumo total do Openflow = (4 vCPU + 80 vCPU) x 1 hora = 84 vCPU-horas

Um usuário cria 1 tempo de execução médio com 1 nó. Após 20 minutos, ele escalona para 2 nós. Após 20 minutos, ele reduz para 1 nó e continua em execução por mais 20 minutos.

  • 1 tempo de execução médio = 4 vCPUs

  • 20 minutos = ⅓ hora

  • (1 nó x 4 vCPU x ⅓ hora) + (2 nós x 4 vCPU x ⅓ hora) + (1 nó x 4 vCPU x ⅓ hora)

    • 4/3 vCPU-horas + 8/3 vCPU-horas + 4/3 vCPU-horas

  • Consumo total do Openflow = 16/3 vCPU-horas, ou seja, aproximadamente 5,33 vCPU-horas

Um usuário cria 1 tempo de execução médio com 2 nós e o suspende após 30 minutos

  • 1 tempo de execução médio = 4 vCPU

  • 30 minutos = ½ hora

  • Consumo total do Openflow = (2 nós x 4 vCPU x ½ hora) = 4 vCPU-horas