스키마:

ACCOUNT_USAGE

OBJECT_DEPENDENCIES 뷰

이 Account Usage 뷰는 각 오브젝트 종속성에 대해 하나의 행을 표시합니다.

예를 들어, 단일 테이블에서 뷰를 만드는 동안 뷰는 테이블에 종속됩니다. Snowflake는 테이블에 대한 뷰의 종속성을 기록하기 위한 행을 한 개 반환합니다.

그러나 뷰 생성이 두 테이블에 종속된 경우 Snowflake는 첫 번째 테이블에 대한 뷰의 종속성을 기록하기 위해 한 행을 반환하고 별도로, 두 번째 테이블에 대한 뷰의 종속성을 기록하기 위해 한 행을 반환합니다. 이 패턴은 주어진 오브젝트에 대한 종속성이 아무리 많아도 계속됩니다.

열 이름

데이터 타입

설명

REFERENCED_DATABASE

TEXT

참조된 오브젝트의 상위 데이터베이스입니다.

REFERENCED_SCHEMA

TEXT

참조된 오브젝트의 상위 스키마입니다.

REFERENCED_OBJECT_NAME

TEXT

참조된 오브젝트의 이름입니다.

REFERENCED_OBJECT_ID

NUMBER

참조된 오브젝트의 오브젝트 ID입니다.

REFERENCED_OBJECT_DOMAIN

TEXT

참조된 오브젝트의 도메인(예: TABLE, VIEW)입니다.

REFERENCING_DATABASE

TEXT

참조하는 오브젝트의 상위 데이터베이스입니다.

REFERENCING_SCHEMA

TEXT

참조하는 오브젝트의 상위 스키마입니다.

REFERENCING_OBJECT_NAME

TEXT

참조하는 오브젝트의 이름입니다.

REFERENCING_OBJECT_ID

NUMBER

참조하는 오브젝트의 오브젝트 ID입니다.

REFERENCING_OBJECT_DOMAIN

TEXT

참조하는 오브젝트의 도메인(예: TABLE, VIEW)입니다.

DEPENDENCY_TYPE

TEXT

종속성 타입(BY_ID, BY_NAME 또는 BY_NAME_AND_ID).

일반적인 사용법 노트

  • 이 뷰의 지연 시간은 최대 3시간입니다.

  • 지원되는 오브젝트 및 해당 종속성 타입의 전체 목록을 확인하려면 지원되는 오브젝트 종속성 섹션을 참조하십시오.

  • 이 뷰는 뷰를 사용 가능하게 만들기 전에 종속성을 포함하기 위해 2022년 1월 22일에 다시 채워졌습니다. Snowflake는 이 날짜 이후에도 종속성을 계속 기록합니다.

    이 날짜 이전에 누락된 종속성으로 인해 뷰 또는 UDF 가 유효하지 않았으며 누락된 종속성이 나중에 수정되는 경우 Snowflake는 뷰 또는 UDF에 대한 종속성을 기록하지 않습니다.

    예를 들어, 2021년 12월 1일에 테이블에 의존하는 뷰를 생성하고, 같은 날 테이블을 삭제한 다음 2022년 2월 1일에 테이블을 삭제 취소한 경우 Snowflake는 해당 뷰가 테이블에 의존한다고 기록하지 않습니다.

    해결 방법으로는, 이 뷰가 종속성을 기록하도록 뷰 또는 UDF를 만들거나 바꾸십시오.

  • 이 뷰의 제한 사항과 이 뷰와 다른 Snowflake 기능 및 오브젝트와의 관계에 대한 자세한 내용은 다음을 참조하십시오.

데이터 공유 사용법 노트

일반 노트:

뷰 업데이트에서는 공유가 삭제되지 않는 것으로 가정합니다.

뷰 스키마(즉, 열 이름, 데이터 타입, 값)는 다음 예외를 제외하면 동일하게 유지됩니다.

  • 컨슈머 계정에서 REFERENCED_OBJECT_ID 열의 값은 공유 오브젝트에 대해 항상 NULL입니다.

    이 값은 고객이 공급자 계정에서 원본 오브젝트를 검색하지 못하도록 하는 의미가 있습니다.

  • REFERENCED_OBJECT_DOMAIN의 값은 테이블과 같은 모든 오브젝트에 대해 TABLE 입니다.

Snowflake 오브젝트:

Account Usage 뷰와 같은 공유 오브젝트는 이제 참조된 오브젝트로 지원됩니다.

예를 들어 사용자 정의 뷰가 LOGIN_HISTORY와 같은 다른 Account Usage 뷰의 데이터에 의존하는 경우 컨슈머 계정의 OBJECT_DEPENDENCIES 뷰는 LOGIN_HISTORY 뷰를 참조된 오브젝트로 지정합니다.

노트 이름 바꾸기:

공급자가 공유 데이터베이스, 공유 스키마 또는 공유 오브젝트의 이름을 바꾸는 경우:

  • 컨슈머 OBJECT_DEPENDENCIES 뷰 레코드는 이름이 바뀐 오브젝트가 아니라 이름을 바꾸기 전 데이터베이스, 스키마 또는 오브젝트의 원래 이름의 레코드를 보여줍니다.

    컨슈머가 공급자 계정에서 오브젝트 수명 주기를 결정하지 못하도록 새로 이름이 바뀐 공유 오브젝트가 컨슈머 OBJECT_DEPENDENCIES 뷰에 표시되지 않습니다. 이름이 바뀐 오브젝트가 컨슈머 계정의 로컬 OBJECT_DEPENDENCIES 뷰에 나타나도록 하려면 새 참조 오브젝트가 새로 이름이 바뀐 오브젝트를 참조해야 합니다.

  • 공유 데이터베이스의 이름을 바꾸면 컨슈머 계정의 종속성이 유지됩니다.

  • 공유 스키마 또는 공유 스키마의 공유 오브젝트 이름을 바꾸면 컨슈머 계정의 종속성이 끊어집니다.

컨슈머가 공유 데이터베이스의 이름을 바꾸면 해당 데이터베이스에 대한 기존의 종속성이 모두 끊어집니다. 결과적으로 Snowflake에서는 컨슈머 계정의 OBJECT_DEPENDENCIES 뷰에서 해당 레코드가 삭제됩니다.

예를 들어 공유 데이터베이스에는 db1_shared.views.view_1_shared 라는 뷰가 있습니다. 컨슈머가 공유 데이터베이스의 이름을 mydb 로 바꿉니다. 그러면 뷰에 mydb.views.view_1_shared 의 정규화된 이름이 있습니다. Snowflake에서는 db1_shared 라는 데이터베이스에 대한 종속성이 단절되었으므로 컨슈머의 OBJECT_DEPENDENCIES 뷰에서 db1_shared.views.view_1_shared 를 지정하는 행이 삭제됩니다.

지원되지 않음:

참조된 오브젝트에 대한 BY_ID 종속성 유형은 지원되지 않습니다.