SHOW SERVICES

Listet die Snowpark Container Services-Dienste (einschließlich Jobdienste) auf, für die Sie Zugriffsrechte haben.

  • Die Ausgabe von SHOW SERVICES enthält auch Dienste, die als Jobs ausgeführt werden (siehe EXECUTE JOB SERVICE).

  • SHOW JOB SERVICES liefert nur die Liste der Dienste, die als Jobs ausgeführt werden.

  • Die Ausgabe von SHOW SERVICES EXCLUDE JOBS enthält keine Dienste, die als Jobs ausgeführt werden.

Siehe auch:

CREATE SERVICE , ALTER SERVICE, DROP SERVICE , DESCRIBE SERVICE, SHOW SERVICE INSTANCES IN SERVICE, SHOW SERVICE CONTAINERS IN SERVICE

Syntax

SHOW [ JOB ] SERVICES [ EXCLUDE JOBS ] [ LIKE '<pattern>' ]
           [ IN
                {
                  ACCOUNT                  |

                  DATABASE                 |
                  DATABASE <database_name> |

                  SCHEMA                   |
                  SCHEMA <schema_name>     |
                  <schema_name>            |

                  COMPUTE POOL <compute_pool_name>
                }
           ]
           [ STARTS WITH '<name_string>' ]
           [ LIMIT <rows> [ FROM '<name_string>' ] ]
Copy

Parameter

LIKE 'pattern'

Filtert optional die Befehlsausgabe nach dem Objektnamen. Der Filter verwendet einen Musterabgleich ohne Berücksichtigung der Groß-/Kleinschreibung, aber mit Unterstützung von SQL-Platzhalterzeichen (% und _).

Die folgenden Muster geben beispielsweise die gleichen Ergebnisse zurück:

... LIKE '%testing%' ...
... LIKE '%TESTING%' ...

. Standard: Kein Wert (die Ausgabe wird nicht gefiltert).

[ IN ... ]

Gibt optional den Geltungsbereich des Befehls an. Geben Sie eine der folgenden Optionen an:

ACCOUNT

Gibt Datensätze für das gesamte Konto zurück.

DATABASE, . DATABASE db_name

Gibt Datensätze für die aktuell verwendete Datenbank oder eine angegebene Datenbank (db_name) zurück.

Wenn Sie DATABASE ohne db_name angeben und aktuell keine Datenbank in Verwendung ist, hat das Schlüsselwort keine Auswirkungen auf die Ausgabe.

Bemerkung

Die Verwendung von SHOW-Befehlen ohne eine IN-Klausel in einem Datenbankkontext kann zu weniger Ergebnissen als erwartet führen.

Objekte mit demselben Namen werden nur einmal angezeigt, wenn keine IN-Klausel verwendet wird. Wenn Sie z. B. die Tabelle t1 in schema1 und die Tabelle t1 in schema2 haben und beide im Geltungsbereich des von Ihnen angegebenen Datenbankkontextes liegen (d. h. die von Ihnen ausgewählte Datenbank ist die übergeordnete Datenbank von schema1 und schema2), dann zeigt SHOW TABLES nur eine der t1-Tabellen an.

SCHEMA, . SCHEMA schema_name

Gibt Datensätze für das aktuell verwendete Schema oder ein angegebenes Schema (schema_name) zurück.

SCHEMA ist optional, wenn aktuell eine Datenbank in Verwendung ist oder wenn Sie für schema_name den vollqualifizierten Schemanamen (z. B. db.schema) angeben.

Wenn aktuell keine Datenbank in Verwendung ist, hat die Angabe von SCHEMA keine Auswirkungen auf die Ausgabe.

Standard: Abhängig davon, ob für die Sitzung aktuell eine Datenbank in Verwendung ist:

  • Datenbank: DATABASE ist der Standardwert (d. h. der Befehl gibt die Objekte zurück, für die Sie Berechtigungen zum Anzeigen in der Datenbank haben).

  • Keine Datenbank: ACCOUNT ist der Standardwert (d. h. der Befehl gibt die Objekte zurück, für die Sie Berechtigungen zum Anzeigen in Ihrem Konto haben).

STARTS WITH 'name_string'

Filtert die Befehlsausgabe optional anhand der Zeichen, die am Anfang des Objektnamens angezeigt werden. Die Zeichenfolge muss in einfache Anführungszeichen gesetzt werden, wobei zwischen Groß-/Kleinschreibung unterschieden wird.

