매개 변수

Snowflake는 계정, 개별 사용자 세션, 오브젝트의 동작을 제어할 수 있는 매개 변수를 제공합니다. 모든 매개 변수에는 기본값이 있으며, 매개 변수 유형(계정, 세션 또는 오브젝트)에 따라 다른 수준에서 설정한 다음 재정의할 수 있습니다.

이 항목의 내용:

매개 변수 계층 구조와 유형

이 섹션에서는 다양한 유형의 매개 변수(계정, 세션, 오브젝트)와 각 유형을 설정할 수 있는 수준에 대해 설명합니다.

다음 다이어그램에서는 다양한 매개 변수 유형 간의 계층적 관계와 각 수준에서 개별 매개 변수를 재정의할 수 있는 방법을 보여줍니다.

Hierarchy of account, session, and object parameters

계정 매개 변수

계정 매개 변수는 적절한 관리자 역할을 가진 사용자가 계정 수준에서만 설정할 수 있습니다. 계정 매개 변수는 ALTER ACCOUNT 명령을 사용해 설정됩니다.

Snowflake는 다음과 같은 계정 매개 변수를 제공합니다.

매개 변수

참고

ALLOW_CLIENT_MFA_CACHING

ALLOW_ID_TOKEN

Snowflake에서 제공하는 클라이언트의 브라우저 기반 SSO(Single Sign-On)에서 연결 캐싱을 활성화하는 데 사용됩니다.

CLIENT_ENCRYPTION_KEY_SIZE

데이터 로딩 또는 언로딩을 위해 스테이징된 파일의 암호화에 사용되며, 추가 설치 및 구성이 필요할 수 있습니다(자세한 내용은 설명 참조).

ENABLE_INTERNAL_STAGES_PRIVATELINK

SYSTEM$GET_PRIVATELINK_CONFIG 함수가 쿼리 결과에서 private-internal-stages 키를 반환하도록 허용합니다.

ENFORCE_SESSION_POLICY

클래식 웹 인터페이스 및 쿼리 런타임에서 세션 정책을 시행하는 데 사용됩니다.

EXTERNAL_OAUTH_ADD_PRIVILEGED_ROLES_TO_BLOCKED_LIST

INITIAL_REPLICATION_SIZE_LIMIT_IN_TB

MIN_DATA_RETENTION_TIME_IN_DAYS

Time Travel 작업의 기록 데이터를 유지하기 위한 최소 데이터 보존 기간을 설정하는 데 사용됩니다.

NETWORK_POLICY

이것은 계정 관리자(즉, ACCOUNTADMIN 시스템 역할을 가진 사용자) 또는 보안 관리자(즉, SECURITYADMIN 시스템 역할을 가진 사용자)가 설정할 수 있는 유일한 계정 매개 변수입니다. . 자세한 내용은 오브젝트 매개 변수 섹션을 참조하십시오.

PERIODIC_DATA_REKEYING

PREVENT_UNLOAD_TO_INLINE_URL

REQUIRE_STORAGE_INTEGRATION_FOR_STAGE_CREATION

REQUIRE_STORAGE_INTEGRATION_FOR_STAGE_OPERATION

SSO_LOGIN_PAGE

참고

기본적으로, 계정 매개 변수는 SHOW PARAMETERS 의 출력에 표시되지 않습니다. 계정 매개 변수 보기에 대한 자세한 내용은 (이 항목에 있는) 매개 변수 및 해당 값 보기 를 참조하십시오.

세션 매개 변수

매개 변수는 대부분 다음 수준에서 설정할 수 있는 세션 매개 변수입니다.

계정

계정 관리자는 ALTER ACCOUNT 명령을 사용해 계정에 대한 세션 매개 변수를 설정할 수 있습니다. 계정에 대해 설정된 값은 기본적으로 개별 사용자와 해당 사용자의 세션으로 설정됩니다.

사용자

적절한 권한이 있는 관리자(일반적으로 SECURITYADMIN 역할)는 ALTER USER 명령을 사용해 개별 사용자에 대한 세션 매개 변수를 재정의할 수 있습니다. 사용자에 대해 설정된 값은 기본적으로 사용자가 시작한 세션으로 설정됩니다. 또한, 사용자는 ALTER USER 를 사용해 스스로 기본 세션 매개 변수를 재정의할 수 있습니다.

세션

사용자는 ALTER SESSION 을 사용해 세션 내에서 세션 매개 변수를 명시적으로 설정할 수 있습니다.

참고

기본적으로, 세션 매개 변수만 SHOW PARAMETERS 의 출력에 표시됩니다. 계정 및 오브젝트 매개 변수 보기에 대한 자세한 내용은 (이 항목에 있는) 매개 변수 및 해당 값 보기 를 참조하십시오.

오브젝트 매개 변수

다음 수준에서 오브젝트 매개 변수를 설정할 수 있습니다.

계정

계정 관리자는 ALTER ACCOUNT 명령을 사용해 계정에 대한 오브젝트 매개 변수를 설정할 수 있습니다. 계정에 대해 설정된 값은 기본적으로 계정에서 생성된 오브젝트로 설정됩니다.

오브젝트

적절한 권한이 있는 사용자는 해당 CREATE <오브젝트> 또는 ALTER <오브젝트> 명령을 사용해 개별 오브젝트에 대한 오브젝트 매개 변수를 재정의할 수 있습니다.

Snowflake는 다음과 같은 오브젝트 매개 변수를 제공합니다.

매개 변수

오브젝트 타입

참고

DATA_RETENTION_TIME_IN_DAYS

데이터베이스, 스키마, 테이블

DEFAULT_DDL_COLLATION

데이터베이스, 스키마, 테이블

MAX_CONCURRENCY_LEVEL

웨어하우스

MAX_DATA_EXTENSION_TIME_IN_DAYS

데이터베이스, 스키마, 테이블

PIPE_EXECUTION_PAUSED

스키마, 파이프

PREVENT_UNLOAD_TO_INTERNAL_STAGES

사용자

STATEMENT_QUEUED_TIMEOUT_IN_SECONDS

웨어하우스

또한, 세션 매개 변수(즉, 오브젝트 및 세션 수준에서 모두 설정할 수 있음). 상속 및 재정의 세부 정보는 매개 변수 설명을 참조하십시오.

STATEMENT_TIMEOUT_IN_SECONDS

웨어하우스

또한, 세션 매개 변수(즉, 오브젝트 및 세션 수준에서 모두 설정할 수 있음). 상속 및 재정의 세부 정보는 매개 변수 설명을 참조하십시오.

NETWORK_POLICY

사용자

이것은 계정 관리자(즉, ACCOUNTADMIN 시스템 역할을 가진 사용자) 또는 보안 관리자(즉, SECURITYADMIN 시스템 역할을 가진 사용자)가 설정할 수 있는 유일한 사용자 매개 변수입니다. . 이 매개 변수가 계정과 동일한 계정의 사용자에 대해 설정되는 경우, 사용자 수준 네트워크 정책이 계정 수준 네트워크 정책보다 우선 적용됩니다.

SHARE_RESTRICTIONS

공유

이 매개 변수는 계정 관리자(즉, ACCOUNTADMIN 시스템 역할을 가진 사용자) 또는 OVERRIDE SHARE RESTRICTIONS 권한을 가진 역할이 설정할 수 있습니다.

SUSPEND_TASK_AFTER_NUM_FAILURES

데이터베이스, 스키마, 작업

USER_TASK_MANAGED_INITIAL_WAREHOUSE_SIZE

데이터베이스, 스키마, 작업

USER_TASK_TIMEOUT_MS

데이터베이스, 스키마, 작업

참고

기본적으로, 오브젝트 매개 변수는 SHOW PARAMETERS 의 출력에 표시되지 않습니다. 오브젝트 매개 변수 보기에 대한 자세한 내용은 (이 항목에 있는) 매개 변수 및 해당 값 보기 를 참조하십시오.

매개 변수 및 해당 값 보기

Snowflake는 각 매개 변수의 현재 값 및 기본값과 함께 매개 변수의 목록을 표시하는 SHOW PARAMETERS 명령을 제공합니다. 표시되는 매개 변수의 유형을 결정하기 위해 다른 옵션과 함께 명령을 호출할 수 있습니다.

세션 및 오브젝트 매개 변수 보기

기본적으로, 이 명령은 오직 세션 매개 변수만 표시합니다.

SHOW PARAMETERS;

특정 오브젝트에 대한 오브젝트 매개 변수를 표시하려면 오브젝트 유형과 이름이 있는 IN 절을 포함하십시오. 예:

SHOW PARAMETERS IN DATABASE mydb;

SHOW PARAMETERS IN WAREHOUSE mywh;

모든 매개 변수 보기

계정 및 오브젝트 매개 변수를 포함한 모든 매개 변수를 표시하려면 IN ACCOUNT 절을 포함하십시오.

SHOW PARAMETERS IN ACCOUNT;

이름으로 매개 변수 목록 제한하기

또한, 이 명령은 이름으로 매개 변수 목록을 제한하는 LIKE 절의 사용도 지원합니다. 예:

  • 이름에 《time》이 포함된 세션 매개 변수를 표시하는 방법은 다음과 같습니다.

    SHOW PARAMETERS LIKE '%time%';
    
  • 이름이 《time》으로 시작하는 모든 매개 변수를 표시하는 방법은 다음과 같습니다.

    SHOW PARAMETERS LIKE 'time%' IN ACCOUNT;
    

참고

LIKE 절은 IN 절 앞에 와야 합니다.

ABORT_DETACHED_QUERY

타입

세션 — 계정 » 사용자 » 세션에 대해 설정할 수 있음

데이터 타입

부울

설명

세션의 갑작스러운 종료(예: 네트워크 중단, 브라우저 종료, 서비스 중단)로 인해 연결이 끊어지는 경우 Snowflake가 진행 중인 쿼리에 대해 수행하는 조치 사항을 지정합니다.

TRUE: 연결이 끊어지고 나서 5분 후에 진행 중인 쿼리가 중단됩니다.

FALSE: 진행 중인 쿼리가 완료됩니다.

기본값

FALSE

참고

  • 사용자가 연결을 명시적으로 종료할 경우:

    • 매개 변수 값과 관계없이 진행 중인 모든 동기 쿼리가 즉시 중단됩니다.

    • 값이 FALSE 로 설정될 경우 비동기 쿼리는 쿼리가 완료 또는 취소되거나 이틀의 최대 실행 시간이 만료될 때까지 계속 실행됩니다.

  • 대부분의 쿼리는 실행하려면 컴퓨팅 리소스가 필요합니다. 이러한 리소스는 실행하는 동안 크레딧을 소비하는 가상 웨어하우스에서 제공됩니다. 값이 FALSE 인 상태에서 세션이 종료될 경우 웨어하우스가 계속 실행되고 크레딧을 소비하여 세션이 종료되는 시점에 진행 중이던 쿼리를 완료할 수 있습니다.

ALLOW_CLIENT_MFA_CACHING

타입

계정 — 계정에 대해서만 설정할 수 있음

데이터 타입

부울

설명

클라이언트 측 운영 체제 키 저장소에 MFA 토큰을 저장하여 Snowflake에 대한 각 연결 시도를 시작할 때 사용자가 MFA 프롬프트에 응답할 필요 없이 지속적이고 안전한 연결을 증진할 수 있는지 여부를 지정합니다. 지원되는 Snowflake 제공 클라이언트의 세부 정보와 목록은 MFA 토큰 캐싱을 사용하여 인증 도중 프롬프트 수 최소화하기 — 선택 사항 를 참조하십시오.

TRUE: 클라이언트 측 운영 체제 키 저장소에 MFA 토큰을 저장하여 새 연결이 설정될 때마다 클라이언트 애플리케이션이 MFA 토큰을 사용할 수 있도록 합니다. True인 동안에는 사용자에게 추가 MFA 프롬프트에 응답하라는 메시지가 표시되지 않습니다.

FALSE: MFA 토큰을 저장하지 않습니다. 사용자는 클라이언트 애플리케이션이 Snowflake와 새 연결을 설정할 때마다 MFA 프롬프트에 응답해야 합니다.

