- 카테고리:
REPLICATION_GROUP_DANGLING_REFERENCES¶
복제 그룹 또는 장애 조치 그룹에서 참조되는 오브젝트가 실제로 보조 계정에 복제되지 않는 경우를 감지합니다. Snowflake에서는 이러한 유형의 참조를 *허상 참조*라고 합니다.
이 함수를 사용하여 복제 구성에서 허상 참조를 감지한 후에는 참조된 모든 오브젝트가 포함되도록 복제 그룹 또는 장애 조치 그룹을 다시 정렬할 수 있습니다. 또는 참조된 오브젝트가 복제 그룹 또는 장애 조치 그룹에 포함된 데이터베이스 또는 스키마와 같은 컨테이너의 일부가 되도록 SQL 오브젝트 계층 구조를 수정할 수 있습니다.
여러 복제 그룹 또는 장애 조치 그룹을 사용하는 경우 허상 참조를 확인하는 데 필요한 모든 오브젝트가 해당 참조를 참조하는 오브젝트보다 먼저 보조 계정에 복제되도록 새로 고침 작업의 순서를 지정할 수도 있습니다.
중요
IS_BLOCKING_REFRESH 열 TRUE 값에 특히 유의하세요. 새로 고침 및 장애 조치 작업은 모두 해당 참조를 확인할 때까지 진행할 수 없습니다.
- 참고 항목:
구문¶
REPLICATION_GROUP_DANGLING_REFERENCES( '<replication_or_failover_group_name>' )
인자¶
'replication_or_failover_group_name'
허상 참조를 확인할 복제 그룹 또는 장애 조치 그룹의 이름입니다. 전체 이름은 작은따옴표로 묶어야 합니다.
출력¶
이 함수는 다음 열을 반환합니다.
열 이름 |
데이터 타입 |
설명 |
---|---|---|
REFERENCED_ENTITY_DOMAIN |
VARCHAR |
허상 참조가 참조하는 엔터티의 도메인입니다. |
REFERENCED_ENTITY_NAME |
VARCHAR |
허상 참조가 참조하는 엔터티의 정규화된 이름입니다. |
REFERENCING_ENTITY_DOMAIN |
VARCHAR |
허상 참조가 있는 복제 그룹에 포함된 엔터티의 도메인(예: |
REFERENCING_ENTITY_NAME |
VARCHAR |
허상 참조가 있는 복제 그룹에 포함된 엔터티의 정규화된 이름입니다. |
REFERENCING_ENTITY_GROUPS |
VARCHAR |
참조하는 엔터티를 포함하는 모든 복제 그룹의 쉼표로 구분된 목록이거나 해당 엔터티가 포함된 그룹이 없는 경우 NULL입니다. |
IS_BLOCKING_REFRESH |
BOOLEAN |
TRUE인 경우 복제 새로 고침 및 장애 조치는 이 참조가 확인될 때까지 실패합니다. FALSE인 경우 Snowflake는 허상 참조에도 불구하고 이러한 작업을 수행할 수 있습니다. |
사용법 노트¶
Information Schema 테이블 함수를 호출할 때 세션에는 사용 중인 INFORMATION_SCHEMA 스키마가 있거나 또는 함수 이름이 정규화되어야 합니다. 자세한 내용은 Snowflake Information Schema 섹션을 참조하십시오.
조직의 모든 계정에서 이 함수를 실행할 수 있습니다. 지정하는 복제 그룹 또는 장애 조치 그룹은 함수를 호출하는 계정에 존재해야 합니다. 즉, 함수를 호출하는 클라우드 서비스 공급자 리전에서 사용되는 그룹 이름을 지정합니다.
기본 계정의 복제 그룹 또는 장애 조치 그룹을 사용하여 함수를 호출하는 경우 해당 참조된 오브젝트가 모든 보조 계정에 복제되지는 않을 경우 허상 참조를 보고합니다.
보조 계정의 복제 그룹 또는 장애 조치 그룹을 사용하여 함수를 호출하는 경우 해당 참조된 오브젝트가 함수가 호출된 특정 보조 계정에 복제되지 않으면 허상 참조를 보고합니다.
복제 그룹 및 장애 조치 그룹에서 허상 참조를 처리하는 방법에 대한 내용은 복제 그룹 간의 복제와 참조 섹션을 참조하세요.
예¶
장애 조치 그룹 myfg
에서 허상 참조를 확인하려면 기본 또는 보조 계정에서 다음 문을 실행합니다.
SELECT *
FROM TABLE(
INFORMATION_SCHEMA.REPLICATION_GROUP_DANGLING_REFERENCES('myfg')
);