컨슈머로서 앱 업그레이드하기¶
이 항목에서는 컨슈머가 자신의 계정에 설치된 Snowflake Native App 을 업그레이드하는 방법에 대해 설명합니다.
업그레이드 개요¶
일반적으로 공급자가 앱의 업데이트 버전이나 패치를 게시하면 컨슈머 계정에서 앱이 자동으로 업그레이드됩니다. 자동 업그레이드는 앱이 설치된 모든 Snowflake 계정에서 앱의 모든 인스턴스에 대해 이루어집니다.
모든 앱 인스턴스를 업그레이드하는 데 다소 시간이 걸릴 수 있습니다. 그러나 새 버전의 패치가 게시된 후 계정에 설치된 인스턴스의 업그레이드가 시작되지 않은 경우 컨슈머는 앱을 수동으로 업그레이드할 수 있습니다. 또한 공급자는 자동 업그레이드가 수행되는 날짜와 시간을 지정할 수 있습니다.
앱을 수동으로 업그레이드하기¶
수동 업그레이드를 사용하면 공급자가 새 버전이나 패치를 게시할 때 컨슈머가 앱을 업그레이드할 수 있습니다.
컨슈머가 설치된 Snowflake Native App 을 사용 가능한 최신 버전으로 업그레이드하려면 ALTER APPLICATION 명령의 UPGRADE 절을 사용하여 앱을 수정하면 됩니다.
ALTER APPLICATION hello_snowflake_app UPGRADE;
이 명령은 애플리케이션 패키지에 지정된 릴리스 지시문을 사용하여 설치된 버전 또는 앱 패치의 업그레이드를 시작합니다.
특정 날짜 및 시간에 앱 업그레이드하기¶
새 버전의 앱을 게시할 때 공급자는 앱을 업그레이드할 날짜와 시간을 지정할 수 있습니다. 이 날짜 및 시간은 앱을 업그레이드할 수 있는 가장 빠른 날짜를 지정합니다.
컨슈머는 특정 시간에 앱을 업그레이드하는 작업을 생성할 수 있습니다.
CREATE OR REPLACE TASK APP_UPGRADE_TASK
SCHEDULE = 'USING CRON 0 9-17 * * SUN America/Los_Angeles'
WAREHOUSE = 'WH'
AS
ALTER APPLICATION hello_snowflake_app UPGRADE;
ALTER TASK APP_UPGRADE_TASK RESUME;
이 예에서는 일요일(미국/로스앤젤레스 타임존) 오전 9시부터 오후 5시까지 매시간마다 앱 업그레이드를 시도합니다.
업그레이드 상태 모니터링하기¶
컨슈머는 DESCRIBE APPLICATION 명령을 사용하여 업그레이드 상태를 볼 수 있습니다. 다음 열은 업그레이드와 관련된 정보를 제공합니다.
열
설명
upgrade_after
공급자가 현재 업그레이드를 시작하도록 예약했음을 나타냅니다. 그러나 이 날짜 및 시간 이전에 앱을 업그레이드할 수 있습니다. 자세한 내용은 앱을 수동으로 업그레이드하기 섹션을 참조하십시오.
upgrade_state
애플리케이션 오브젝트의 백그라운드 설치 또는 업그레이드의 현재 상태입니다. 유효한 값은 다음과 같습니다.
INSTALLING
: 애플리케이션 오브젝트가 생성되는 중입니다.
INSTALL_FAILED
: 애플리케이션 오브젝트 생성에 실패했습니다. 애플리케이션 오브젝트는 삭제될 때까지INSTALL_FAILED
상태로 유지됩니다. 설치 또는 업그레이드가 실패한 이유에 대한 정보는 DESCRIBE APPLICATION 명령의UPGRADE_FAILURE_REASON
열을 참조하십시오.
COMPLETE
: 설정 스크립트가 성공적으로 완료되었으며 애플리케이션 오브젝트가 생성되거나 업그레이드되었습니다.
QUEUED
: 애플리케이션 오브젝트가 업그레이드를 위해 큐에 대기 중입니다.
UPGRADING
: 애플리케이션 오브젝트가 업그레이드되는 중입니다.
FAILED
: 모든 업그레이드 시도가 실패했습니다. 실패 이유는UPGRADE_FAILURE_REASON
열(있는 경우)에 나열됩니다. 인스턴스는TARGET_UPGRADE_VERSION
열에 정의된 대로 업그레이드 대상 버전이 아닌 다른 버전을 가리키도록 릴리스 지시어가 업데이트될 때까지FAILED
상태로 유지됩니다.
QUEUED_RETRY
: 인스턴스가 하나 이상의 업그레이드 시도에 실패했습니다. 실패 이유는UPGRADE_FAILURE_REASON
에 표시됨: 인스턴스가 다른 업그레이드 시도를 수행하기 위해 큐에 대기 중입니다.
DISABLED
: 애플리케이션 오브젝트와 해당 업그레이드가 비활성화되었습니다. 이 상태에서는 컨슈머가 인스턴스에 액세스할 수 없으며 인스턴스의 업그레이드는 고려되지 않으며 애플리케이션 패키지 버전 삭제가 차단되지 않습니다. 실패 이유는UPGRADE_FAILURE_REASON
열(있는 경우)에 나열됩니다.
upgrade_target_version
앱을 업그레이드할 버전의 버전 식별자입니다.
upgrade_target_patch
애플리케이션 오브젝트가 업그레이드되는 패치입니다.