기본값

FALSE

ALLOW_ID_TOKEN

타입

계정 — 계정에 대해서만 설정할 수 있음

데이터 타입

부울

설명

클라이언트 측 운영 체제 키 저장소에 연결 토큰을 저장하여 Snowflake에 대한 각 연결 시도를 시작할 때 사용자가 로그인 자격 증명을 입력할 필요 없이 지속적이고 안전한 연결을 증진할 수 있는지 여부를 지정합니다. 지원되는 Snowflake 제공 클라이언트의 세부 정보와 목록은 연결 캐싱을 사용하여 인증 프롬프트 수 최소화하기 — 선택 사항 를 참조하십시오.

TRUE: 클라이언트 측 운영 체제 키 저장소에 연결 토큰을 저장하여 새 연결이 설정될 때마다 사용자에게 인증하라는 메시지를 표시하지 않고 클라이언트 애플리케이션이 브라우저 기반 SSO를 사용할 수 있도록 합니다.

FALSE: 연결 토큰을 저장하지 않습니다. 클라이언트 애플리케이션이 Snowflake와의 새 연결을 설정할 때마다 사용자에게 인증하라는 메시지가 표시됩니다. 이 매개 변수가 false로 설정된 경우에도 Snowflake에 대한 SSO는 여전히 가능합니다.

기본값

FALSE

AUTOCOMMIT

타입

세션 — 계정 » 사용자 » 세션에 대해 설정할 수 있음

데이터 타입

부울

설명

세션에 대해 자동 커밋을 사용할 수 있는지 여부를 지정합니다. 자동 커밋은 활성 트랜잭션 없이 실행 시 DML 문이 성공적으로 완료된 후 이 문이 자동으로 커밋되는지 여부를 결정합니다. 자세한 내용은 트랜잭션 섹션을 참조하십시오.

TRUE: 자동 커밋이 사용됩니다.

FALSE: 자동 커밋이 사용되지 않는데, 이는 곧 DML 문을 명시적으로 커밋하거나 롤백해야 한다는 뜻입니다.

기본값

TRUE

AUTOCOMMIT_API_SUPPORTED (보기 전용)

타입

N/A

데이터 타입

부울

설명

Snowflake 내부 전용입니다. 계정에 대해 자동 커밋을 위한 API 지원이 사용되는지 여부를 나타내는 보기 전용 매개 변수입니다. 값이 TRUE 인 경우 다음 드라이버/커넥터에 대해 APIs를 통해 자동 커밋을 사용하거나 사용하지 않을 수 있습니다.

BINARY_INPUT_FORMAT

타입

세션 — 계정 » 사용자 » 세션에 대해 설정할 수 있음

데이터 타입

문자열(상수)

설명

VARCHAR-BINARY 변환 함수에 대한 입력으로 전달되는 VARCHAR 값의 형식입니다. 자세한 내용은 바이너리 입력 및 출력 섹션을 참조하십시오.

HEX , BASE64 또는 UTF8 / UTF-8

기본값

HEX

BINARY_OUTPUT_FORMAT

타입

세션 — 계정 » 사용자 » 세션에 대해 설정할 수 있음

데이터 타입

문자열(상수)

설명

BINARY-VARCHAR 변환 함수에 의해 출력으로 반환되는 VARCHAR 값의 형식입니다. 자세한 내용은 바이너리 입력 및 출력 섹션을 참조하십시오.

HEX 또는 BASE64

기본값

HEX

CLIENT_ENABLE_LOG_INFO_STATEMENT_PARAMETERS

타입

세션 — 세션에 대해서만 설정할 수 있음

데이터 타입

부울

클라이언트

JDBC

설명

사용자가 PreparedStatements 에 바인딩된 데이터 값을 기록할 수 있게 합니다.

값을 확인하려면 이 세션 수준 매개 변수를 TRUE 로 설정할 뿐 아니라, TRACING 으로 명명된 연결 매개 변수를 INFO 또는 ALL 로 설정해야 합니다.

  • 모든 디버깅 정보와 모든 바인딩 정보를 보려면 TRACINGALL 로 설정하십시오.

  • 바인딩 매개 변수 값과 기타 디버그 정보를 보려면 TRACINGINFO 로 설정하십시오.

조심

의료 진단이나 비밀번호와 같은 기밀 정보를 바인딩하면 그 정보가 기록됩니다. Snowflake에서는 이 매개 변수를 TRUE 로 설정할 때 로그 파일이 안전한지 확인하거나 테스트 데이터만 사용할 것을 권장합니다.

TRUE 또는 FALSE.

기본값

FALSE

CLIENT_ENCRYPTION_KEY_SIZE

타입

계정 — 계정에 대해서만 설정할 수 있음

데이터 타입

정수

클라이언트

임의

설명

(데이터 로딩/언로딩을 위해) Snowflake가 내부 스테이지에 저장된 파일을 암호화/암호 해독하는 데 사용하는 AES 암호화 키 크기(비트)를 지정합니다.

128 또는 256

기본값

128

참고

  • 이 매개 변수는 외부 스테이지(즉, S3 버킷 또는 Azure 컨테이너)에 저장된 파일을 암호화/암호 해독하는 데 사용되지 않습니다. 이러한 파일의 암호화/암호 해독은 COPY 명령이나 이 명령에서 참조되는 명명된 외부 스테이지에 명시적으로 지정된 외부 암호화 키를 사용해 수행됩니다.

  • JDBC 드라이버를 사용 중이고 (강력한 암호화를 위해) 이 매개 변수를 256으로 설정하려는 경우 데이터가 로딩/언로딩되는 각 클라이언트 컴퓨터에 추가적인 JCE 정책 파일을 설치해야 합니다. 필수 파일 설치에 대한 자세한 내용은 JDBC 드라이버에 대한 Java 요구 사항 을 참조하십시오.

  • Python 커넥터(또는 SnowSQL)를 사용 중이고 (강력한 암호화를 위해) 이 매개 변수를 256으로 설정하려는 경우 추가 설치 또는 구성 작업이 필요하지 않습니다.

CLIENT_MEMORY_LIMIT

타입

세션 — 계정 » 사용자 » 세션에 대해 설정할 수 있음

데이터 타입

정수

클라이언트

JDBC, ODBC

설명

JDBC 드라이버 또는 ODBC 드라이버가 쿼리의 결과 세트에 사용해야 하는 최대 메모리양(MB 단위)을 지정하는 매개 변수입니다.

JDBC 드라이버의 경우:

  • JVM 메모리 관리를 단순화하기 위해, 이 매개 변수가 모든 쿼리에 대해 전역으로 최대 메모리 사용량 한도를 설정합니다.

  • CLIENT_RESULT_CHUNK_SIZE 는 다운로딩할 쿼리 결과의 각 세트(또는 청크)의 최대 크기(MB 단위)를 지정합니다. 청크를 처리하는 데 추가적인 드라이버 메모리가 필요할 수 있습니다. 이 경우, 드라이버는 런타임 중에 메모리 사용을 조정하여 최소한 1개 스레드/쿼리를 처리합니다. 충분한 메모리를 사용할 수 있도록 CLIENT_MEMORY_LIMIT 가 CLIENT_RESULT_CHUNK_SIZE 보다 훨씬 높게 설정되어 있는지 확인합니다.

ODBC 드라이버의 경우:

  • 이 매개 변수는 버전 2.22.0 이상에서 지원됩니다.

  • CLIENT_RESULT_CHUNK_SIZE 가 지원되지 않습니다.

참고

  • 드라이버는 매개 변수 값을 준수하려고 시도하겠지만, 시스템 메모리의 80%로 사용량을 제한합니다.

  • 이 매개 변수에 설정된 메모리 사용량 한도는 다른 JDBC 또는 ODBC 드라이버 작업(예: 데이터베이스에 연결, 쿼리나 PUT 및 GET 문 작성)에 적용되지 않습니다.

유효한 메가바이트 수.

기본값

1536 (사실상 1.5GB)

대부분의 사용자는 이 매개 변수를 설정할 필요가 없습니다. 사용자가 이 매개 변수를 설정하지 않으면 드라이버가 위에 지정된 기본값으로 시작합니다.

또한, JDBC 드라이버는 사용 가능한 모든 메모리를 전부 사용하지 않도록 적극적으로 메모리를 보수적으로 관리합니다.

CLIENT_METADATA_REQUEST_USE_CONNECTION_CTX

타입

세션 — 사용자 » 세션에 대해 설정할 수 있음

데이터 타입

부울

클라이언트

JDBC, ODBC

설명

특정 ODBC 함수와 JDBC 메서드의 경우, 이 매개 변수는 기본 검색 범위를 모든 데이터베이스/스키마에서 현재 데이터베이스/스키마로 변경할 수 있습니다. 검색 범위가 좁을수록 일반적으로 더 적은 수의 행이 반환되고 더 빠르게 실행됩니다.

예를 들어, getTables() JDBC 메서드는 데이터베이스 이름과 스키마 이름을 인자로 받아 데이터베이스와 스키마에 있는 테이블의 이름을 반환합니다. 데이터베이스 및 스키마 인자가 null 인 경우 기본적으로 이 메서드는 계정의 모든 데이터베이스와 모든 스키마를 검색합니다. CLIENT_METADATA_REQUEST_USE_CONNECTION_CTX를 TRUE 로 설정하면 연결 컨텍스트 로 지정된 현재 데이터베이스와 스키마로 검색 범위가 좁혀집니다.

본질적으로, 이 매개 변수를 TRUE 로 설정하면 데이터베이스와 스키마에 대해 다음 우선 순위가 생성됩니다.

  1. 함수/메서드에 인자로 전달된 값.

  2. 연결 컨텍스트 에 지정된 값(있는 경우).

  3. 기본값(모든 데이터베이스와 모든 스키마).

자세한 내용은 아래 내용을 참조하십시오.

이 매개 변수는 다음에 적용됩니다.

  • JDBC 드라이버 메서드(DatabaseMetaData 클래스용):

    • getColumns

    • getCrossReference

    • getExportedKeys

    • getForeignKeys

    • getFunctions

    • getImportedKeys

    • getPrimaryKeys

    • getSchemas

    • getTables

  • ODBC 드라이버 함수:

    • SQLTables

    • SQLColumns

    • SQLPrimaryKeys

    • SQLForeignKeys

    • SQLGetFunctions

    • SQLProcedures

TRUE: 데이터베이스 및 스키마 인자가 null 인 경우에는 드라이버가 연결 컨텍스트 로 지정된 데이터베이스와 스키마에 대해서만 메타데이터를 검색합니다.

이 상호 작용은 아래 표에 자세히 설명되어 있습니다.

FALSE: 데이터베이스 및 스키마 인자가 null 인 경우에는 드라이버가 계정의 모든 데이터베이스와 스키마에 대한 메타데이터를 검색합니다.

기본값

FALSE

추가 참고 사항

연결 컨텍스트 는 세션에 대한 현재 데이터베이스와 스키마를 참조하는데, 이들은 다음 옵션 중 어느 것이든 사용해 설정할 수 있습니다.

  1. Snowflake에 연결하고 세션을 시작하는 사용자의 기본 네임스페이스를 지정합니다. CREATE USER 또는 ALTER USER 명령을 통해 사용자에 대해 이 네임스페이스를 설정할 수 있지만, 사용자가 연결하기 전에 설정해야 합니다.

  2. 드라이버를 통해 Snowflake에 연결할 때 데이터베이스와 스키마를 지정합니다.

  3. 세션 내에서 USE DATABASE 또는 USE SCHEMA 명령을 실행합니다.

이들 중 둘 이상에서 데이터베이스 또는 스키마를 지정한 경우 가장 최근 항목이 적용됩니다.

CLIENT_METADATA_REQUEST_USE_CONNECTION_CTX가 TRUE 로 설정된 경우 다음과 같습니다.

데이터베이스 인자

스키마 인자

사용된 데이터베이스

사용된 스키마

Null이 아님

Null이 아님

인자

인자

Null이 아님

Null

