SHOW SERVICES¶
アクセス権限がある Snowpark Container Servicesサービス (ジョブサービスを含む)をリストします。
SHOW SERVICES の出力には、ジョブとして実行されているサービスも含まれます(EXECUTE JOB SERVICE を参照)。
SHOW JOB SERVICES は、ジョブとして実行されているサービスのリストのみを提供します。
SHOW SERVICES EXCLUDE JOBS 出力には、ジョブとして実行されているサービスは含まれません。
- こちらもご参照ください。
CREATE SERVICE , ALTER SERVICE, DROP SERVICE , DESCRIBE SERVICE, SHOW SERVICE INSTANCES IN SERVICE, SHOW SERVICE CONTAINERS IN SERVICE
構文¶
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>' ] ]
パラメーター¶
LIKE 'pattern'オプションで、オブジェクト名でコマンド出力をフィルタリングします。フィルターは、 SQL ワイルドカード文字(
%および_)をサポートする、 大文字と小文字を区別しない パターンマッチングを使用します。たとえば、次のパターンは 同じ 結果を返します。
... LIKE '%testing%' ...... LIKE '%TESTING%' .... デフォルト: 値なし(フィルタリングは出力に非適用)。
[ IN ... ]オプションで、コマンドのスコープを指定します。次のいずれかを指定します。
ACCOUNTアカウント全体の記録を返します。
DATABASE、 .DATABASE db_name現在使用中のデータベースまたは指定されたデータベース(
db_name)の記録を返します。db_nameなしでDATABASEを指定し、かつデータベースが使用されていない場合、キーワードは出力に影響しません。注釈
データベースコンテキストで
IN句を指定せずに SHOW コマンドを使用すると、予想よりも少ない結果になる可能性があります。IN句を使用しない場合、同じ名前のオブジェクトは一度だけ表示されます。例えば、schema1にテーブルt1、そしてschema2にテーブルt1があり、両方とも指定したデータベースコンテキストのスコープ内にある場合(つまり、選択したデータベースがschema1とschema2の親である場合)の場合、 SHOW TABLES はt1テーブルの1つのみを表示します。SCHEMA、 .SCHEMA schema_name現在使用中のスキーマまたは指定されたスキーマ(
schema_name)の記録を返します。データベースが使用中の場合、または完全修飾
schema_name(例:db.schema) を指定する場合、SCHEMAはオプションです。データベースが使用されていない場合は、
SCHEMAを指定しても出力には影響しません。
IN ...を省略した場合、コマンドのスコープは、セッションで現在使用中のデータベースがあるかどうかによって異なります。If a database is currently in use, the command returns the objects you have privileges to view in the database. This has the same effect as specifying
IN DATABASE.If no database is currently in use, the command returns the objects you have privileges to view in your account. This has the same effect as specifying
IN ACCOUNT.
STARTS WITH 'name_string'オプションで、オブジェクト名の先頭に表示される文字に基づいてコマンド出力をフィルタリングします。文字列は一重引用符で囲む必要があり、 大文字と小文字を区別します。
たとえば、次の文字列は 異なる 結果を返します。
... STARTS WITH 'B' ...... STARTS WITH 'b' .... デフォルト: 値なし(フィルターは出力に適用されない)
LIMIT rowsオプションで、返される行の最大数を制限します。実際に返される行数は、指定された制限より少ない場合があります。例えば、既存のオブジェクトの数が指定された制限より少ないなどです。
デフォルト: 値なし(出力に制限は非適用)。
出力¶
コマンド出力では、次の列にサービスプロパティとメタデータが提供されます。
列 |
説明 |
|---|---|
|
Snowpark Container Servicesのサービス名。 |
|
サービスの現在のステータスを示す以下の値のいずれか:
|
|
サービスが作成されるデータベース。 |
|
サービスが作成されるスキーマ。 |
|
サービスを所有するロール。 |
|
Snowflakeがサービスを実行するコンピュートプール名。 |
|
次の形式のサービスのSnowflakeが割り当てた DNS 名:
SELECT SYSTEM$GET_SERVICE_DNS_DOMAIN('mydb.myschema');
次の点に注意してください。
DNS 名はサービス間通信を可能にします(チュートリアル3 をご参照ください)。 |
|
サービスの現在のインスタンス数。 |
|
Snowflakeが判断した、実行する必要のあるサービスインスタンスの目標数。
たとえば、次を考慮します。
|
|
Snowflakeがサービスをリクエスト処理準備完了とみなすために必要となる、準備完了した最小サービスインスタンスを示します。 |
|
Snowflakeが実行する必要があるサービスインスタンスの最小数。 |
|
Snowflakeが必要に応じてスケールできるサービスインスタンスの最大数。 |
|
|
|
サービスに関連する外部アクセス統合のリスト。詳細については、 ネットワークエグレスの構成 をご参照ください。 |
|
サービスが作成された日時。 |
|
サービスが最後に更新された日時。 |
|
サービスが最後に再開されたタイムスタンプ。 |
|
サービスが最後に一時停止された時のタイムスタンプ。 |
|
Snowflakeが自動的にサービスを一時停止するまでの非アクティブの秒数。 |
|
サービスに関するコメント |
|
オブジェクトを所有するロールの型(ROLE または DATABASE_ROLE)。 |
|
サービスコンテナがクエリを実行するためにSnowflakeに接続し、使用するウェアハウスを明示的に指定しなかった場合、Snowflakeはデフォルトとしてこのウェアハウスを使用します。 |
|
サービスがジョブサービスの場合は |
|
TRUE の場合、ジョブサービスは非同期で実行されています。デフォルトでは、Snowflakeはジョブサービスを同期的に実行します。この列は、 SHOW SERVICES、および SHOW JOB SERVICES コマンドの出力に含まれますが、 SHOW SERVICES EXCLUDING JOBS コマンドの出力には含まれません。 |
|
サービス仕様のコンテンツを表す一意で不変の識別子。
|
|
Snowflakeがサービスのアップグレード中である場合は TRUE。 |
|
管理オブジェクトのドメイン(例: サービスを管理するノートブックのドメイン)。サービスがSnowflakeエンティティによって管理されていない場合は NULL。 |
|
管理オブジェクトの名前(例えば、サービスを管理するノートブックの名前)。サービスがSnowflakeエンティティによって管理されていない場合は NULL。 |
アクセス制御の要件¶
この SQL コマンドの実行に使用される ロール には、 最低 1 つ の次の 権限 が必要です。
権限 |
オブジェクト |
注意 |
|---|---|---|
これらの権限のいずれか1つ: OWNERSHIP、 USAGE、 MONITOR または OPERATE |
サービス |
スキーマ内のオブジェクトに対して操作を実行するには、親データベースとスキーマに対する USAGE 権限が必要です。スキーマに対する 任意の権限を付与されたロールは、そのロールがスキーマを解決できることに注意してください。たとえば、スキーマに対するCREATE権限を付与されたロールは、そのスキーマにオブジェクトを作成できますが、そのスキーマに対するUSAGE*も*付与されている必要はありません。
指定された権限のセットを使用してカスタムロールを作成する手順については、 カスタムロールの作成 をご参照ください。
セキュリティ保護可能なオブジェクト に対して SQL アクションを実行するためのロールと権限付与に関する一般的な情報については、 アクセス制御の概要 をご参照ください。
使用上の注意¶
このコマンドの実行には、稼働中のウェアハウスは必要ありません。
このコマンドは、現在のユーザーの現在のロールに少なくとも1つのアクセス権限が付与されているオブジェクトのみを返します。
MANAGE GRANTS アクセス権限により、所有者はアカウント内のすべてのオブジェクトを暗黙的に参照できます。デフォルトでは、アカウント管理者( ACCOUNTADMIN ロールを持つユーザー)とセキュリティ管理者( SECURITYADMIN ロールを持つユーザー)のみが MANAGE GRANTS 権限を持っています。
このコマンドの出力を後処理するには、 パイプ演算子 (
->>)または RESULT_SCAN 関数。どちらのコンストラクトも、出力を クエリできる結果セットとして扱います。For example, you can use the pipe operator or RESULT_SCAN function to select specific columns from the SHOW command output or filter the rows.
When you refer to the output columns, use double-quoted identifiers for the column names. For example, to select the output column
type, specifySELECT "type".You must use double-quoted identifiers because the output column names for SHOW commands are in lowercase. The double quotes ensure that the column names in the SELECT list or WHERE clause match the column names in the SHOW command output that was scanned.
コマンドは、コマンドを実行するために使用されるロールのアクセス権限によって決定された通り、指定されたオブジェクトタイプに対して 最大 1万件の記録を返します。1万件を超える記録は、フィルターを適用しても返されません。
1万件を超える記録が存在する結果を表示するには、 Snowflake Information Schema で対応するビュー(存在する場合)をクエリします。
例¶
次の例は、セッションの現在のデータベースとスキーマのサービスをリストしています。
SHOW SERVICES;
サンプル出力:
+--------------+---------+---------------+-------------+-----------+-----------------------+-------------------------------------+-------------------+------------------+---------------------+---------------+---------------+-------------+------------------------------+-------------------------------+-------------------------------+------------+--------------+-------------------+---------+-----------------+-----------------+--------+--------------+------------------------------------------------------------------+--------------+------------------------+----------------------+
| 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 |
+--------------+---------+---------------+-------------+-----------+-----------------------+-------------------------------------+-------------------+------------------+---------------------+---------------+---------------+-------------+------------------------------+-------------------------------+-------------------------------+------------+--------------+-------------------+---------+-----------------+-----------------+--------+--------------+------------------------------------------------------------------+--------------+------------------------+----------------------+
次の例は、1つのサービスをリストしています。
SHOW SERVICES LIMIT 1;
次の例は、名前に「echo」が含まれるサービスをリストしています。
SHOW SERVICES LIKE '%echo%';
次の例は、名前に「echo」が含まれる1つのサービスをリストしています。
SHOW SERVICES LIKE '%echo%' LIMIT 1;
次の例では、ジョブとして実行されているサービスのみをリストします。
SHOW JOB SERVICES;