Snowpark Container Services: Neue Standardwerte und Validierung der Anforderungen an die Ressourcen für einen Dienst

Achtung

Diese Verhaltensänderung ist im Bundle 2024_06 enthalten.

Den aktuellen Status des Bundles finden Sie unter Bundle-Verlauf.

Achtung

Diese Verhaltensänderung sollte mit dem Bundle 2024_05 eingeführt werden. Es wurde jedoch verschoben und ist nun im Bundle 2024_06 enthalten.

Sie stellen Ressourcenanforderungen für einen Dienst in der Dienstspezifikation zur Verfügung.

Die Art und Weise, wie Snowflake Services mit nicht spezifizierten Ressourcenanforderungen umgeht, ändert sich. Außerdem ändert sich die Art und Weise, wie Snowflake bestimmte Ressourcenanforderungen validiert:

Vor der Änderung:
  • Wenn Sie keine Ressourcenanforderungen angeben, geht Snowflake davon aus, dass Ihr Dienst nur unerhebliche Ressourcen verbraucht.

  • Wenn Sie Ressourcenanforderungen stellen, überprüft Snowflake die Werte anhand der gesamten Kapazität des Knotens. Ressourcen, die von Snowpark Container Services-Systemkomponenten verbraucht werden, werden nicht berücksichtigt.

Nach der Änderung:

Wenn die Ressourcenanforderungen nicht angegeben werden, werden die folgenden Standardwerte verwendet. Beachten Sie, dass sich resource.requests und resource.limits auf die Knotenkapazität (vCPU und Speicher) der Instanzfamilie des zugehörigen Computepools beziehen.

  • Wenn keine Ressourcenanfrage (CPU, Speicher oder beides) gestellt wird, leitet Snowflake eine für Sie ab:

    • Für cpu ist der abgeleitete Wert entweder 0,5 oder die von Ihnen angegebene cpu-Grenze, je nachdem, welcher Wert kleiner ist.

    • Für memory ist der abgeleitete Wert entweder 0,5 GiB oder die von Ihnen angegebene memory-Grenze, je nachdem, welcher Wert kleiner ist.

  • Wenn keine Ressourcengrenze (CPU, Speicher oder beides) angegeben wird, setzt Snowflake die Grenzen auf die Knotenkapazität für die Instanzfamilie des zugehörigen Computepools.

  • Wenn Sie resource.limits zur Verfügung stellen und diese die Knotenkapazität überschreiten, wird Snowflake die Grenze auf die Knotenkapazität begrenzen.

  • Snowflake wertet diese Ressourcenanforderungen unabhängig voneinander für cpu und memory aus.

Beachten Sie, dass CREATE SERVICE fehlschlägt, wenn es für Snowflake theoretisch unmöglich ist, den Dienst auf dem angegebenen Computepool zu planen. Wenn es theoretisch unmöglich ist, wird davon ausgegangen, dass der Computepool über die maximale Anzahl von Knoten verfügt und es keine anderen Dienstes auf dem Computepool ausgeführt werden. Das heißt, dass Snowflake die angefragten Ressourcen nicht innerhalb der Grenzen des Computepools zuweisen kann. Wenn es theoretisch möglich ist, aber die erforderlichen Ressourcen bereits genutzt werden, wird CREATE SERVICE erfolgreich sein. Einige Dienstinstanzen melden einen Status, der besagt, dass der Dienst aufgrund unzureichender Ressourcen nicht geplant werden kann, bis die Ressourcen verfügbar sind.

Außerdem hat sich mit dieser BCR die Knotenkapazität (vCPU und Speicher) für jeden Instanztyp wie gezeigt geändert:

Instanzfamilie

vCPU . vor der Änderung

vCPU . nach der Änderung

Speicher (GiB) . vor der Änderung

Speicher (GiB) . nach der Änderung

CPU_X64_XS

2

1

8

6

CPU_X64_S

4

3

16

13

CPU_X64_M

8

6

32

28

CPU_X64_L

32

28

128

116

HIGHMEM_X64_S

8

6

64

58

HIGHMEM_X64_M

32

28

256 (AWA) . 256 (Azure)

240 (AWS) . 244 (Azure)

HIGHMEM_X64_L

128 (AWS) . 96 (Azure)

124 (AWS) . 92 (Azure)

1024 (AWS) . 672 (Azure)

984 (AWS) . 654 (Azure)

GPU_NV_S . (nur AWS)

8

6

32

27

GPU_NV_M . (nur AWS)

48

44

192

178

GPU_NV_L . (nur AWS)

96

92

1152

1112

GPU_NV_XS . (nur Azure)

4

3

28

26

GPU_NV_SM . (nur Azure)

36

32

440

424

GPU_NV_2M . (nur Azure)

72

68

880

858

GPU_NV_3M . (nur Azure)

48

44

440

424

GPU_NV_SL . (nur Azure)

96

92

880

858

Ref.: 1648