인자

모든 스키마

Null

Null이 아님

연결 컨텍스트

인자

Null

Null

연결 컨텍스트

세션 컨텍스트

참고

JDBC 드라이버의 경우, 이 동작은 버전 3.6.27 이상에 적용됩니다. ODBC 드라이버의 경우, 이 동작은 버전 2.12.96 이상에 적용됩니다.

연결 컨텍스트 데이터베이스만 검색하지만 해당 데이터베이스 내의 모든 스키마를 검색하려면 CLIENT_METADATA_USE_SESSION_DATABASE 를 참조하십시오.

CLIENT_METADATA_USE_SESSION_DATABASE

타입

세션 — 세션에 대해 설정할 수 있음

데이터 타입

부울

클라이언트

JDBC

설명

이 매개 변수는 CLIENT_METADATA_REQUEST_USE_CONNECTION_CTX 의 영향을 받는 메서드에만 적용됩니다.

이 매개 변수는 다음 조건이 모두 충족될 때만 적용됩니다.

특정 ODBC 함수와 JDBC 메서드의 경우, 이 매개 변수는 기본 검색 범위를 모든 데이터베이스에서 현재 데이터베이스로 변경할 수 있습니다. 검색 범위가 좁을수록 일반적으로 더 적은 수의 행이 반환되고 더 빠르게 실행됩니다.

자세한 내용은 아래 내용을 참조하십시오.

TRUE:

드라이버가 연결 컨텍스트의 데이터베이스에서 모든 스키마를 검색합니다. (연결 컨텍스트 에 대한 자세한 내용은 CLIENT_METADATA_REQUEST_USE_CONNECTION_CTX 에 대한 설명서를 참조하십시오.)

FALSE:

드라이버가 모든 데이터베이스에서 모든 스키마를 검색합니다.

기본값

FALSE

추가 참고 사항

데이터베이스가 null 이고 스키마가 null 이고 CLIENT_METADATA_REQUEST_USE_CONNECTION_CTX 가 FALSE인 경우 다음과 같습니다.

CLIENT_METADATA_USE_SESSION_DATABASE

동작

FALSE

모든 데이터베이스 의 모든 스키마가 검색됩니다.

TRUE

현재 데이터베이스 의 모든 스키마가 검색됩니다.

CLIENT_PREFETCH_THREADS

타입

세션 — 계정 » 사용자 » 세션에 대해 설정할 수 있음

데이터 타입

정수

클라이언트

JDBC, ODBC, Python

설명

클라이언트가 큰 결과 세트를 프리페치하기 위해 사용하는 스레드의 개수를 지정하는 매개 변수입니다. 드라이버는 매개 변수 값을 준수하려고 시도하지만, 성능 개선을 위한 최소값과 최대값(시스템 리소스에 따라 다름)을 정의합니다.

1 ~ 10

기본값

4

대부분의 사용자는 이 매개 변수를 설정할 필요가 없습니다. 사용자가 이 매개 변수를 설정하지 않으면 드라이버가 위에 지정된 기본값으로 시작하지만, 사용 가능한 모든 메모리를 사용하지 않도록 적극적으로 스레드 수를 보수적으로 관리하기도 합니다.

CLIENT_RESULT_CHUNK_SIZE

타입

세션 — 계정 » 사용자 » 세션에 대해 설정할 수 있음

데이터 타입

정수

클라이언트

JDBC

설명

다운로딩할 쿼리 결과의 각 세트(또는 청크)의 최대 크기(MB 단위)를 지정하는 매개 변수입니다. JDBC 드라이버는 쿼리 결과를 청크로 다운로드합니다.

CLIENT_MEMORY_LIMIT 도 참조하십시오.

48 ~ 160

기본값

160

대부분의 사용자는 이 매개 변수를 설정할 필요가 없습니다. 사용자가 이 매개 변수를 설정하지 않으면 드라이버가 위에 지정된 기본값으로 시작하지만, 사용 가능한 모든 메모리를 사용하지 않도록 적극적으로 메모리를 보수적으로 관리하기도 합니다.

CLIENT_RESULT_COLUMN_CASE_INSENSITIVE

타입

세션 — 계정 » 사용자 » 세션에 대해 설정할 수 있음

데이터 타입

부울

클라이언트

JDBC

설명

JDBC의 ResultSet.get* 메서드에서 대/소문자를 구분하지 않고 열 이름과 일치시킬지 여부를 나타내는 매개 변수입니다.

TRUE: 대/소문자를 구분하지 않고 열 이름과 일치합니다.

FALSE: 대/소문자를 구분하여 열 이름과 일치합니다.

기본값

FALSE

CLIENT_SESSION_KEEP_ALIVE

타입

세션 — 계정 » 사용자 » 세션에 대해 설정할 수 있음

데이터 타입

부울

클라이언트

JDBC, ODBC, Python, Node.js

설명

세션에서 일정 기간 동안 활동이 없을 경우 사용자가 강제로 다시 로그인하도록 할지 여부를 나타내는 매개 변수입니다.

TRUE: Snowflake는 사용자의 활동이 없더라도 연결이 활성 상태인 한 세션을 무기한 활성 상태로 유지합니다.

FALSE: 4시간 동안 활동이 없으면 사용자가 다시 로그인해야 합니다.

기본값

FALSE

참고

현재, ALTER SESSION 명령을 실행하여 세션 수준에서 이 매개 변수를 설정할 수 없습니다. 세션 수준에서 매개 변수를 설정하는 자세한 방법은 클라이언트 설명서를 참조하십시오.

CLIENT_SESSION_KEEP_ALIVE_HEARTBEAT_FREQUENCY

타입

세션 — 계정 » 사용자 » 세션에 대해 설정할 수 있음

데이터 타입

정수

클라이언트

SnowSQL, JDBC, Python, Node.js

설명

클라이언트가 세션에 대한 토큰 업데이트를 시도하는 간격(초)입니다.

900 ~ 3600

기본값

3600

CLIENT_TIMESTAMP_TYPE_MAPPING

타입

세션 — 계정 » 사용자 » 세션에 대해 설정할 수 있음

데이터 타입

문자열(상수)

클라이언트

임의

설명

데이터를 로딩하기 위해 바인드 API를 사용하는 JDBC 또는 ODBC 애플리케이션의 타임스탬프 변수를 바인딩할 때 사용할 TIMESTAMP_* 변형 을 지정합니다.

TIMESTAMP_LTZ 또는 TIMESTAMP_NTZ

기본값

TIMESTAMP_LTZ

DATA_RETENTION_TIME_IN_DAYS

타입

오브젝트(데이터베이스, 스키마, 테이블용) — 계정 » 데이터베이스 » 스키마 » 테이블에 대해 설정할 수 있음

데이터 타입

정수

설명

Snowflake가 오브젝트에 대한 Time Travel 작업(SELECT, CLONE, UNDROP)을 수행하기 위해 과거 데이터를 보존하는 일수입니다. 0 의 값은 지정된 데이터베이스, 스키마 또는 테이블에 대한 Time Travel을 효과적으로 비활성화합니다. 자세한 내용은 Time Travel 이해 및 사용하기 섹션을 참조하십시오.

0 또는 1 (Standard Edition용)

0 ~ 90 (Enterprise Edition 이상용)

기본값

1

DATE_INPUT_FORMAT

타입

세션 — 계정 » 사용자 » 세션에 대해 설정할 수 있음

데이터 타입

문자열

설명

DATE 데이터 타입의 입력 형식을 지정합니다. 자세한 내용은 날짜 및 시간 입력/출력 섹션을 참조하십시오.

모든 유효하고 지원되는 날짜 형식 또는 AUTO

(AUTO 는 Snowflake가 세션 중에 시스템에 저장된 날짜 형식을 자동으로 감지하도록 지정함)

기본값

AUTO

DATE_OUTPUT_FORMAT

타입

세션 — 계정 » 사용자 » 세션에 대해 설정할 수 있음

데이터 타입

문자열

설명

DATE 데이터 타입의 표시 형식을 지정합니다. 자세한 내용은 날짜 및 시간 입력/출력 섹션을 참조하십시오.

모든 유효하고 지원되는 날짜 형식

기본값

YYYY-MM-DD

DEFAULT_DDL_COLLATION

타입

오브젝트(데이터베이스, 스키마, 테이블용) — 계정 » 데이터베이스 » 스키마 » 테이블에 대해 설정할 수 있음

데이터 타입

문자열

설명

다음 DDL 작업에 사용되는 기본 데이터 정렬을 설정합니다.

이 매개변수를 설정하면 열에 대한 데이터 정렬이 DDL로 명시적으로 정의되지 않은 한 영향을 받는 오브젝트(테이블, 스키마, 데이터베이스 또는 계정)에서 이후에 생성되는 모든 열이 지정된 데이터 정렬을 기본값으로 갖게 됩니다.

예를 들어, DEFAULT_DDL_COLLATION = 'en-ci' 이면 다음 두 문이 같습니다.

create table test(c1 integer, c2 string, c3 string collate 'en-cs');

create table test(c1 integer, c2 string collate 'en-ci', c3 string collate 'en-cs');

모든 유효하고 지원되는 데이터 정렬 사양.

기본값

빈 문자열

참고

계정에 대한 기본 데이터 정렬을 설정하려면 다음 명령을 사용하십시오.

테이블 열의 기본 데이터 정렬은 생성 중 또는 그 이후 언제든지 테이블, 스키마 또는 데이터베이스 수준에서 설정할 수 있습니다.

ENABLE_UNLOAD_PHYSICAL_TYPE_OPTIMIZATION

타입

세션 — 계정 » 사용자 » 세션에 대해 설정할 수 있음

데이터 타입

부울

설명

논리 열 데이터 타입(즉, 언로딩 SQL 쿼리 또는 원본 테이블에 있는 형식) 또는 언로딩된 열 값(즉, 언로딩 SQL 문 또는 원본 테이블의 출력 열에 있는 값을 지원하는 가장 작은 데이터 타입 및 정밀도)를 기반으로 언로딩된 Parquet 파일의 스키마를 설정할지 여부를 지정합니다.

TRUE: 언로딩된 Parquet 데이터 파일의 스키마는 언로딩 SQL 쿼리 또는 원본 테이블의 열 값으로 결정됩니다. Snowflake는 모든 값을 허용하는 가장 작은 정밀도를 설정하여 테이블 열을 최적화합니다. 언로더는 Parquet 파일에 값을 쓸 때 이 패턴을 따릅니다. 출력 열의 데이터 타입 및 정밀도가 언로딩 SQL 문 또는 원본 테이블의 값을 지원하는 가장 작은 데이터 타입과 정밀도로 설정됩니다. 성능 향상과 데이터 파일 크기를 줄이려면 이 설정을 허용하십시오.

FALSE: 스키마는 논리적 열 데이터 타입에 따라 결정됩니다. 일관된 출력 파일 스키마를 결정하려면 이 값을 설정하십시오.

기본값

TRUE

ENFORCE_SESSION_POLICY

TYPE

계정 — 계정에 대해서만 설정할 수 있음

데이터 타입

부울

설명

클래식 웹 인터페이스 및 쿼리 런타임에서 세션 정책을 시행합니다.

TRUE: 세션 정책 시행을 활성화합니다.

FALSE: 세션 정책 시행을 비활성화합니다.

기본값

FALSE

자세한 내용은 세션 정책 시행 을 참조하십시오.

ERROR_ON_NONDETERMINISTIC_MERGE

타입

세션 — 계정 » 사용자 » 세션에 대해 설정할 수 있음

데이터 타입

부울

설명

MERGE 명령이 여러 원본 행을 조인하는 대상 행을 업데이트하거나 삭제하는 데 사용되고 시스템이 대상 행에서 수행할 작업을 결정할 수 없을 때 오류를 반환할지 여부를 지정합니다.

TRUE: 오류를 일으킨 대상 행 중 하나의 값을 포함하는 오류가 반환됩니다.

FALSE: 오류가 반환되지 않고 병합이 성공적으로 완료되지만, 병합의 결과가 비결정적입니다.

기본값