Die folgenden Zeichenfolgen geben beispielsweise unterschiedliche Ergebnisse zurück:

... STARTS WITH 'B' ...
... STARTS WITH 'b' ...

. Standard: Kein Wert (die Ausgabe wird nicht gefiltert)

LIMIT rows

Begrenzt optional die maximale Anzahl der zurückgegebenen Zeilen. Die tatsächliche Anzahl der zurückgegebenen Zeilen kann geringer sein als das angegebene Limit. Beispielsweise ist die Anzahl der vorhandenen Objekte geringer als das angegebene Limit.

Standard: Kein Wert (die Ausgabe wird nicht begrenzt).

Ausgabe

Die Befehlsausgabe enthält Eigenschaften und Metadaten in den folgenden Spalten:

Spalte

Beschreibung

name

Snowpark Container Services-Dienstname.

status

Einer der folgenden Werte, der den aktuellen Status des Dienstes angibt:

  • PENDING

  • RUNNING

  • FAILED

  • DONE

  • SUSPENDING

  • SUSPENDED

  • DELETING

  • DELETED

  • INTERNAL_ERROR

database_name

Datenbank, in der der Dienst erstellt wird.

schema_name

Schema, in dem der Dienst erstellt wird.

owner

Rolle, die Eigentümer des Dienstes ist.

compute_pool

Name des Computepools, in dem Snowflake den Dienst ausführt.

dns_name

Snowflake zugewiesener DNS-Name des Dienstes in diesem Format: service-name.unique-id.svc.spcs.internal.

Die unique-id ist ein 4–8 Zeichen langer alphanumerischer Bezeichner, der für eine bestimmte Instanz eines Datenbankschemas eindeutig ist. Um die eindeutige ID für ein Schema zu finden, rufen Sie die Funktion SYSTEM$GET_SERVICE_DNS_DOMAIN auf. Beispiel:

SELECT SYSTEM$GET_SERVICE_DNS_DOMAIN('mydb.myschema');
Copy

Beachten Sie Folgendes:

  • Wenn Sie ein Schema umbenennen, bleibt der Bezeichner unverändert.

  • Wenn Sie ein Schema mit demselben Namen löschen und neu erstellen, ändert sich der Bezeichner.

Der DNS-Name ermöglicht die Dienst-zu-Dienst-Kommunikation (siehe Tutorial 3).

current_instances

Die aktuelle Anzahl der Instanzen für den Dienst.

target_instances

Die von Snowflake ermittelte Zielanzahl der Dienstinstanzen, die ausgeführt werden sollen.

Wenn der current_instances-Wert nicht mit dem target_instances-Wert übereinstimmt, ist Snowflake entweder gerade dabei, die Dienstinstanzen herunterzufahren oder zu starten.

Betrachten Sie beispielsweise das folgende Szenario:

  • Angenommen, Sie erstellen einen Dienst mit MIN_INSTANCES = 1 und MAX_INSTANCES = 3. Während der Dienst läuft, könnte Snowflake feststellen, dass eine Instanz nicht ausreicht. In diesem Fall erhöht sich der Wert von target_instances, was bedeutet, dass Snowflake gerade dabei ist, weitere Instanzen zu starten.

    Es ist auch möglich, dass der Wert target_instances kleiner ist als der Wert current_instances, was darauf hinweist, dass Snowflake dabei ist, die Anzahl der laufenden Instanzen zu reduzieren.

  • Wenn Sie Dienste erstellen, der Computepool aber nicht über die Kapazität für die von Ihnen angefragte Mindestanzahl von Instanzen verfügt, entspricht der Wert von target_instances dem Wert von min_instances. Der current_instances-Wert wird kleiner als der target_instances-Wert sein.

min_ready_instances

Gibt an, welche Instanzen des Dienstes mindestens bereit sein müssen, damit Snowflake den Dienst als bereit zur Bearbeitung von Anfragen betrachtet.

min_instances

Minimale Anzahl von Dienstinstanzen, die Snowflake ausführen kann.

max_instances

Maximale Anzahl von Dienstinstanzen, die Snowflake bei Bedarf skalieren kann.

auto_resume

Bei true setzt Snowflake den angehaltenen Dienst automatisch fort, wenn die Dienstfunktion aufgerufen oder eine eingehende Anfrage (Dateneingang) empfangen wird (siehe Verwenden eines Dienstes).

