Considérations relatives aux coûts et à la mise à l’échelle des déploiements Openflow Snowflake¶
Openflow - Snowflake Deployment présente des considérations de coût dans plusieurs domaines, notamment le calcul Snowflake, l’infrastructure Snowpark Container Services, l’ingestion de données, et plus encore. La mise à l’échelle d’Openflow implique la compréhension de ces coûts.
Les sections suivantes décrivent les coûts généraux d’Openflow et fournissent plusieurs exemples de mise à l’échelle des durées d’exécution d’Openflow et des coûts associés.
Coûts de Openflow - Snowflake Deployment¶
Lors de l’utilisation de Openflow - Snowflake Deployment, vous pouvez vous exposer aux types de coûts suivants :
Catégorie de coût |
Description |
|---|---|
Openflow (affiché comme Openflow Compute Snowflake sur votre facture Snowflake) |
Coût basé sur le nombre et les types d’instances utilisés par les pools de calcul de Snowpark Container Services dans votre compte Snowflake. Vous êtes uniquement facturé pour les pools de calcul actifs. Les crédits sont facturés à la seconde pour un minimum de 5 minutes. Pour obtenir des informations sur le taux par famille d’instances de calcul SPCS par heure, consultez le tableau 1(g) dans le Tableau de consommation du service Snowflake. En outre, les vues METERING_DAILY_HISTORY et METERING_HISTORY dans le schéma Account Usage peuvent fournir des détails supplémentaires sur les coûts de calcul Openflow en utilisant des requêtes pour Note OPENFLOW_USAGE_HISTORY ne contient actuellement pas d’enregistrements pour SERVICE_TYPE=OPENFLOW_COMPUTE_SNOWFLAKE Voir Exploration des coûts de calcul pour plus d’informations sur l’exploration des coûts de calcul dans Snowflake. |
Infrastructure Snowpark Container Services |
Coût de l’infrastructure Snowpark Container Services supplémentaire, comme le stockage et le transfert de données. Voir Coûts de Snowpark Container Services pour plus d’informations. |
Ingestion |
Coût du chargement des données dans Snowflake à l’aide de services tels que Snowpipe ou Snowpipe Streaming, en fonction du volume de données. Apparaît sur votre facture Snowflake sous les lignes correspondantes aux services d’ingestion. Certains connecteurs peuvent nécessiter un entrepôt Snowflake standard, ce qui entraîne des coûts d’entrepôt supplémentaires. Par exemple, les connecteurs CDC de la base de données nécessitent un entrepôt Snowflake à la fois pour l’instantané initial et la capture incrémentielle de données modifiées (CDC). Vous pouvez planifier des opérations MERGE pour gérer le coût de calcul. |
Acquisition de données télémétriques |
Snowflake facture des frais standard pour l’envoi de journaux et de métriques vers les déploiements Openflow et l’envoi de durées d’exécution vers votre tableau d’événements dans Snowflake. Le taux de crédits par GB de données télémétriques peut être trouvé dans le tableau 5 du `Tableau de consommation du service Snowflake<https://www.snowflake.com/legal-files/CreditConsumptionTable.pdf>`_ et est appelé ingestion de données télémétriques. |
Mise à l’échelle de Openflow - Snowflake Deployment¶
Les environnements d’exécution et le comportement de mise à l’échelle que vous choisissez sont cruciales pour gérer efficacement les coûts. Openflow prend en charge différents types d’environnements d’exécution, chacun avec ses propres caractéristiques de mise à l’échelle.
Mappage des exécutions avec des pools de calcul Snowflake¶
Le choix d’un type d’exécution entraîne la planification des modules d’exécution sur le pool de calcul Snowflake INTERNAL_OPENFLOW_0_SMALL, INTERNAL_OPENFLOW_0_MEDIUM, INTERNAL_OPENFLOW_0_LARGE associé, avec les ressources décrites dans le tableau suivant :
La table suivante illustre le comportement de mise à l’échelle de différents environnements d’exécution et des coûts associés :
Type d’exécution |
vCPUs |
Mémoire disponible (GB) |
Famille d’instances des pools de calcul Snowflake |
Pool de calcul Snowflake |
Famille d’instances - vCPUs |
Famille d’instances - mémoire (GB) |
|---|---|---|---|---|---|---|
Small |
1 |
2 |
CPU_X64_X |
INTERNAL_OPENFLOW_0_SMALL |
4 |
16 |
Medium |
4 |
10 |
CPU_X64_SL |
INTERNAL_OPENFLOW_0_MEDIUM |
16 |
64 |
Large |
8 |
20 |
CPU_X64_L |
INTERNAL_OPENFLOW_0_LARGE |
32 |
128 |
Le type d’exécution sélectionné a une incidence sur le type d’instances de calcul provisionnées. Openflow met à l’échelle les pools de calcul Snowflake sous-jacents lorsque des modules supplémentaires doivent être planifiés, en fonction de la consommation du CPU, et jusqu’au paramètre de nœud maximal défini lors de la création de l’exécution.
Les pools de calcul Snowflake sont configurés avec une taille minimale de 0 nœud et un maximum de 50 nœuds. La taille souhaitée est ajustée dynamiquement en fonction de la mémoire et du CPU requis pour l’environnement d’exécution. Les pools de calcul Snowflake seront réduits à 0 après 600 secondes sans demande de ressources.
Types d’exécution et coûts associés¶
La table suivante illustre le comportement de mise à l’échelle de différents environnements d’exécution et des coûts associés :
Temps d’exécution |
Activité |
Coûts Snowflake |
Coûts Cloud |
|---|---|---|---|
Aucun environnement d’exécution |
Aucun(e) |
1x pool de contrôle Openflow x 1 nœud = 1 heure d’instance CPU_X64_S |
Aucun(e) |
1 petite exécution (1vCPU) (min 1 ; max 2) |
Active pendant 1 heure. L’exécution ne s’échelonne pas vers 2. |
1x pool de contrôle Openflow x 1 nœud + 1x petit pool de calcul Openflow (CPU_X64_S) x 1 nœud = 2 heures d’instance CPU_X64_S |
Aucun(e) |
2 petites exécutions (1 vCPU) (min/max = 2) 1 grande exécution (8 vCPU) (min/max = 10) |
Small : 4 nœuds actifs pendant 1 heure Large : 10 nœuds actifs pendant 1 heure |
1x pool de contrôle Openflow x 1 nœud + 1x CPU_X64_S x 1 nœud + 3x CPU_X64_L = 2 heures d’instance CPU_X64_S + 3 heures d’instance CPU_X64_L |
Aucun(e) |
1 moyen (4vCPU) (min = 1 ; max = 2) |
20 premières minutes : 1 nœud en cours d’exécution Après 20 minutes, passe à 2 nœuds Après 40 minutes, revient à 1 nœud Total = 1 heure |
1x pool de contrôle Openflow x 1 nœud + 1x CPU_X64_SL x 1 nœud = 1 heure d’instance CPU_X64_S + 1 heure d’instance CPU_X64_SL |
Aucun(e) |
1 moyen (4vCPU) (min/max = 2) |
30 premières minutes : 2 nœuds en cours d’exécution Suspendu après les 30 premières minutes |
1x pool de contrôle Openflow x 1 nœud + 1x CPU_X64_SL x 1 nœud x 1/2 heure = 1 heure d’instance CPU_X64_S + 1/2 heure d’instance CPU_X64_SL |
Aucun(e) |
Exemples de calcul de consommation Openflow - Snowflake Deployment¶
- Un utilisateur crée un déploiement Openflow Snowflake et n’a pas créé d’exécutions.
Le pool de calcul Openflow_Control_Pool_0 s’exécute avec 1 instance CPU_X64_S.
Consommation totale Openflow = 1 heure d’instance CPU_X64_S
- Un utilisateur crée 1 petite exécution avec un nombre minimal de nœuds = 1 et un nombre maximal de nœuds = 2. L’exécution reste à 1 nœud pendant 1 heure.
Le pool de calcul Openflow_Control_Pool_0 s’exécute avec 1 instance CPU_X64_S.
Le pool de calcul INTERNAL_OPENFLOW_0_SMALL s’exécute avec 1 instance CPU_X64_S.
Consommation totale Openflow = 2 heures d’instance CPU_X64_S
- Un utilisateur crée 2 petites exécutions avec un nombre minimal et maximal de 2 nœuds chacun et 1 grande exécution avec un nombre minimal et maximal de 10 nœuds. Ces exécutions sont actives pendant 1 heure.
Le pool de calcul Openflow_Control_Pool_0 s’exécute avec 1 instance CPU_X64_S.
2 petites exécutions à 2 nœuds = le pool de calcul INTERNAL_OPENFLOW_0_SMALL s’exécute avec 2 instances CPU_X64_S = 2 heures d’instance CPU_X64_S.
1 grande exécution à 10 nœuds = le pool de calcul INTERNAL_OPENFLOW_0_LARGE s’exécute avec 3 instances CPU_X64_L = 3 heures d’instance CPU_X64_L.
Consommation totale Openflow = 3 heures d’instance CPU_X64_S + 3 heures d’instance CPU_X64_L
- Un utilisateur crée 1 exécution moyenne avec 1 nœud. Après 20 minutes, il passe à 2 nœuds. Après 20 minutes, il revient à 1 nœud et fonctionne pendant 20 minutes supplémentaires.
Le pool de calcul Openflow_Control_Pool_0 s’exécute avec 1 instance CPU_X64_S.
1 mise à l’échelle d’exécution moyenne jusqu’à 2 exécutions moyennes = le pool de calcul INTERNAL_OPENFLOW_0_MEDIUM s’exécute avec 1 instance CPU_X64_SL = 1 heure d’instance CPU_X64_SL.
Consommation totale Openflow = 1 heure d’instance CPU_X64_S + 1 heure d’instance CPU_X64_LSL.
- Un utilisateur crée 1 exécution moyenne avec 2 nœuds, puis la suspend au bout de 30 minutes.
Le pool de calcul Openflow_Control_Pool_0 s’exécute avec 1 instance CPU_X64_S.
1 exécution moyenne à 1 nœud = le pool de calcul INTERNAL_OPENFLOW_0_MEDIUM s’exécute avec 1 instance CPU_X64_SL.
30 minutes = 1/2 heure
Consommation totale Openflow = 1 heure d’instance CPU_X64_S + 1/2 heure d’instance CPU_X64_LSL.