TRUE

ERROR_ON_NONDETERMINISTIC_UPDATE

타입

세션 — 계정 » 사용자 » 세션에 대해 설정할 수 있음

데이터 타입

부울

설명

UPDATE 명령이 여러 원본 행을 조인하는 대상 행을 업데이트하는 데 사용되고 시스템이 대상 행에서 수행할 작업을 결정할 수 없을 때 오류를 반환할지 여부를 지정합니다.

TRUE: 오류를 일으킨 대상 행 중 하나의 값을 포함하는 오류가 반환됩니다.

FALSE: 아무런 오류도 반환되지 않고 업데이트가 완료되지만, 업데이트의 결과는 비결정적입니다.

기본값

FALSE

EXTERNAL_OAUTH_ADD_PRIVILEGED_ROLES_TO_BLOCKED_LIST

타입

계정 — 계정에 대해서만 설정할 수 있음

데이터 타입

부울

설명

External OAuth 인증 서버의 액세스 토큰을 기반으로 Snowflake 세션을 생성할 때 ACCOUNTADMIN 및 SECURITYADMIN 역할을 기본 역할로 사용할 수 있는지 결정합니다.

TRUE: ACCOUNTADMIN 및 SECURITYADMIN 역할이 External OAuth 보안 통합의 EXTERNAL_OAUTH_BLOCKED_ROLES_LIST 속성에 추가되는데, 이는 External OAuth 인증을 사용하여 Snowflake 세션을 생성할 때 이러한 역할을 기본 역할로 사용할 수 없다는 뜻입니다.

FALSE: External OAuth 보안 통합의 EXTERNAL_OAUTH_BLOCKED_ROLES_LIST 속성에 의해 정의된 차단된 역할 목록에서 ACCOUNTADMIN과 SECURITYADMIN을 제거합니다.

기본값

TRUE

GEOGRAPHY_OUTPUT_FORMAT

타입

세션 — 계정 » 사용자 » 세션에 대해 설정할 수 있음

데이터 타입

문자열(상수)

설명

GEOGRAPHY 값 의 표시 형식입니다.

EWKT와 EWKB의 경우, SRID는 출력에서 항상 4326입니다. EWKT 및 EWKB 처리에 관한 참고 사항 을 참조하십시오.

GeoJSON, WKT, WKB, EWKT 또는 EWKB

기본값

GeoJSON

GEOMETRY_OUTPUT_FORMAT

타입

세션 — 계정 » 사용자 » 세션에 대해 설정할 수 있음

데이터 타입

문자열(상수)

설명

GEOMETRY 값 의 표시 형식입니다.

GeoJSON, WKT, WKB, EWKT 또는 EWKB

기본값

GeoJSON

INITIAL_REPLICATION_SIZE_LIMIT_IN_TB

타입

계정 — 계정에 대해서만 설정할 수 있음

데이터 타입

숫자.

설명

기본 데이터베이스를 보조 데이터베이스로 처음 복제할 때의 최대 예상 크기 제한을 설정합니다(TB 단위로). 보조 데이터베이스를 저장하는 모든 계정에서 이 매개 변수를 설정합니다. 이 크기 제한은 계정에서 뜻하지 않게 큰 데이터베이스 복제 요금이 발생하지 않도록 하는 데 도움이 됩니다.

크기 제한을 제거하려면 이 값을 0.0 으로 설정하십시오.

참고로, 현재 보조 데이터베이스의 후속 새로 고침에 적용되는 기본 크기 제한은 없습니다.

소수 자릿수가 1개 이상인 0.0 이상의 값(예: 20.5, 32.25, 33.333 등).

기본값

10.0

JDBC_TREAT_DECIMAL_AS_INT

타입

세션 — 계정 » 사용자 » 세션에 대해 설정할 수 있음

데이터 타입

부울

설명

JDBC가 소수 자릿수가 0개(0)인 열을 처리하는 방법을 지정합니다.

TRUE: JDBC는 소수 자릿수가 0개인 열을 BIGINT로 처리합니다.

FALSE: JDBC는 소수 자릿수가 0개인 열을 DECIMAL로 처리합니다.

기본값

TRUE

JDBC_TREAT_TIMESTAMP_NTZ_AS_UTC

타입

세션 — 계정 » 사용자 » 세션에 대해 설정할 수 있음

데이터 타입

부울

설명

JDBC가 TIMESTAMP_NTZ 값을 처리하는 방법을 지정합니다.

기본적으로, JDBC 드라이버가 Snowflake에서 TIMESTAMP_NTZ 유형의 값을 가져오면 드라이버는 UTC의 값을 사용자의 세션을 기준으로 현재 타임존으로 변환합니다.

TIMESTAMP_NTZ 값을 UTC로 유지하려는 사용자는 이 매개 변수를 TRUE로 설정할 수 있습니다.

이 매개 변수는 JDBC 드라이버에만 적용됩니다.

TRUE: 드라이버가 TIMESTAMP_NTZ 값을 변경하지 않고, 값이 UTC로 유지됩니다.

FALSE: 드라이버가 TIMESTAMP_NTZ 값을 UTC에서 사용자의 현재 타임존으로 변환합니다.

기본값

FALSE

JDBC_USE_SESSION_TIMEZONE

타입

세션 — 계정 » 사용자 » 세션에 대해 설정할 수 있음

데이터 타입

부울

설명

JDBC 드라이버가 ResultSet 클래스의 getDate(), getTime()getTimestamp() 메서드에 대해 JVM의 타임존을 사용할지, (TIMEZONE 매개 변수로 지정된) 세션의 타임존을 사용할지 지정합니다.

TRUE: JDBC 드라이버가 세션의 타임존을 사용합니다.

FALSE: JDBC 드라이버가 JVM의 타임존을 사용합니다.

기본값

TRUE

JSON_INDENT

타입

세션 — 계정 » 사용자 » 세션에 대해 설정할 수 있음

데이터 타입

정수

설명

세션의 JSON 출력에서 각각의 새 요소를 들여쓸 공백의 수를 지정합니다. 또한, 각 요소 뒤에 줄 바꿈 문자를 삽입할지 여부도 지정합니다.

0 ~ 16

(0 의 값을 지정하면 출력에서 모든 공백과 줄 바꿈 문자를 제거하여 축소된 출력이 반환됨)

기본값

2

참고

이 매개 변수는 COPY INTO <위치> 명령을 사용해 테이블에서 파일로 언로딩되는 JSON에 영향을 주지 않습니다. 이 명령은 JSON 데이터를 항상 ndjson 형식으로 언로딩합니다.

  • 줄 바꿈 문자로 구분된 테이블의 각 레코드.

  • 각 레코드 내에서 압축 서식 지정(즉, 공백이나 줄 바꿈 문자 없음).

JS_TREAT_INTEGER_AS_BIGINT

타입

세션 — 세션에 대해 설정할 수 있음

데이터 타입

부울

설명

Snowflake Node.js 드라이버가 소수 자릿수가 0(0)인 숫자 열을 처리하는 방식을 지정합니다(예: INTEGER 또는 NUMBER(p, 0)).

TRUE: JavaScript는 소수 자릿수가 0개인 열을 Bigint로 처리합니다.

FALSE: JavaScript는 소수 자릿수가 0개인 열을 Number로 처리합니다.

기본값

FALSE

참고

기본적으로, Snowflake INTEGER 열(BIGINT, NUMBER(p, 0) 등 포함)은 JavaScript의 Number 데이터 타입으로 변환됩니다. 하지만 가장 큰 올바른 Snowflake 정수 값은 가장 큰 올바른 JavaScript Number 값보다 큽니다. Snowflake INTEGER 열을 JavaScript Number보다 큰 값을 저장할 수 있는 JavaScript Bigint로 변환하려면 세션 매개 변수 JS_TREAT_INTEGER_AS_BIGINT를 설정합니다.

이 매개 변수를 사용하는 방법의 예는 정수 데이터 타입을 Bigint로 가져오기 를 참조하십시오.

LOCK_TIMEOUT

타입

세션 — 계정 » 사용자 » 세션에 대해 설정할 수 있음

데이터 타입

Number

설명

시간이 초과되어 문을 중단하기 전에 리소스를 잠그려 하는 동안 대기할 시간(초)입니다.

