SHOW SERVICE INSTANCES IN SERVICE

SHOW SERVICE INSTANCES IN SERVICE

서비스의 인스턴스(instance)들을 나열하는 명령이에요. 각 서비스 인스턴스의 상태를 표시해 자동 확장(auto-scaling)과 롤링 업그레이드(rolling upgrade)에 대한 가시성을 제공해요.

출처: 문서

본문

기능 — 일반 사용 가능(Generally Available): Snowpark Container Services는 일부 예외를 제외하고 AWS, Microsoft Azure, Google Cloud Platform 상용 리전의 계정에서 사용할 수 있어요. 자세한 내용은 사용 가능한 리전 및 고려 사항(Available regions and considerations)을 참고해요.

서비스의 인스턴스들을 나열해요. 명령 출력은 각 서비스 인스턴스의 상태를 표시해 자동 확장과 롤링 업그레이드에 대한 가시성을 제공해요.

구문

SHOW SERVICE INSTANCES IN SERVICE <name>

매개변수

name

인스턴스를 나열할 서비스의 식별자를 지정해요. 특수 문자나 대소문자 구분 이름을 위한 따옴표 이름(quoted name)은 지원되지 않아요.

출력

명령 출력은 서비스 인스턴스의 속성과 메타데이터를 다음 컬럼으로 제공해요:

컬럼 설명
database_name 서비스가 생성된 데이터베이스예요.
schema_name 서비스가 생성된 스키마예요.
service_name 서비스의 이름이에요.
service_status 서비스의 현재 상태를 나타내는 값 중 하나예요: PENDING, RUNNING, FAILED, DONE, SUSPENDING, SUSPENDED, DELETING, DELETED, INTERNAL_ERROR. 이 컬럼의 값은 DESCRIBE SERVICE 출력의 status 컬럼과 같아요.
instance_id 서비스 인스턴스의 ID예요(0부터 시작하는 서비스 인스턴스의 인덱스).
status 서비스 인스턴스의 현재 상태를 나타내는 값 중 하나예요: PENDING(현재 배포 중이라 아직 요청을 처리할 준비가 되지 않음), READY(모든 컨테이너가 준비되어 요청을 처리 가능), FAILED(컨테이너 하나 이상이 실패로 종료됨), TERMINATING(종료 과정 중이며 완료 후 제거됨), SUCCEEDED(작업 서비스이고 모든 컨테이너가 정상 종료됨).
spec_digest 서비스 명세(specification) 내용을 나타내는 고유하고 변경 불가한 식별자예요.
creation_time Snowflake가 서비스 인스턴스 생성을 시작한 시각이에요.
start_time Snowflake가 서비스 인스턴스가 노드에서 실행 중임을 확인한 시각이에요.
ip_address 서비스 인스턴스의 IP 주소예요. 같은 서비스(또는 다른 서비스)의 다른 인스턴스가 이 IP 주소를 사용해 특정 서비스 인스턴스에 연결할 수 있어요. 여러 서비스 인스턴스를 실행할 때 instance_id가 0인 인스턴스를 리더로 선출해 서비스 인스턴스 간 리더 선출(leader election)을 구현할 수 있어요.

액세스 제어 요구 사항

이 작업을 실행하는 데 사용되는 역할은 최소한 다음 권한을 가져야 해요:

권한 객체 참고
이 중 하나: OWNERSHIP 또는 MONITOR Service

스키마의 객체를 운영하려면 상위 데이터베이스에 대한 권한이 하나 이상, 상위 스키마에 대한 권한이 하나 이상 필요해요. 지정된 권한 집합으로 사용자 정의 역할을 만드는 방법은 사용자 정의 역할 만들기(Creating custom roles)를 참고해요. 보안 객체에 대한 SQL 작업 수행을 위한 역할·권한 부여에 대한 일반 정보는 액세스 제어 개요(Overview of Access Control)를 참고해요.

사용 메모

  • 이 명령은 실행에 웨어하우스가 필요하지 않아요.
  • 이 명령은 현재 사용자의 현재 역할에 액세스 권한이 하나 이상 부여된 객체만 반환해요.
  • MANAGE GRANTS 액세스 권한은 보유자에게 계정의 모든 객체를 볼 수 있는 권한을 암묵적으로 부여해요. 기본적으로 계정 관리자(ACCOUNTADMIN 역할)와 보안 관리자(SECURITYADMIN 역할)만 MANAGE GRANTS 권한을 가져요.
  • 이 명령의 출력을 후처리하려면 파이프 연산자(->>)나 RESULT_SCAN 함수를 사용할 수 있어요. 두 구성 모두 출력을 쿼리할 수 있는 결과 집합으로 취급해요. 예를 들어 SHOW 명령 출력에서 특정 컬럼을 선택하거나 행을 필터링할 수 있어요.
  • 출력 컬럼을 참조할 때는 큰따옴표로 묶은 식별자를 사용해요. 예를 들어 type 출력 컬럼을 선택하려면 SELECT "type"이라고 지정해요. SHOW 명령의 출력 컬럼 이름은 소문자이므로 큰따옴표로 묶은 식별자를 사용해야 해요.
  • 이 명령은 명령을 실행하는 역할의 액세스 권한에 따라 지정한 객체 유형에 대해 최대 1만 개의 레코드를 반환해요. 1만 개를 초과하는 결과를 보려면 Snowflake 정보 스키마의 해당 뷰(존재하는 경우)를 쿼리해요.

예제

다음 예제는 세션의 현재 데이터베이스와 스키마에서 echo_service 서비스의 인스턴스를 나열해요:

SHOW SERVICE INSTANCES IN SERVICE echo_service;

샘플 출력:

+---------------+-------------+--------------+----------------+-------------+--------+------------------------------------------------------------------+----------------------+----------------------+------------+
| database_name | schema_name | service_name | service_status | instance_id | status | spec_digest                                                      | creation_time        | start_time           | ip_address |
|---------------+-------------+--------------+----------------+-------------+--------+------------------------------------------------------------------+----------------------+----------------------+------------|
| TUTORIAL_DB   | DATA_SCHEMA | ECHO_SERVICE | RUNNING        | 0           | READY  | 2831c241b8d64104fbc562d60764d7abd28602c70b6a8357341e8c8210b79da4 | 2025-04-25T06:01:32Z | 2025-04-25T06:01:32Z | 10.244.0.9 |
+---------------+-------------+--------------+----------------+-------------+--------+------------------------------------------------------------------+----------------------+----------------------+------------+

더 알아보기 (Learn more)