동적 테이블 관리 정보¶
동적 테이블 관리에는 일반적으로 다음 작업이 포함됩니다.
작업 |
설명 |
---|---|
동적 테이블 나열 및 보기. |
|
동적 테이블 삭제. |
|
동적 테이블 변경. |
동적 테이블 나열 및 동적 테이블에 대한 정보 보기¶
데이터베이스의 동적 테이블을 나열하고 해당 동적 테이블에 대한 정보를 보려면 Snowsight 또는 SQL 명령을 사용할 수 있습니다.
Snowsight를 사용하여 동적 테이블 나열 및 세부 정보 보기¶
스키마의 동적 테이블을 나열하고 동적 테이블에 대한 정보를 보려면 다음을 수행하십시오.
Snowsight 에 로그인합니다.
Data » Databases 를 선택합니다.
데이터베이스와 스키마를 선택합니다.
Schema Details 에서 Dynamic Tables 탭을 선택합니다.
Dynamic Tables 를 확장하여 데이터베이스 오브젝트 탐색기에서 동적 테이블 목록을 볼 수도 있습니다.
특정한 동적 테이블에 대한 정보를 보려면 데이터베이스 오브젝트 탐색기 또는 Dynamic Tables 탭의 동적 테이블 목록에서 동적 테이블을 선택하십시오.
이 페이지의 탭에는 다음을 비롯하여 테이블 세부 정보 페이지 와 동일한 정보가 일부 제공됩니다.
동적 테이블의 정의와 동적 테이블 작업을 위해 부여된 권한
동적 테이블의 열에 대한 정보
동적 테이블에 있는 최대 100개의 데이터 행 미리 보기
또한 동적 테이블 세부 정보 페이지에는 동적 테이블에 대한 정보를 보는 데 사용할 수 있는 탭이 포함됩니다.
Graph 탭에는 이 동적 테이블을 포함한 DAG(방향성 비순환 그래프) 가 표시됩니다. Snowsight를 사용하여 동적 테이블의 그래프 조사하기 섹션을 참조하십시오.
Refresh History 탭에는 새로 고침 기록이 표시됩니다. Snowsight를 사용하여 새로 고침 모니터링하기 섹션을 참조하십시오.
SQL 명령을 사용하여 동적 테이블을 나열하고 세부 정보 보기¶
현재 데이터베이스(또는 현재 사용 중인 데이터베이스가 없는 경우에는 계정)의 동적 테이블을 나열하려면 SHOW DYNAMIC TABLES 명령을 사용하십시오.
예를 들어 데이터베이스
mydb
및 스키마myschema
에서 이름이product_
로 시작하는 동적 테이블을 나열하려면 다음 SQL 문을 실행하십시오.SHOW DYNAMIC TABLES LIKE 'product_%' IN SCHEMA mydb.myschema;
명령의 전체 구문은 SHOW DYNAMIC TABLES 섹션을 참조하십시오.
동적 테이블의 열에 대한 정보를 출력하려면 DESCRIBE DYNAMIC TABLE 명령을 사용하십시오.
예를 들어
product
라는 동적 테이블의 열을 나열하려면 다음을 수행하십시오.DESC DYNAMIC TABLE product;
동적 테이블도 TABLES 뷰 의 결과에 포함됩니다.
동적 테이블 삭제하기¶
동적 테이블을 삭제하려면 Snowsight 또는 SQL 명령을 사용할 수 있습니다.
- Snowsight:
Snowsight에서 동적 테이블 세부 정보 페이지를 엽니다(지침).
페이지의 오른쪽 위 모서리에 있는 More 메뉴에서 Drop 을 선택합니다.
- SQL:
DROP DYNAMIC TABLE 명령을 사용합니다.
예를 들어
product
라는 동적 테이블을 삭제하려면 다음을 수행하십시오.
DROP DYNAMIC TABLE product;
동적 테이블과 데이터 공유하기¶
동적 테이블은 공유 가능한 오브젝트입니다. 동적 테이블을 공유하기 위해 데이터 공유 공급자는 동적 테이블에 대한 권한을 공유에 부여하며, 이에 따라 데이터 공유 컨슈머가 동적 테이블을 사용할 수 있게 됩니다.
동적 테이블에 대한 웨어하우스 또는 목표 지연 변경하기¶
동적 테이블에 대한 웨어하우스 또는 목표 지연을 변경하려면 ALTER DYNAMIC TABLE 명령을 사용하십시오.
예를 들어 동적 테이블 product
의 웨어하우스를 my_other_wh
로 변경하려면 다음을 실행하십시오.
ALTER DYNAMIC TABLE product SET WAREHOUSE = my_other_wh;
다음 다이어그램에서는 다른 동적 테이블에 대한 업스트림 및 다운스트림 관계의 컨텍스트에서 일시 중단, 재개 및 수동 새로 고침 작업을 보여줍니다.
이 다이어그램은 동적 테이블로 만든 간단한 선언적 데이터 파이프라인을 보여줍니다. 개울에 물이 흐르는 것과 비슷하게, 동적 테이블 파이프라인의 데이터는 루트 다운스트림에서 리프 동적 테이블을 향해 흐릅니다.
DT2는 그 동적 테이블에 종속되므로 DT1의 다운스트림 으로 설명되고, 이에 종속되는 DT3의 업스트림 으로 설명됩니다.
DT3은 DT2에는 직접적으로, DT1에는 간접적으로 종속되므로 DT2와 DT1 모두의 다운스트림입니다.
DT1은 다른 동적 테이블의 직접적이거나 간접적인 업스트림입니다.
다운스트림 목표 지연 사용에 대한 자세한 내용과 예제는 목표 지연 이해하기 섹션을 참조하십시오.
동적 테이블의 최적 목표 지연 결정하기¶
동적 테이블의 최적 목표 지연 시간을 결정하려면 Snowsight 또는 SQL 명령을 사용할 수 있습니다.
- Snowsight:
동적 테이블 세부 정보 페이지 에서 Refresh History 탭을 선택합니다.
탭 상단에 표시되는 최대 실제 지연 시간을 확인합니다. 이 메트릭은 각 새로 고침의 실제 지연 시간을 기반으로 합니다.
- SQL:
INFORMATION_SCHEMA에서 DYNAMIC_TABLE_REFRESH_HISTORY 테이블 함수를 사용합니다. 이 함수는 새로 고침에 걸린 시간과 건너뛴 새로 고침을 포함하여 동적 테이블의 각 새로 고침에 대한 정보를 반환합니다.
선택하는 지연 시간은 자동 새로 고침 프로세스로 결정되는 새로 고침 일정에 영향을 줄 수 있습니다. 자동 새로 고침 프로세스에서는 동적 테이블의 지연 시간에 가장 적합한 일정을 선택합니다.
증분 또는 전체 새로 고침이 사용되는지 확인하기¶
증분 또는 전체 새로 고침이 동적 테이블을 업데이트하는 데 사용되는지 확인하려면 Snowsight 또는 SQL 명령을 사용할 수 있습니다.
- Snowsight:
동적 테이블 세부 정보 페이지 로 이동합니다.
페이지 상단의 기본 세부 정보는 해당 테이블에 대해 증분 또는 전체 새로 고침이 사용되는지 여부를 나타냅니다.
- SQL:
SHOW DYNAMIC TABLES 명령을 사용하고 출력에서
REFRESH_MODE
열의 값을 확인합니다.REFRESH_MODE_REASON에는 REFRESH_MODE 선택 항목에 대한 추가 세부 정보가 포함되어 있습니다.
기본 테이블의 열 변경 사항의 영향 이해하기¶
기본 테이블, 뷰, 기본 동적 테이블의 열은 시간이 지남에 따라 변경될 수 있습니다. 일부 변경 사항은 동적 테이블 자체에 영향을 줄 수 있는 반면, 다른 변경 사항은 영향이 제한적이거나 전혀 없을 수 있습니다.
동적 테이블과 연결된 기본 오브젝트가 변경되면 다음 동작이 적용됩니다.
변경 |
영향 |
---|---|
|
없습니다. 기본 테이블에 새 열이 추가되거나 사용되지 않은 열이 삭제되면 아무런 작업도 이루어지지 않고 이전과 같이 새로 고침이 계속됩니다. |
|
전체 새로 고침/재초기화: 다음 새로 고침 주기 동안 동적 테이블에 부정확하거나 오래된 데이터가 없도록 전체 새로 고침이 수행됩니다. |
|
동적 테이블의 상태는 FAILED으로 변경됩니다. 변경 사항에 대응하려면 동적 테이블을 다시 만들어야 합니다. |
자동 일시 중단 동작 이해하기¶
참고
시스템에서 새로 고침 오류를 5회 연속으로 확인할 경우 동적 테이블이 일시 중단됩니다. 새로 고침 오류로 인해 일시 중단된 동적 테이블은 사용자 작업이 아니라 시스템에서 일시 중단되므로 흔히 자동 일시 중단 이라고 합니다.
일시 중단된 동적 테이블에 종속된 동적 테이블도 일시 중단됩니다. SCHEDULING_STATE는 동적 테이블의 현재 상태를 설명합니다.
동적 테이블의 예약 상태를 보려면 DYNAMIC_TABLE_GRAPH_HISTORY 테이블 함수를 호출하고 SCHEDULING_STATE 열을 검사하십시오.