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 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: ![]() |
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