ALTER SCHEMA
적용 대상: Databricks SQL
Databricks Runtime
스키마의 소유자를 변경하거나, 예측 최적화 동작을 설정하거나, DBPROPERTIES
설정하여 스키마와 연결된 메타데이터를 변경합니다. 지정된 속성 값은 같은 속성 이름을 가진 기존 값을 덮어씌웁니다.
SCHEMA
및 DATABASE
의 사용은 서로 교환할 수 있지만 SCHEMA
가 선호됩니다.
구문
ALTER SCHEMA schema_name
{ SET DBPROPERTIES ( { key = val } [, ...] ) |
[ SET ] OWNER TO principal
SET TAGS ( { tag_name = tag_value } [, ...] ) |
UNSET TAGS ( tag_name [, ...] ) |
{ ENABLE | DISABLE | INHERIT } PREDICTIVE OPTIMIZATION } }
매개 변수
-
변경할 스키마의 이름입니다. 스키마를 찾을 수 없으면 Azure Databricks에서 SCHEMA_NOT_FOUND 오류가 발생합니다.
DBPROPERTIES ( key = val [, …] )
설정하거나 해제할 스키마 속성입니다.
[ SET ] 소유자에게 주인
스키마의 소유권을
principal
에게 이전합니다.적용 대상:
Databricks SQL
Databricks Runtime 11.3 LTS 이상
SET
는 선택적 키워드로 허용됩니다.SET TAGS ( { tag_name = tag_value } [, ...] )
스키마에 태그를 적용합니다. 스키마에 태그를 적용하려면
use_schema
있어야 합니다.적용 대상:
Databricks SQL
Databricks Runtime 13.3 LTS 이상
UNSET 태그 ( tag_name [, ...] )
스키마에서 태그를 제거합니다. 스키마에서 태그를 제거하려면
use_schema
있어야 합니다.적용 대상:
Databricks SQL
Databricks Runtime 13.3 LTS 이상
tag_name
리터럴
STRING
입니다.tag_name
스키마 내에서 고유해야 합니다.tag_value
리터럴
STRING
입니다.{ 사용 | 사용 안 함 | 상속 } 예측 최적화
적용 대상:
Databricks SQL
Databricks Runtime 12.2 LTS 이상
Unity 카탈로그만 표시
스키마를 원하는 예측 최적화 설정으로 변경합니다. 기본적으로 스키마가 생성될 때 동작은 카탈로그에서
INHERIT
을 수행하는 것입니다. 기본적으로 스키마에서 만든 새 개체는 스키마에서 설정을 상속합니다.스키마가 변경되면 동작은 예측 최적화를 상속하는 모든 개체로 연계됩니다. 명시적으로
ENABLE
또는DISABLE
예측 최적화를 수행하는 개체는 스키마 설정의 영향을 받지 않습니다.스키마에 대한 예측 최적화를 설정하려면 사용자에게 스키마에 대한
CREATE
권한이 있어야 합니다.Unity 카탈로그의 비 델타 공유 관리 카탈로그의 스키마만 예측 최적화에 적합합니다.
예제
-- Creates a schema named `inventory`.
> CREATE SCHEMA inventory;
-- Alters the schema to set properties `Edited-by` and `Edit-date`.
> ALTER SCHEMA inventory SET DBPROPERTIES ('Edited-by' = 'John', 'Edit-date' = '01/01/2001');
-- Verify that properties are set.
> DESCRIBE SCHEMA EXTENDED inventory;
database_description_item database_description_value
------------------------- ------------------------------------------
Database Name inventory
Description
Location file:/temp/spark-warehouse/inventory.db
Properties ((Edit-date,01/01/2001), (Edited-by,John))
-- Transfer ownership of the schema to another user
> ALTER SCHEMA inventory OWNER TO `alf@melmak.et`
-- Applies three tags to the schema named `test`.
> ALTER SCHEMA test SET TAGS ('tag1' = 'val1', 'tag2' = 'val2', 'tag3' = 'val3');
-- Removes three tags from the schema named `test`.
> ALTER SCHEMA test UNSET TAGS ('tag1', 'tag2', 'tag3');
-- Enables predictive optimization for objects in schema my_schema
> ALTER SCHEMA my_schema ENABLE PREDICTIVE OPTIMIZATION;