0 에서 임의의 숫자(즉, 제한 없음). 0 값은 잠금 대기를 비활성화합니다(즉, 이 문은 즉시 잠금을 획득하거나 중단해야 하는데, 문에서 여러 리소스를 잠가야 할 경우 시간 제한은 각각의 잠금 시도에 별도로 적용됩니다.

기본값

43200 (즉, 12시간)

MAX_CONCURRENCY_LEVEL

타입

오브젝트(웨어하우스용) — 계정 » 웨어하우스에 대해 설정할 수 있음

데이터 타입

Number

설명

웨어하우스에서 실행되는 SQL 문의 동시성 수준(즉, 쿼리와 DML)을 지정합니다. 이 수준에 도달할 때 수행되는 작업은 웨어하우스가 단일 클러스터 또는 멀티 클러스터 웨어하우스인지 여부에 따라 다릅니다.

  • 단일 클러스터 또는 멀티 클러스터(최대화 모드에서): 이미 할당된 리소스가 해제되거나 추가 리소스가 프로비저닝될 때까지 문이 큐에 추가되며, 이는 웨어하우스의 크기를 늘려서 수행할 수 있습니다.

  • 멀티 클러스터(자동 크기 조정 모드에서): 추가 클러스터가 시작됩니다.

웨어하우스가 백로그되지 않도록 STATEMENT_QUEUED_TIMEOUT_IN_SECONDS 매개 변수와 함께 MAX_CONCURRENCY_LEVEL을 사용할 수 있습니다.

이 매개 변수는 웨어하우스 클러스터에서 동시에 실행할 수 있는 문의 수를 제한하지 않습니다. 대신, 리소스의 초과 할당을 방지하기 위한 상한 역할을 합니다. 각 문이 웨어하우스에 제출될 때 Snowflake는 문 실행을 위한 리소스를 할당합니다. 사용 가능한 리소스가 충분하지 않으면 웨어하우스에 따라 문이 큐에 추가되거나 추가 클러스터가 시작됩니다.

웨어하우스에서 동시에 실행되는 문의 실제 개수는 지정된 수준보다 많거나 적을 수 있습니다.

  • 더 작고 더 기본적인 문: 작은 문은 일반적으로 웨어하우스에서 사용 가능한 컴퓨팅 리소스의 서브세트에서 실행되므로 더 많은 문이 동시에 실행될 수 있습니다. 즉, 동시성 수준의 방향으로 분수로만 계산된다는 뜻입니다.

  • 더 크고 더 복잡한 문: 더 적은 수의 문이 동시에 실행될 수 있습니다.

기본값

8

이 값은 기본값 일 뿐이며, 언제든지 변경할 수 있습니다.

  • 웨어하우스에 대한 동시성 수준을 낮추면 문당 컴퓨팅 리소스 할당이 증가하여 특히 크고 복잡한 다중 문 쿼리의 경우 쿼리 성능이 더 향상될 가능성이 있습니다.

  • 웨어하우스의 동시성 수준을 높이면 문당 컴퓨팅 리소스 할당이 감소합니다. 하지만 웨어하우스에서 실행할 수 있는 동시 쿼리 총수를 반드시 제한하지 않으며, 실행 중인 쿼리의 특성에 따라 달라지는 전체 웨어하우스 성능을 반드시 향상하는 것도 아닙니다.

앞서 설명한 것처럼, Snowflake는 큐 대기를 방지하기 위해 멀티 클러스터 웨어하우스 내에서 새 클러스터를 자동으로 시작하므로 이 매개 변수는 (자동 크기 조정 모드에서) 멀티 클러스터 웨어하우스에 영향을 미칩니다. 따라서 (자동 크기 조정 모드에서) 멀티 클러스터 웨어하우스의 동시성 수준을 낮추면 언제든지 활성 클러스터 수가 증가할 가능성이 있습니다.

또한, Snowflake는 각 문이 제출될 때 각 문을 위한 리소스를 자동으로 할당하며 할당된 양은 문의 개별 요구 사항에 따라 결정됩니다. 이를 기반으로 시간 경과에 따른 사용자 쿼리 패턴을 관찰해 성능과 리소스 사용량의 균형을 이루는 기본값을 선택했습니다.

따라서 기본값을 변경하기 전에 이 매개 변수를 조금씩 증가시키며 조정하면서 대표적인 쿼리 세트에 대한 영향을 관찰하여 변경 사항을 테스트 하는 것이 좋습니다.

MAX_DATA_EXTENSION_TIME_IN_DAYS

타입

오브젝트(데이터베이스, 스키마, 테이블용) — 계정 » 데이터베이스 » 스키마 » 테이블에 대해 설정할 수 있음

데이터 타입

정수

설명

Snowflake가 테이블의 스트림이 부실해지는 것을 방지하기 위해 테이블의 데이터 보존 기간을 연장할 수 있는 최대 일수입니다. 기본적으로, 원본 테이블의 DATA_RETENTION_TIME_IN_DAYS 설정이 14일 미만이고 스트림을 사용한 적 없다면 계정의 Snowflake 에디션 과 관계없이 Snowflake는 이 기간을 일시적으로 최대 14일까지 스트림의 오프셋으로 연장합니다. 데이터 보존 또는 규정 준수를 위해 저장소 비용을 제어해야 할 경우 MAX_DATA_EXTENSION_TIME_IN_DAYS 매개 변수를 사용하여 자동 연장 기간을 제한할 수 있습니다.

이 매개 변수는 계정, 데이터베이스, 스키마, 테이블 수준에서 설정할 수 있습니다. 계정 또는 스키마 수준에서 이 매개 변수를 설정하면 매개 변수가 아직 더 낮은 수준(예: 테이블 소유자가 테이블 수준)에서 명시적으로 설정하지 않은 테이블에만 영향을 미칩니다. 0 의 값은 지정된 데이터베이스, 스키마 또는 테이블에 대한 자동 확장을 효과적으로 비활성화합니다. 스트림과 부실에 대한 자세한 내용은 테이블 스트림을 사용한 변경 내용 추적 를 참조하십시오.

0 ~ 90 (즉, 90일) — 0 의 값으로 설정하면 데이터 보존 기간의 자동 연장이 비활성화됩니다. 계정에서 테이블의 최댓값을 늘리려면 Snowflake 지원 에 문의하십시오.

기본값

14

참고

이 매개 변수로 인해 데이터가 기본 데이터 보존 기간보다 더 오래 보존될 수 있습니다. 이 값을 늘리기 전에 새 값이 규정 준수 요구 사항에 부합하는지 확인하십시오.

MULTI_STATEMENT_COUNT

타입

세션 — 계정 » 사용자 » 세션에 대해 설정할 수 있음

데이터 타입

정수(상수)

클라이언트

SQL API, JDBC, ODBC

설명

다중 문 기능을 사용할 때 실행할 문의 개수입니다.

0: 문의 가변 개수.

1: 한 개의 문.

1 초과: MULTI_STATEMENT_COUNT가 세션 매개 변수로 설정되어 있는 경우, 실행할 문장의 정확한 수를 지정할 수 있습니다.

음수는 허용되지 않습니다.

기본값

1

MIN_DATA_RETENTION_TIME_IN_DAYS

타입

계정 — 계정에 대해서만 설정할 수 있음

데이터 타입

정수

설명

오브젝트에서 Time Travel 작업(SELECT, CLONE, UNDROP)을 수행하기 위해 Snowflake가 과거 데이터를 보존하는 최소 일수. 최소 데이터 보존 일수가 계정에 설정되면 오브젝트의 데이터 보존 기간은 MAX(DATA_RETENTION_TIME_IN_DAYS, MIN_DATA_RETENTION_TIME_IN_DAYS)에 따라 결정됩니다.

자세한 내용은 Time Travel 이해 및 사용하기 섹션을 참조하십시오.

0 또는 1 (Standard Edition용)

0 ~ 90 (Enterprise Edition 이상용)

기본값

0

참고

  • 이 매개 변수는 영구 테이블에만 적용되며 다음 오브젝트에는 적용되지 않습니다.

    • 일시적 테이블

    • 임시 테이블

    • 외부 테이블

    • 구체화된 뷰

    • 스트림

  • 이 매개 변수는 계정 관리자(즉, ACCOUNTADMIN 역할을 가진 사용자 또는 ACCOUNTADMIN 역할의 권한이 부여된 다른 역할)만 설정 및 설정 해제할 수 있습니다.

  • 최소 데이터 보존 시간을 설정해도 데이터베이스, 스키마 또는 테이블에 설정된 기존 DATA_RETENTION_TIME_IN_DAYS 매개 변수 값은 변경되지 않습니다. 데이터베이스, 스키마 또는 테이블의 유효 보존 시간은 MAX(DATA_RETENTION_TIME_IN_DAYS, MIN_DATA_RETENTION_TIME_IN_DAYS)입니다.

NETWORK_POLICY

타입

계정 — 계정에 대해서만 설정 가능(계정 관리자와 보안 관리자가 설정할 수 있음)

타입

오브젝트(사용자용) — 계정 » 사용자에 대해 설정할 수 있음

데이터 타입

문자열

설명

계정에 적용할 네트워크 정책을 지정합니다. 네트워크 정책은 사용자의 IP 주소를 기준으로 계정에 대한 액세스를 제한할 수 있습니다. 자세한 내용은 네트워크 정책 섹션을 참조하십시오.

(CREATE NETWORK POLICY 를 사용해 만든) 기존 네트워크 정책

기본값

없음

참고

이것은 보안 관리자(즉, SECURITYADMIN 시스템 역할을 가진 사용자) 이상이 설정할 수 있는 유일한 계정 매개 변수입니다.

SHARE_RESTRICTIONS

타입

오브젝트(공유용) — 공유에 대해 설정 가능합니다.

데이터 타입

부울

설명

이 매개 변수는 데이터 공유에만 적용되며, Business Critical 이외의 컨슈머 계정을 Business Critical 공급자 계정에 속하는 공유에 추가할지 여부를 지정합니다. 자세한 내용은 Business Critical 계정에서 Business Critical 외 계정으로 공유 활성화하기 섹션을 참조하십시오.

FALSE: Business Critical 이외의 컨슈머 계정을 Business Critical 공급자 계정에 속하는 공유에 추가할 수 있습니다.

TRUE: Business Critical 이외의 컨슈머 계정을 Business Critical 공급자 계정에 속하는 공유에 추가할 수 없습니다.

기본값

TRUE

참고

이 매개 변수는 계정 수준에서 설정할 수 없습니다.

PERIODIC_DATA_REKEYING

타입

계정 — 계정에 대해서만 설정할 수 있음

데이터 타입

부울

설명

이 매개 변수는 Enterprise Edition 이상에만 적용되며, 추가적인 데이터 보호 수준을 제공하기 위해 매년 새 키로 테이블 데이터의 재암호화를 활성화/비활성화합니다.

언제든지 키 재생성을 활성화하고 비활성화할 수 있습니다. 키 재생성을 활성화/비활성화해도 암호화된 데이터에 공백이 발생하지 않습니다.

  • 키 재생성이 일정 기간 동안 활성화되었다가 비활성화되면 이미 키 재생성을 위해 태그가 지정된 모든 데이터가 다시 입력되지만, 다시 활성화할 때까지 데이터는 추가로 다시 입력되지 않습니다.

  • 키 재생성이 다시 활성화되면 Snowflake는 기준을 충족하는 키가 있는 모든 데이터를 자동으로 다시 입력합니다(예: 키가 1년 이상 됨).

암호화된 데이터의 키 재생성에 대한 자세한 내용은 데이터 암호화 를 참조하십시오.

TRUE: 데이터를 마지막으로 암호화한 후 1년이 지나면 데이터가 다시 입력됩니다. 키 재생성은 백그라운드에서 이루어지므로 다운타임이 전혀 발생하지 않고 영향을 받는 데이터/테이블을 항상 사용할 수 있습니다.

FALSE: 데이터가 다시 입력되지 않습니다.

기본값

FALSE

참고

데이터 키를 다시 입력한 후 이전 데이터(이전 키 암호화 포함)가 표준 기간(7일) 동안 Fail-safe로 유지되므로 데이터 키 재생성과 관련된 요금이 있습니다. 이러한 이유로, 주기적 키 재생성은 기본적으로 비활성화됩니다. 주기적인 키 재생성을 활성화하려면 명시적으로 활성화해야 합니다.

또한, 키 재생성의 Fail-safe 요금은 월간 명세서에 개별적으로 나열되지 않으며, 매달 계정의 Fail-safe 합계에 포함됩니다.

Fail-safe에 대한 자세한 내용은 Fail-safe 이해 및 보기 를 참조하십시오.

PIPE_EXECUTION_PAUSED

타입

오브젝트 — 계정 » 스키마 » 파이프에 대해 설정할 수 있습니다.

데이터 타입

부울

설명

주로 다른 역할로의 파이프 소유권 이전을 준비할 때 실행 중인 파이프를 일시 중지할지 여부를 지정합니다.

  • 계정 관리자(ACCOUNTADMIN 역할의 사용자)는 계정 수준에서 이 매개 변수를 설정하여 계정의 모든 파이프를 효과적으로 일시 중지하거나 다시 시작할 수 있습니다.

  • 스키마에 대한 MODIFY 권한이 있는 사용자는 스키마에서 모든 파이프를 일시 중지하거나 다시 시작할 수 있습니다.

  • 파이프 소유자는 파이프에 대해 이 매개 변수를 설정할 수 있습니다.

계정 또는 스키마 수준에서 이 매개 변수를 설정하면 매개 변수가 아직 더 낮은 수준(예: 파이프 소유자가 파이프 수준)에서 명시적으로 설정하지 않은 파이프에만 영향을 미칩니다.

이에 따라 파이프 소유자가 개별 파이프를 계속 실행할 수 있는 동안에도 계정 관리자는 계정 수준에서 모든 파이프를 일시 중지할 수 있는 실용적인 사용 사례를 구현할 수 있습니다.

TRUE: 파이프를 일시 중지합니다. 매개 변수가 이 값으로 설정될 때 SYSTEM$PIPE_STATUS 함수는 executionStatePAUSED 로 표시합니다. 파이프 소유자는 일시 중지된 파이프에 파일을 계속 제출할 수 있지만, 파이프가 다시 시작될 때까지는 파일이 처리되지 않습니다.

FALSE: 파이프를 재개하지만, 파이프가 일시 중지된 동안 파이프 소유권이 이전되지 않은 경우에만 그러합니다. 매개 변수가 이 값으로 설정될 때 SYSTEM$PIPE_STATUS 함수는 executionStateRUNNING 으로 표시합니다.

파이프가 일시 중지된 후 파이프의 소유권이 다른 역할로 이전된 경우 이 매개 변수를 사용해 파이프를 재개할 수 없습니다. 대신 SYSTEM$PIPE_FORCE_RESUME 함수를 사용해 파이프가 재개하도록 명시적으로 강제 적용 합니다.

이를 통해 새 소유자는 SYSTEM$PIPE_STATUS 를 사용해 파이프 상태를 평가한 후(예: 로딩 대기 중인 파일의 개수 결정) 파이프를 재개할 수 있습니다.

기본값

FALSE (파이프가 기본적으로 실행 중임)

참고

일반적으로, 소유권 이전을 제외하면 파이프를 일시 중지할 필요가 없습니다.

PREVENT_UNLOAD_TO_INLINE_URL

타입

계정 — 계정에 대해서만 설정할 수 있음

데이터 타입

부울

설명

외부 클라우드 저장소 위치에 대한 애드혹 데이터 언로딩 작업을 방지할지 여부를 지정합니다(즉, 문에서 직접 클라우드 저장소 URL과 액세스 설정을 지정하는 COPY INTO <위치> 문). 예를 보려면 테이블에서 외부 위치의 파일로 직접 데이터 언로딩 를 참조하십시오.

TRUE: COPY INTO <위치> 문은 명명된 내부(Snowflake) 또는 외부 스테이지 또는 내부 사용자 또는 테이블 스테이지 중 하나 를 참조해야 합니다. 명명된 외부 스테이지는 클라우드 저장소 URL 및 이 정의 내에 있는 액세스 설정을 저장해야 합니다.

FALSE: 외부 클라우드 저장소 위치에 대한 임시 데이터 언로딩 작업이 허용됩니다.

기본값

FALSE

PREVENT_UNLOAD_TO_INTERNAL_STAGES

타입

사용자 — 계정 » 사용자에 대해 설정할 수 있음

데이터 타입

부울

설명

COPY INTO <위치> 문을 사용해 내부(Snowflake) 스테이지에 대한 데이터 언로딩 작업을 방지할지 여부를 지정합니다.

TRUE: Snowflake 테이블에서 사용자 스테이지, 테이블 스테이지 또는 명명된 내부 스테이지를 포함한 모든 내부 스테이지로 데이터를 언로딩할 수 없습니다.

FALSE: 내부 스테이지로 데이터를 언로딩하는 것은 허용되며 스테이지 유형의 기본 제한에 의해서만 제한됩니다.

  • 현재 사용자는 자신의 사용자 스테이지로만 데이터를 언로딩할 수 있습니다.

  • 사용자는 자신에게 주어진 유효한 역할이 테이블에 대한 OWNERSHIP 권한을 가지고 있을 때만 데이터를 테이블 스테이지로 언로딩할 수 있습니다.

  • 사용자는 자신에게 주어진 유효한 역할이 스테이지에 대한 WRITE 권한을 가지고 있을 때만 데이터를 명명된 내부 스테이지로 언로딩할 수 있습니다.

기본값

FALSE

QUERY_TAG

타입

세션 — 계정 » 사용자 » 세션에 대해 설정할 수 있음

데이터 타입

문자열(최대 2,000자)

설명

세션 내에서 실행되는 쿼리 및 기타 SQL 문에 태그를 지정하는 데 사용할 수 있는 선택적 문자열입니다. 태그는 QUERY_HISTORY , QUERY_HISTORY_BY_* 함수의 출력에 표시됩니다.

기본값

없음

QUOTED_IDENTIFIERS_IGNORE_CASE

타입

세션 — 계정 » 사용자 » 세션에 대해 설정할 수 있음

오브젝트 — 계정 » 데이터베이스 » 스키마 » 테이블에 대해 설정할 수 있음

데이터 타입

부울

설명

큰따옴표로 묶인 오브젝트 식별자의 문자를 대문자로 저장하고 확인할지 여부를 지정합니다. 기본적으로, Snowflake는 큰따옴표로 묶인 식별자를 저장하고 확인할 때 영문자의 대/소문자를 유지합니다. (식별자 확인 을 참조하십시오.) 서드 파티 애플리케이션이 항상 식별자 주위에 큰따옴표를 사용하는 상황에서 이 매개 변수를 사용할 수 있습니다.

참고

이 매개 변수를 기본값에서 다른 값으로 변경하면 이전에 큰 따옴표로 묶이고 대/소문자가 혼합된 식별자로 생성된 오브젝트를 찾는 기능에 영향을 줄 수 있습니다. 매개 변수 변경의 영향 섹션을 참조하십시오.

테이블, 스키마 또는 데이터베이스에 대해 설정 시, 해당 설정은 뷰와 사용자 정의 함수(UDFs)의 본문에 있는 테이블 이름의 평가에만 영향을 줍니다. 계정에서 대/소문자를 구분하지 않는 것으로 취급해야 하는 큰따옴표로 묶인 식별자를 사용하고 큰따옴표로 묶인 식별자를 대/소문자를 구분하는 것으로 취급하는 계정과 뷰나 UDF를 공유할 계획인 경우, 공유하려는 뷰나 UDF에서 이를 설정할 수 있습니다. 이를 통해 다른 계정으로 뷰나 UDF에서 테이블 이름을 올바르게 확인할 수 있습니다.

TRUE: 큰따옴표로 묶인 식별자의 문자는 대문자로 저장되고 확인됩니다.

FALSE: 큰따옴표로 묶인 식별자의 대/소문자가 유지됩니다. Snowflake는 지정된 대/소문자 형식으로 식별자를 확인하고 저장합니다.

자세한 내용은 식별자 확인 섹션을 참조하십시오.

기본값

FALSE

예:

식별자

FALSE 로 설정된 매개 변수(기본값)

TRUE 로 설정된 매개 변수

"columnname"

다음으로 확인됨:

columnname

COLUMNNAME

"columnName"

다음으로 확인됨:

columnName

COLUMNNAME

"ColumnName"

다음으로 확인됨:

ColumnName

COLUMNNAME

"COLUMNNAME"

다음으로 확인됨:

COLUMNNAME

COLUMNNAME

REQUIRE_STORAGE_INTEGRATION_FOR_STAGE_CREATION

타입

계정 — 계정에 대해서만 설정할 수 있음

데이터 타입

부울

설명

사설 클라우드 저장소 위치에 액세스하기 위해 (CREATE STAGE 를 사용해) 명명된 외부 스테이지를 만들 때 저장소 통합 오브젝트를 클라우드 자격 증명으로 요구할지 여부를 지정합니다.

TRUE: 사설 클라우드 저장소 위치에 액세스하기 위한 외부 스테이지를 만들려면 저장소 통합 오브젝트를 클라우드 자격 증명으로 참조해야 합니다.

FALSE: 외부 스테이지를 만들려고 저장소 통합 오브젝트를 참조할 필요는 없습니다. 대신에 사용자는 시크릿 키 또는 액세스 토큰과 같은 명시적 클라우드 공급자 자격 증명이 저장소 위치에 대해 구성된 경우 이러한 자격 증명을 참조할 수 있습니다.

기본값

FALSE

REQUIRE_STORAGE_INTEGRATION_FOR_STAGE_OPERATION

타입

계정 — 계정에 대해서만 설정할 수 있음

데이터 타입

부울

설명

사설 클라우드 저장소 위치에서 데이터를 로딩하거나 이 위치에 데이터를 언로딩할 때 저장소 통합 오브젝트를 클라우드 자격 증명으로 참조하는 명명된 외부 스테이지를 사용해야 할지 여부를 지정합니다.

TRUE: 사설 클라우드 저장소 위치에서 데이터를 로딩하거나 이 위치에 언로딩하려면 저장소 통합 오브젝트를 참조하는 명명된 외부 스테이지를 사용해야 합니다. 시크릿 키 또는 액세스 토큰과 같은 명시적 클라우드 공급자 자격 증명을 참조하는 명명된 외부 스테이지를 지정하면 사용자 오류가 발생합니다.

FALSE: 사용자가 명시적 클라우드 공급자 자격 증명을 참조하는 명명된 외부 스테이지를 사용해 사설 클라우드 저장소 위치에서 데이터를 로딩하거나 이 위치에 데이터를 언로딩할 수 있습니다.

PREVENT_UNLOAD_TO_INLINE_URL 이 FALSE인 경우에는 사용자가 COPY 문에서 직접 명시적 클라우드 공급자 자격 증명을 지정할 수 있습니다.

기본값

FALSE

ROWS_PER_RESULTSET

타입

세션 — 계정 » 사용자 » 세션에 대해 설정할 수 있음

데이터 타입

Number

설명

결과 세트에서 반환되는 최대 행 수를 지정합니다.

임의의 숫자에 대해 0 (즉, 제한 없음) — 0 의 값은 최대값을 지정하지 않습니다.

기본값

0

SAML_IDENTITY_PROVIDER

타입

계정 — 계정에 대해서만 설정할 수 있음

데이터 타입

JSON

설명

페더레이션 인증을 활성화합니다. 이 매개 변수에서는 다음 필드와 함께 작은따옴표로 묶인 JSON 오브젝트가 허용됩니다.

{
  "certificate": "",
  "issuer": "",
  "ssoUrl": "",
  "type"  : "",
  "label" : ""
}

여기서:

certificate

IdP와 Snowflake 사이의 통신을 확인하는 인증서(IdP에서 생성됨)를 지정합니다.

issuer

IdP의 발급자/EntityID를 나타냅니다.

선택 사항입니다.

Okta와 ADFS에서 이 값을 가져오는 방법에 대한 자세한 내용은 페더레이션 인증을 사용하도록 Snowflake 구성하기 를 참조하십시오.

ssoUrl

Snowflake가 SAML 요청을 전송하는 URL 엔드포인트(IdP에서 제공함)를 지정합니다.

type

페더레이션 인증에 사용되는 IdP의 유형을 지정합니다("OKTA" , "ADFS" , "Custom").

label

Snowflake 로그인 페이지에 IdP에 대한 버튼 텍스트를 지정합니다. 기본 레이블은 Single Sign On 입니다. 기본 레이블을 변경하는 경우 지정되는 레이블에는 영숫자 문자(즉, 현재 특수 문자 및 공백은 지원되지 않음)만 포함할 수 있습니다.

"type" 필드가 "Okta" 인 경우, Snowflake가 버튼에 Okta 로고를 표시하므로 label 필드에 대한 값을 지정할 필요가 없음에 유의하십시오.

매개 변수 설정 예를 포함한 자세한 내용은 페더레이션 인증을 사용하도록 Snowflake 구성하기 를 참조하십시오.

기본값

없음

SIMULATED_DATA_SHARING_CONSUMER

타입

세션 — 계정 » 사용자 » 세션에 대해 설정할 수 있음

데이터 타입

문자열

설명

공유 데이터, 특히 공유 보안 뷰를 테스트/유효성 검사하기 위해 시뮬레이션할 컨슈머 계정의 이름을 지정합니다. 이 매개 변수가 세션에 설정되어 있으면 공유 뷰가 공급자 계정이 아닌 지정된 컨슈머 계정에서 실행되는 것처럼 행을 반환합니다.

참고

현재 SIMULATED_DATA_SHARING_CONSUMER 세션 매개 변수는 보안 뷰 및 보안 구체화 뷰만 지원하며 보안 UDFs는 지원하지 않습니다.

또한 현재 역할이 뷰의 소유자인 경우에만 시뮬레이션이 성공합니다. 현재 역할이 뷰를 소유하지 않은 경우에는 다음 오류가 발생하며 시뮬레이션이 실패합니다.

Shared view consumer simulation requires that the executing role owns the view.

자세한 내용은 Secure Data Sharing 소개공유 관련 작업하기 섹션을 참조하십시오.

기본값

없음

중요

이것은 세션 매개 변수인데, 즉 계정 수준에서 설정할 수 있다는 의미입니다. 하지만 이 매개 변수는 공유 뷰에 대한 테스트 쿼리에만 적용됩니다. 이 매개 변수는 세션의 모든 쿼리에 영향을 미치므로 절대로 계정 수준에서 설정하면 안 됩니다.

SSO_LOGIN_PAGE

타입

계정 — 계정에 대해서만 설정할 수 있음

데이터 타입

부울

설명

사용자에게 배포하기 전에 (페더레이션 인증을 활성화한 후) SSO 테스트를 위해 미리 보기 모드를 비활성화합니다.

TRUE: 미리 보기 모드가 비활성화되고 (SAML_IDENTITY_PROVIDER 에 지정된 것처럼) Snowflake 기본 로그인 페이지에 ID 공급자에 대해 Snowflake에서 시작한 SSO에 대한 버튼이 사용자에게 표시됩니다.

FALSE: 미리 보기 모드가 활성화되고 다음 URL을 사용해 SSO를 테스트할 수 있습니다.

  • 계정이 US 서부에 있는 경우: https://<계정_식별자>.snowflakecomputing.com/console/login?fedpreview=true

  • 계정이 다른 리전에 있는 경우: https://<계정_식별자>.<리전_id>.snowflakecomputing.com/console/login?fedpreview=true

자세한 내용은 다음을 참조하십시오.

기본값

FALSE

STATEMENT_QUEUED_TIMEOUT_IN_SECONDS

타입

세션 오브젝트(웨어하우스용)

계정 » 사용자 » 세션에 대해 설정할 수 있고, 개별 웨어하우스에 대해서도 설정할 수 있음

데이터 타입

Number

설명

시스템에서 SQL 문(쿼리, DDL, DML 등)을 취소하기 전에 이 문이 웨어하우스에 대해 큐에 남아 있는 시간(초)입니다. 웨어하우스가 백로그되지 않도록 MAX_CONCURRENCY_LEVEL 매개 변수와 함께 이 매개 변수를 사용할 수 있습니다.

이 매개 변수는 세션 계층 구조 내에서 설정할 수 있습니다. 또한, 웨어하우스가 처리하는 모든 SQL 문에 대한 큐 시간 제한을 제어하도록 설정할 수도 있습니다. 웨어하우스와 세션에 대해 모두 이 매개 변수를 설정하면 0이 아닌 가장 낮은 값이 적용됩니다. 예:

  • 웨어하우스의 큐 시간 제한은 120초입니다.

  • 세션의 큐 시간 제한은 60초로 설정되어 있습니다.

세션 시간 제한이 우선 적용됩니다(즉, 세션에서 제출된 모든 문은 60초 이상 큐에서 대기한 후 취소됨).

참고

작업 의 실행을 위해, USER_TASK_TIMEOUT_MS 작업 매개 변수가 STATEMENT_QUEUED_TIMEOUT_IN_SECONDS 설정보다 우선합니다.

이 두 매개 변수의 값을 비교할 때 STATEMENT_QUEUED_TIMEOUT_IN_SECONDS는 초 단위를 사용하는 반면, USER_TASK_TIMEOUT_MS는 밀리초 단위로 설정된다는 점을 유념하십시오.

USER_TASK_TIMEOUT_MS에 대한 자세한 내용은 CREATE TASK선택적 매개 변수 섹션을 참조하십시오.

임의의 숫자에 대해 0 (즉, 제한 없음) — 0 의 값은 시간 제한이 적용되지 않음을 지정합니다. 큐가 지속되는 한 문은 큐에 그대로 남게 됩니다.

기본값

0 (즉, 시간 제한 없음)

STATEMENT_TIMEOUT_IN_SECONDS

타입

세션 오브젝트(웨어하우스용)

계정 » 사용자 » 세션에 대해 설정할 수 있고, 개별 웨어하우스에 대해서도 설정할 수 있음

데이터 타입

Number

설명

시스템에서 실행 중인 SQL 문(쿼리, DDL, DML 등)을 취소한 이후의 시간(초)입니다.

이 매개 변수는 세션 계층 구조 내에서 설정할 수 있습니다. 또한, 개별 웨어하우스가 처리하는 모든 SQL 문에 대한 런타임을 제어하도록 설정할 수도 있습니다. 웨어하우스와 세션에 대해 모두 이 매개 변수를 설정하면 0이 아닌 가장 낮은 값이 적용됩니다. 예:

  • 웨어하우스의 시간 제한은 1,000초입니다.

  • 세션의 시간 제한은 500초로 설정되어 있습니다.

세션 시간 제한이 우선 적용됩니다(즉, 세션에서 제출된 모든 문은 500초 이상 실행 후 취소됨).

참고

작업 의 실행:

  • 작업이 컴퓨팅 리소스의 가상 웨어하우스에 의존하고 STATEMENT_TIMEOUT_IN_SECONDS가 웨어하우스 수준에서 설정된 경우에는 유효 시간 제한은 다음 매개 변수 중 더 작은 값이 됩니다.

    • STATEMENT_TIMEOUT_IN_SECONDS

    • USER_TASK_TIMEOUT_MS(작업에 설정된 매개 변수)

  • 그렇지 않으면 USER_TASK_TIMEOUT_MS 작업 매개 변수가 작업 실행을 위한 STATEMENT_TIMEOUT_IN_SECONDS 설정보다 우선합니다.

이 두 매개 변수의 값을 비교할 때 STATEMENT_TIMEOUT_IN_SECONDS는 초 단위를 사용하는 반면, USER_TASK_TIMEOUT_MS는 밀리초 단위로 설정된다는 점을 유념하십시오.

USER_TASK_TIMEOUT_MS에 대한 자세한 내용은 CREATE TASK선택적 매개 변수 섹션을 참조하십시오.

0 ~ 604800 (즉, 7일) — 0 의 값은 최대 시간 제한 값이 적용되도록 지정합니다.

기본값

172800 (즉, 2일)

STRICT_JSON_OUTPUT

타입

세션 — 계정 » 사용자 » 세션에 대해 설정할 수 있음

데이터 타입

부울

설명

(http://json.org에 설명한 것처럼) 이 매개 변수는 세션의 JSON 출력이 일반 표준과 호환되는지 여부를 지정합니다.

설계상, Snowflake는 비표준 값을 포함하는 JSON 입력값을 허용하지만, 이러한 비표준 값으로 인해 Snowflake가 다른 플랫폼 및 언어와 호환되지 않는 JSON을 출력할 수 있습니다. 이 매개 변수를 활성화하면 Snowflake가 유효하고 호환 가능한 JSON을 출력합니다.

TRUE: 엄격한 JSON 출력이 활성화되어 다음 동작을 적용합니다.

  • JSON NULL에 매핑된 입력에 누락된 값과 정의되지 않은 값.

  • 유효한 JavaScript 표현이 있는 문자열에 매핑된 입력에서 유한하지 않은 숫자 값(Infinity, -Infinity, NaN 등). 이를 통해 JavaScript와 호환할 수 있고 이러한 값을 숫자 값으로 다시 변환할 수도 있습니다.

FALSE: 엄격한 JSON 출력이 활성화되지 않습니다.

기본값

FALSE

예:

비표준 JSON 입력

FALSE 로 설정된 매개 변수(기본값)

TRUE 로 설정된 매개 변수

[289, 2188,]

출력:

[ 289, 2188, undefined ]

[ 289, 2188, null ]

[undefined, undefined]

출력:

[ undefined, undefined ]

[ null, null ]

[Infinity,inf,-Infinity,-inf]

출력:

[ Infinity, Infinity, -Infinity, -Infinity ]

[ "Infinity", "Infinity", "-Infinity", "-Infinity" ]

[NaN,nan]

출력:

[ NaN, NaN ]

[ "NaN", "NaN" ]

SUSPEND_TASK_AFTER_NUM_FAILURES

타입

오브젝트(데이터베이스, 스키마, 작업용) — 계정 » 데이터베이스 » 스키마 » 작업에 대해 설정할 수 있음

데이터 타입

정수

설명

독립 실행형 작업 또는 DAG 루트 작업을 자동으로 일시 중단하는 조치를 취할 연속 작업 실행 실패 횟수입니다. 실패한 작업 실행에는 작업 본문의 SQL 코드가 사용자 오류를 생성하거나 시간 초과되는 실행이 포함됩니다. 건너뛰거나 취소되거나 시스템 오류로 인해 실패하는 작업 실행은 쉽게 가늠할 수 없는 것으로 생각되어 실패한 작업 실행 수에는 포함하지 않습니다.

매개 변수가 0 보다 큰 값으로 설정되면 독립 실행형 작업 또는 DAG 루트 작업의 실행에 다음 동작이 적용됩니다.

  • 독립 실행형 작업은 연속 작업 실행이 지정된 횟수만큼 실패하거나 시간 초과되면 자동으로 일시 중단됩니다.

  • 루트 작업은 DAG에서 임의의 단일 작업 실행이 실패하거나 연속 실행에서 지정된 횟수만큼 시간 초과되면 자동으로 일시 중단됩니다.

설정은 Snowflake 관리 컴퓨팅 리소스(예: 서버리스 컴퓨팅 모델) 또는 사용자 관리 컴퓨팅 리소스(즉, 가상 웨어하우스)에 의존하는 작업에 적용됩니다.

계정, 데이터베이스 또는 스키마 수준에서 매개 변수 값을 명시적으로 설정하면 다음 예약 실행 중에 수정된 오브젝트에 포함된 작업(진행 중인 DAG 실행의 모든 하위 작업 포함)에 변경 사항이 적용됩니다.

독립 실행형 작업을 일시 중단하면 실패한 작업 실행 횟수가 재설정됩니다. 루트 DAG 작업을 일시 중단하면 DAG에서 각 작업에 대해 횟수가 재설정됩니다.

0 - 상한 없음.

기본값

0 (자동 일시 중단 없음)

TIMESTAMP_DAY_IS_ALWAYS_24H

타입

세션 — 계정 » 사용자 » 세션에 대해 설정할 수 있음

데이터 타입

부울

설명

DATEADD 함수(및 별칭)가 여러 날에 걸쳐 있는 식에 대해 항상 하루를 정확히 24시간으로 여기는지를 지정합니다.

TRUE: 하루는 항상 정확히 24시간입니다.

FALSE: 하루가 항상 24시간은 아닙니다.

기본값

FALSE

중요

TRUE 로 설정한 경우 일광 절약 시간(DST)이 적용될 때 하루 중 실제 시간이 보존되지 않을 수 있습니다. 예:

alter session set TIMESTAMP_DAY_IS_ALWAYS_24H = true;

-- With DST beginning on 2018-03-11 at 2 AM, America/Los_Angeles time zone
select dateadd(day, 1, '2018-03-10 09:00:00'::TIMESTAMP_LTZ), dateadd(day, 1, '2018-11-03 09:00:00'::TIMESTAMP_LTZ);

+-------------------------------------------------------+-------------------------------------------------------+
| DATEADD(DAY, 1, '2018-03-10 09:00:00'::TIMESTAMP_LTZ) | DATEADD(DAY, 1, '2018-11-03 09:00:00'::TIMESTAMP_LTZ) |
|-------------------------------------------------------+-------------------------------------------------------|
| 2018-03-11 10:00:00.000 -0700                         | 2018-11-04 08:00:00.000 -0800                         |
+-------------------------------------------------------+-------------------------------------------------------+

alter session set TIMESTAMP_DAY_IS_ALWAYS_24H = false;

select dateadd(day, 1, '2018-03-10 09:00:00'::TIMESTAMP_LTZ), dateadd(day, 1, '2018-11-03 09:00:00'::TIMESTAMP_LTZ);

+-------------------------------------------------------+-------------------------------------------------------+
| DATEADD(DAY, 1, '2018-03-10 09:00:00'::TIMESTAMP_LTZ) | DATEADD(DAY, 1, '2018-11-03 09:00:00'::TIMESTAMP_LTZ) |
|-------------------------------------------------------+-------------------------------------------------------|
| 2018-03-11 09:00:00.000 -0700                         | 2018-11-04 09:00:00.000 -0800                         |
+-------------------------------------------------------+-------------------------------------------------------+

TIMESTAMP_INPUT_FORMAT

타입

세션 — 계정 » 사용자 » 세션에 대해 설정할 수 있음

데이터 타입

문자열

설명

TIMESTAMP 데이터 타입 별칭의 입력 형식을 지정합니다. 자세한 내용은 날짜 및 시간 입력/출력 섹션을 참조하십시오.

모든 유효하고 지원되는 타임스탬프 형식 또는 AUTO

(AUTO 는 Snowflake가 세션 중에 시스템에 저장된 타임스탬프 형식을 자동으로 감지하도록 지정함)

기본값

AUTO

TIMESTAMP_LTZ_OUTPUT_FORMAT

타입

세션 — 계정 » 사용자 » 세션에 대해 설정할 수 있음

데이터 타입

문자열

설명

TIMESTAMP_LTZ 데이터 타입의 표시 형식을 지정합니다. 아무런 형식도 지정하지 않으면 기본적으로 TIMESTAMP_OUTPUT_FORMAT 으로 설정됩니다. 자세한 내용은 날짜 및 시간 입력/출력 섹션을 참조하십시오.

모든 유효하고 지원되는 타임스탬프 형식

기본값

없음

TIMESTAMP_NTZ_OUTPUT_FORMAT

타입

세션 — 계정 » 사용자 » 세션에 대해 설정할 수 있음

데이터 타입

문자열

설명

TIMESTAMP_NTZ 데이터 타입의 표시 형식을 지정합니다.

모든 유효하고 지원되는 타임스탬프 형식

기본값

YYYY-MM-DD HH24:MI:SS.FF3

TIMESTAMP_OUTPUT_FORMAT

타입

세션 — 계정 » 사용자 » 세션에 대해 설정할 수 있음

데이터 타입

문자열

설명

TIMESTAMP 데이터 타입 별칭의 표시 형식을 지정합니다. 자세한 내용은 날짜 및 시간 입력/출력 섹션을 참조하십시오.

모든 유효하고 지원되는 타임스탬프 형식

기본값

YYYY-MM-DD HH24:MI:SS.FF3 TZHTZM

TIMESTAMP_TYPE_MAPPING

타입

세션 — 계정 » 사용자 » 세션에 대해 설정할 수 있음

데이터 타입

문자열

설명

TIMESTAMP 데이터 타입 별칭이 매핑되는 TIMESTAMP_* 변형을 지정합니다.

TIMESTAMP_LTZ , TIMESTAMP_NTZ 또는 TIMESTAMP_TZ

기본값

TIMESTAMP_NTZ

TIMESTAMP_TZ_OUTPUT_FORMAT

타입

세션 — 계정 » 사용자 » 세션에 대해 설정할 수 있음

데이터 타입

문자열

설명

TIMESTAMP_TZ 데이터 타입의 표시 형식을 지정합니다. 아무런 형식도 지정하지 않으면 기본적으로 TIMESTAMP_OUTPUT_FORMAT 으로 설정됩니다. 자세한 내용은 날짜 및 시간 입력/출력 섹션을 참조하십시오.

모든 유효하고 지원되는 타임스탬프 형식

기본값

없음

TIMEZONE

타입

세션 — 계정 » 사용자 » 세션에 대해 설정할 수 있음

데이터 타입

문자열(상수)

설명

세션의 타임존을 지정합니다.

IANA 타임존 데이터베이스 의 릴리스 2021a 에서 타임존 이름 또는 링크 이름 을 지정할 수 있습니다(예: America/Los_Angeles, Europe/London, UTC, Etc/GMT 등).

기본값

America/Los_Angeles

참고

  • 타임존 이름은 대/소문자를 구분하며 작은따옴표로 묶어야 합니다 (예: 'UTC').

  • 주어진 약어는 여러 가지 다양한 타임존 중 하나를 가리키므로, Snowflake는 대다수 타임존 약어 (예: PDT, EST 등)를 지원하지 않습니다. 예를 들어, CST 는 북미의 중부 표준시(UTC-6), 쿠바 표준시(UTC-5), 중국 표준시(UTC+8)를 가리킬 수 있습니다.

TIME_INPUT_FORMAT

타입

세션 — 계정 » 사용자 » 세션에 대해 설정할 수 있음

데이터 타입

문자열

설명

TIME 데이터 타입의 입력 형식을 지정합니다. 자세한 내용은 날짜 및 시간 입력/출력 섹션을 참조하십시오.

모든 유효하고 지원되는 시간 형식 또는 AUTO

(AUTO 는 Snowflake가 세션 중에 시스템에 저장된 시간의 형식을 자동으로 감지하도록 지정함)

기본값

AUTO

TIME_OUTPUT_FORMAT

타입

세션 — 계정 » 사용자 » 세션에 대해 설정할 수 있음

데이터 타입

문자열

설명

TIME 데이터 타입의 표시 형식을 지정합니다. 자세한 내용은 날짜 및 시간 입력/출력 섹션을 참조하십시오.

모든 유효하고 지원되는 시간 형식

기본값

HH24:MI:SS

TRANSACTION_ABORT_ON_ERROR

타입

세션 — 계정 » 사용자 » 세션에 대해 설정할 수 있음

데이터 타입

BOOLEAN

설명

자동 커밋되지 않은 트랜잭션 내에서 실행된 문이 오류와 함께 반환 시에 수행할 작업을 지정합니다.

TRUE: 자동 커밋되지 않은 트랜잭션이 중단됩니다. 해당 트랜잭션 내에서 실행된 모든 문은 커밋 또는 롤백 문이 실행되어 해당 트랜잭션을 닫을 때까지 실패합니다.

FALSE: 자동 커밋되지 않은 트랜잭션이 중단되지 않습니다.

기본값

FALSE

TRANSACTION_DEFAULT_ISOLATION_LEVEL

타입

세션 — 계정 » 사용자 » 세션에 대해 설정할 수 있음

데이터 타입

문자열

설명

사용자 세션의 트랜잭션에 대한 격리 수준을 지정합니다.

READ COMMITTED (현재 지원되는 값만 해당)

기본값

READ COMMITTED

TWO_DIGIT_CENTURY_START

타입

세션 — 계정 » 사용자 » 세션에 대해 설정할 수 있음

데이터 타입

Number

설명

2자리 연도에 대한 《세기 시작》 연도를 지정합니다(즉, 이러한 날짜가 나타낼 수 있는 가장 빠른 연도). 이 매개 변수는 YY 날짜 형식 구성 요소(즉, 2자리 숫자로 표시되는 연도)를 포함한 데이터를 가져오거나 변환할 때 모호한 날짜를 방지합니다.

1900 ~ 2100 (이 범위를 벗어난 값은 오류를 반환함)

기본값

1970

예:

연도

1900 으로 설정된 매개 변수

1970 으로 설정된 매개 변수(기본값)

1980 으로 설정된 매개 변수

1990 으로 설정된 매개 변수

2000 으로 설정된 매개 변수

00

아래와 같이 됩니다.

1900

2000

2000

2000

2000

79

아래와 같이 됩니다.

1979

1979

2079

2079

2079

89

아래와 같이 됩니다.

1989

1989

1989

2089

2089

99

아래와 같이 됩니다.

1999

1999

1999

1999

2099

UNSUPPORTED_DDL_ACTION

타입

세션 — 계정 » 사용자 » 세션에 대해 설정할 수 있음

데이터 타입

문자열(상수)

설명

제약 조건 속성에 대해 지정된 지원되지 않는(즉, 기본값이 아닌) 값이 오류를 반환하는지 여부를 지정합니다.

IGNORE: Snowflake는 지원되지 않는 값에 대해 오류를 반환하지 않습니다.

FAIL: Snowflake는 지원되지 않는 값에 대해 오류를 반환합니다.

기본값

IGNORE

중요

이 매개 변수는 제약 조건 생성 여부를 결정하지 않습니다. 이 매개 변수의 설정 방식에 상관없이, Snowflake는 지원되지 않는 값을 사용해 제약 조건을 만들지 않습니다.

자세한 내용은 제약 조건 속성 섹션을 참조하십시오.

USE_CACHED_RESULT

타입

세션 — 계정 » 사용자 » 세션에 대해 설정할 수 있음

데이터 타입

부울

설명

사용 가능한 경우, 일치하는 쿼리를 제출할 때 캐시된 쿼리 결과를 재사용할지 여부를 지정합니다.

TRUE: 쿼리 제출 시에 Snowflake는 이전에 실행된 쿼리에 대해 일치하는 쿼리 결과를 확인하고, 일치하는 결과가 있는 경우 쿼리를 실행하는 대신 결과를 사용합니다. Snowflake는 캐시에서 직접 결과를 검색하므로 이는 쿼리 시간을 줄이는 데 도움이 될 수 있습니다.

FALSE: 일치하는 쿼리 결과가 있는지 여부와 관계없이, Snowflake는 각각의 쿼리가 제출될 때 쿼리를 실행합니다.

기본값

TRUE

USER_TASK_MANAGED_INITIAL_WAREHOUSE_SIZE

타입

오브젝트(데이터베이스, 스키마, 작업용) — 계정 » 데이터베이스 » 스키마 » 작업에 대해 설정할 수 있음

데이터 타입

문자열

설명

Snowflake가 이상적인 크기를 결정하기 위해 작업 기록을 사용할 수 있기 전에, 작업의 첫 번째 실행을 위해 프로비저닝할 컴퓨팅 리소스의 크기를 지정합니다. 작업이 몇 번의 실행을 성공적으로 완료하면 Snowflake는 이 매개 변수 설정을 무시합니다. 주어진 작업에 대해 작업 기록을 사용할 수 없는 경우 컴퓨팅 리소스가 이 초기 크기로 되돌아갑니다.

참고

이 매개 변수는 서버리스 작업 에만 적용됩니다.

크기는 웨어하우스 생성 시 사용 가능한 컴퓨팅 리소스와 동일합니다. 매개 변수가 생략되면 작업의 첫 번째 실행은 중간 크기(MEDIUM) 웨어하우스를 사용하여 실행됩니다.

작업이 생성된 후이면서 성공적으로 한 번 실행되기 전에 개별 작업의 초기 크기를 변경할 수 있습니다(ALTER TASK 사용). 이 작업의 첫 번째 실행이 시작된 후에 매개 변수를 변경하면 현재 또는 향후 작업 실행을 위한 컴퓨팅 리소스에 영향을 미치지 않습니다.

작업을 일시 중단하고 다시 시작해도 컴퓨팅 리소스 크기 조정에 사용된 작업 기록이 제거되지는 않습니다. 작업 기록은 작업이 다시 생성된 경우에만 제거됩니다(CREATE OR REPLACETASK 구문 사용).

기존 웨어하우스 크기: SMALL, MEDIUM, LARGE 등(최대 크기는 XXLARGE).

기본값

MEDIUM

USER_TASK_TIMEOUT_MS

타입

오브젝트(데이터베이스, 스키마, 작업용) — 계정 » 데이터베이스 » 스키마 » 작업에 대해 설정할 수 있음

데이터 타입

Number

설명

시간이 초과되기 전에 작업의 단일 실행에 대한 시간 제한(밀리초)을 지정합니다.

참고

  • 작업 시간 제한을 크게 늘리기 전에 작업 정의에서 SQL 문을 최적화할 수 있을지(문을 다시 작성하거나 저장 프로시저를 사용하여), 또는 사용자 관리 컴퓨팅 리소스가 있는 작업의 웨어하우스 크기를 늘려야 할지 생각해 보십시오.

  • 어떤 상황에서는 매개 변수 STATEMENT_TIMEOUT_IN_SECONDS의 우선순위가 USER_TASK_TIMEOUT_MS보다 높습니다. 자세한 내용은 STATEMENT_TIMEOUT_IN_SECONDS 섹션을 참조하십시오.

0 - 86400000 (1일).

기본값

3600000 (1시간)

WEEK_OF_YEAR_POLICY

타입

세션 — 계정 » 사용자 » 세션에 대해 설정할 수 있음

데이터 타입

Number

설명

주어진 연도의 주 수를 계산하는 방법을 지정합니다.

0: 사용되는 의미 체계는 ISO 의미 체계와 같으므로, 해당 주의 날 중 4일 이상이 어떤 연도에 있을 경우 해당 주는 그 연도에 속합니다.

1: 1월 1일은 한 해의 첫 주에 포함되고 12월 31일은 한 해의 마지막 주에 포함됩니다.

기본값

0 (즉, ISO와 같은 동작)

1 은 우리가 받은 피드백을 기반으로 하는 가장 일반적인 값입니다. 예를 포함한 자세한 내용은 달력상의 주 및 요일 을 참조하십시오.

WEEK_START

타입

세션 — 계정 » 사용자 » 세션에 대해 설정할 수 있음

데이터 타입

Number

설명

주의 첫 번째 요일을 지정합니다(주 관련 날짜 함수에서 사용).

0: 레거시 Snowflake 동작이 사용됩니다(즉, ISO와 같은 의미 체계).

1 (월요일) ~ 7 (일요일): 모든 주 관련 함수는 지정된 요일에 시작하는 주를 사용합니다.

기본값

0 (즉, 레거시 Snowflake 동작)

1 은 우리가 받은 피드백을 기반으로 하는 가장 일반적인 값입니다. 예를 포함한 자세한 내용은 달력상의 주 및 요일 을 참조하십시오.

맨 위로 이동