external_access_integrations

Liste der Integrationen für den externen Zugriff, die mit dem Dienst verbunden sind. Weitere Informationen dazu finden Sie unter Konfigurieren des Netzwerkausgangs.

created_on

Datum und Uhrzeit der Erstellung des Dienstes.

updated_on

Datum und Uhrzeit der letzten Aktualisierung des Dienstes.

resumed_on

Zeitstempel, wann der Dienst zuletzt fortgesetzt wurde.

suspended_on

Zeitstempel, wann der Dienst zuletzt ausgesetzt wurde. suspended_on wird gesetzt, wenn Snowflake einen Dienst aussetzt, und bleibt auch nach der Wiederaufnahme des Dienstes unverändert. Wenn suspended_on NULL lautet, wurde der Dienst nie ausgesetzt.

auto_suspend_secs

Anzahl der Sekunden der Inaktivität, nach der Snowflake den Dienst automatisch aussetzt. Wenn auto_suspend_secs auf 0 gesetzt ist oder nie gesetzt wurde, setzt Snowflake den Dienst nicht automatisch aus.

comment

Kommentar zum Dienst.

owner_role_type

Typ der Rolle, die Eigentümer des Objekts ist, entweder ROLE oder DATABASE_ROLE.

query_warehouse

Wenn ein Dienstcontainer eine Verbindung zu Snowflake herstellt, um eine Abfrage auszuführen, und nicht ausdrücklich ein zu verwendendes Warehouse angibt, verwendet Snowflake dieses Warehouse als Standard.

is_job

true, wenn der Dienst ein Jobdienst ist, sonst false. In der Ausgabe von SHOW JOB SERVICES und SHOW SERVICES EXCLUDE JOBS ist diese Spalte nicht enthalten.

is_async_job

Wenn TRUE, läuft der Jobdienst asynchron. In der Standardeinstellung führt Snowflake die Jobdienste synchron aus. Diese Spalte ist in der Ausgabe der SHOW SERVICES- und SHOW JOB SERVICES-Befehle enthalten, aber nicht in der Ausgabe des SHOW SERVICES EXCLUDING JOBS-Befehls.

spec_digest

Der eindeutige und unveränderliche Bezeichner, der den Inhalt der Dienstspezifikation darstellt.

Um die Veränderungen des Wertes der spec_digest-Spalte im Zeitverlauf zu beobachten, könnte ein Dienstbenutzer den Befehl SHOW SERVICES regelmäßig ausführen. Wenn der Dienstbenutzer eine Änderung des Wertes bemerkt, kann er daraus schließen, dass der Dienst aktualisiert wurde.

is_upgrading

TRUE, wenn Snowflake dabei ist, den Dienst zu aktualisieren.

managing_object_domain

Die Domäne des Verwaltungsobjekts (zum Beispiel die Domäne des Notebooks, das den Dienst verwaltet). NULL, wenn der Dienst nicht von einer Snowflake-Entität verwaltet wird.

managing_object_name

Der Name des Verwaltungsobjekts (z. B. der Name des Notebooks, das den Dienst verwaltet). NULL, wenn der Dienst nicht von einer Snowflake-Entität verwaltet wird.

Anforderungen an die Zugriffssteuerung

Eine Rolle, die zur Ausführung dieses SQL-Befehls verwendet wird, muss mindestens eine der folgenden Berechtigungen haben:

Berechtigung

Objekt

Anmerkungen

Jede dieser Berechtigungen: OWNERSHIP, USAGE, MONITOR oder OPERATE

Dienst

USAGE-Berechtigung für die übergeordnete Datenbank und das Schema ist erforderlich, um Operationen an einem beliebigen Objekt in einem Schema durchzuführen.

Eine Anleitung zum Erstellen einer kundenspezifischen Rolle mit einer bestimmten Gruppe von Berechtigungen finden Sie unter Erstellen von kundenspezifischen Rollen.

Allgemeine Informationen zu Rollen und Berechtigungen zur Durchführung von SQL-Aktionen auf sicherungsfähigen Objekten finden Sie unter Übersicht zur Zugriffssteuerung.

Nutzungshinweise

  • Für die Ausführung des Befehls ist kein aktives Warehouse erforderlich.

  • Der Befehl gibt nur Objekte zurück, für die der aktuellen Rolle des aktuellen Benutzers mindestens ein Zugriffsrecht zugewiesen wurde.

  • Das Zugriffsrecht MANAGE GRANTS gibt seinem Eigentümer implizit die Möglichkeit, jedes Objekt im Konto anzuzeigen. Standardmäßig haben nur der Kontoadministrator (Benutzer mit der Rolle ACCOUNTADMIN) und der Systemadministrator (Benutzer mit der Rolle SECURITYADMIN) die Berechtigung MANAGE GRANTS.

  • Zur Weiterverarbeitung der Ausgabe dieses Befehls können Sie die Funktion RESULT_SCAN verwenden, die die Ausgabe wie eine abfragbare Tabelle behandelt. Sie können auch den Pipe-Operator verwenden, um die Ausgabe dieses Befehls abzufragen.

  • Der Befehl gibt maximal zehntausend Datensätze für den angegebenen Objekttyp zurück, entsprechend den Zugriffsrechten für die zur Ausführung des Befehls verwendete Rolle. Datensätze, die die Grenze von zehntausend Datensätzen überschreiten, werden nicht zurückgegeben, selbst wenn ein Filter angewendet wurde.

    Um Ergebnisse anzuzeigen, für die mehr als zehntausend Datensätze existieren, fragen Sie die entsprechende Ansicht (sofern vorhanden) in Snowflake Information Schema ab.

Beispiele

Im folgenden Beispiel werden die Dienste in der aktuellen Datenbank und im aktuellen Schema für die Sitzung aufgelistet:

SHOW SERVICES;
Copy

Beispielausgabe:

+--------------+---------+---------------+-------------+-----------+-----------------------+-------------------------------------+-------------------+------------------+---------------------+---------------+---------------+-------------+------------------------------+-------------------------------+-------------------------------+------------+--------------+-------------------+---------+-----------------+-----------------+--------+--------------+------------------------------------------------------------------+--------------+------------------------+----------------------+
| name         | status  | database_name | schema_name | owner     | compute_pool          | dns_name                            | current_instances | target_instances | min_ready_instances | min_instances | max_instances | auto_resume | external_access_integrations | created_on                    | updated_on                    | resumed_on | suspended_on | auto_suspend_secs | comment | owner_role_type | query_warehouse | is_job | is_async_job | spec_digest                                                      | is_upgrading | managing_object_domain | managing_object_name |
|--------------+---------+---------------+-------------+-----------+-----------------------+-------------------------------------+-------------------+------------------+---------------------+---------------+---------------+-------------+------------------------------+-------------------------------+-------------------------------+------------+--------------+-------------------+---------+-----------------+-----------------+--------+--------------+------------------------------------------------------------------+--------------+------------------------+----------------------|
| ECHO_SERVICE | RUNNING | TUTORIAL_DB   | DATA_SCHEMA | TEST_ROLE | TUTORIAL_COMPUTE_POOL | echo-service.k3m6.svc.spcs.internal |                 1 |                1 |                   1 |             1 |             1 | true        | NULL                         | 2024-11-29 12:12:47.310 -0800 | 2024-11-29 12:12:48.843 -0800 | NULL       | NULL         |                 0 | NULL    | ROLE            | NULL            | false  | false        | edaf548eb0c2744a87426529b53aac75756d0ea1c0ba5edb3cbb4295a381f2b4 | false        | NULL                   | NULL                 |
+--------------+---------+---------------+-------------+-----------+-----------------------+-------------------------------------+-------------------+------------------+---------------------+---------------+---------------+-------------+------------------------------+-------------------------------+-------------------------------+------------+--------------+-------------------+---------+-----------------+-----------------+--------+--------------+------------------------------------------------------------------+--------------+------------------------+----------------------+

Im folgenden Beispiel wird ein Dienst aufgelistet:

SHOW SERVICES LIMIT 1;
Copy

Im folgenden Beispiel werden Dienste aufgelistet, deren Name „echo“ enthält:

SHOW SERVICES LIKE '%echo%';
Copy

Im folgenden Beispiel wird ein Dienst aufgelistet, dessen Name „echo“ enthält:

SHOW SERVICES LIKE '%echo%' LIMIT 1;
Copy

Das folgende Beispiel listet nur Dienste auf, die als Jobs ausgeführt werden:

SHOW JOB SERVICES;
Copy