Aurora DSQL의 시스템 테이블 및 명령
Aurora DSQL에서 지원되는 시스템 테이블 및 카탈로그에 대해 알아보려면 이어지는 섹션을 참조하세요.
시스템 테이블
Aurora DSQL은 PostgreSQL과 호환되므로 PostgreSQL의 많은 시스템 카탈로그 테이블
중요한 PostgreSQL 카탈로그 테이블 및 뷰
다음 표에서는 Aurora DSQL에서 사용할 수 있는 가장 일반적인 테이블과 뷰를 설명합니다.
명칭 | 설명 |
---|---|
|
모든 스키마에 대한 정보 |
|
모든 테이블에 대한 정보 |
|
모든 속성에 대한 정보 |
|
(미리) 정의된 뷰에 대한 정보 |
|
모든 테이블, 열, 인덱스 및 유사한 객체 설명 |
|
플래너 통계에 대한 뷰 |
|
사용자에 대한 정보 |
|
사용자 및 그룹에 대한 정보 |
|
모든 인덱스 나열 |
|
테이블에 대한 제약 조건 나열 |
지원되는 카탈로그 테이블과 지원되지 않는 카탈로그 테이블
다음 표에는 Aurora DSQL에서 지원되는 테이블과 지원되지 않는 테이블이 나와 있습니다.
명칭 | Aurora DSQL에 적용 가능 |
---|---|
|
아니요 |
|
예 |
|
아니요 |
|
아니요 |
|
예 |
|
예 |
|
아니요( |
|
예 |
|
예 |
|
예 |
|
예 |
|
예 |
|
아니요 |
|
아니요 |
|
예 |
|
예 |
|
예 |
|
예 |
|
아니요 |
|
아니요 |
|
아니요 |
|
아니요 |
|
아니요 |
|
아니요 |
|
예 |
|
예 |
|
아니요 |
|
아니요 |
|
아니요 |
|
예 |
|
예 |
|
아니요 |
|
예 |
|
아니요 |
|
예 |
|
아니요 |
|
아니요 |
|
아니요 |
|
아니요 |
|
아니요 |
|
아니요 |
|
예 |
|
아니요 |
|
아니요 |
|
아니요 |
|
아니요 |
|
예 |
|
예 |
|
아니요 |
|
예 |
|
아니요 |
|
아니요 |
|
아니요 |
|
아니요 |
|
아니요 |
|
아니요 |
|
아니요 |
|
예 |
|
예 |
|
예 |
|
예 |
|
예 |
|
예 |
|
아니요 |
지원되는 시스템 뷰와 지원되지 않는 시스템 뷰
다음 표에는 Aurora DSQL에서 지원되는 뷰와 지원되지 않는 뷰가 나와 있습니다.
명칭 | Aurora DSQL에 적용 가능 |
---|---|
|
아니요 |
|
아니요 |
|
예 |
|
아니요 |
|
아니요 |
|
아니요 |
|
예 |
|
아니요 |
|
아니요 |
|
예 |
|
아니요 |
|
아니요 |
|
아니요 |
|
아니요 |
|
아니요 |
|
아니요 |
|
아니요 |
|
아니요 |
|
예 |
|
아니요 |
|
아니요 |
|
아니요 |
|
예 |
|
예 |
|
예 |
|
예 |
|
아니요 |
|
아니요 |
|
예 |
|
예 |
|
예 |
|
예 |
|
아니요 |
|
예 |
|
아니요 |
|
아니요 |
|
아니요 |
|
아니요 |
|
아니요 |
|
아니요 |
|
아니요 |
|
예 |
|
아니요 |
|
아니요 |
|
아니요 |
|
아니요 |
|
아니요 |
|
아니요 |
|
아니요 |
|
아니요 |
|
아니요 |
|
아니요 |
|
아니요 |
|
아니요 |
|
아니요 |
|
아니요 |
|
아니요 |
|
아니요 |
|
아니요 |
|
아니요 |
|
아니요 |
|
아니요 |
|
아니요 |
|
아니요 |
|
아니요 |
|
아니요 |
|
아니요 |
|
아니요 |
|
아니요 |
|
아니요 |
|
아니요 |
|
아니요 |
|
아니요 |
|
아니요 |
sys.jobs 및 sys.iam_pg_role_mappings 뷰
Aurora DSQL은 다음 시스템 뷰를 지원합니다.
sys.jobs
-
sys.jobs
은 비동기 작업에 대한 상태 정보를 제공합니다. 예를 들어 사용자가 비동기 인덱스를 생성한 후 Aurora DSQL은job_uuid
를 반환합니다. 이job_uuid
와sys.jobs
을 함께 사용하여 작업 상태를 조회할 수 있습니다.SELECT * FROM sys.jobs WHERE job_id = 'example_job_uuid'; job_id | status | details ------------------+------------+--------- example_job_uuid | processing | (1 row)
sys.iam_pg_role_mappings
-
sys.iam_pg_role_mappings
뷰는 IAM 사용자에게 부여된 권한에 대한 정보를 제공합니다. 예를 들어DQSLDBConnect
가 관리자가 아닌 사용자에게 Aurora DSQL 액세스 권한을 부여하는 IAM 역할이고testuser
라는 사용자에게DQSLDBConnect
역할 및 해당 권한이 부여된 경우sys.iam_pg_role_mappings
뷰를 쿼리하여 어떤 사용자에게 어떤 권한이 부여되는지 확인할 수 있습니다.SELECT * FROM sys.iam_pg_role_mappings;
pg_class 테이블
pg_class
테이블은 데이터베이스 객체에 대한 메타데이터를 저장합니다. 테이블에 있는 행 수의 대략적인 개수를 가져오려면 다음 명령을 실행합니다.
SELECT reltuples FROM pg_class WHERE relname = '
table_name
';
이 명령은 다음과 비슷한 출력을 반환합니다.
reltuples -------------- 9.993836e+08
ANALYZE
명령
ANALYZE
명령은 데이터베이스의 테이블 내용에 대한 통계를 수집하고 결과를 pg_stats
시스템 뷰에 저장합니다. 이후 쿼리 플래너는 이러한 통계를 사용하여 쿼리에 대한 가장 효율적인 실행 계획을 결정하는 데 도움을 줍니다.
Aurora DSQL에서는 명시적 트랜잭션 내에서 ANALYZE
명령을 실행할 수 없습니다. ANALYZE
에는 데이터베이스 트랜잭션 제한 시간이 적용되지 않습니다.
수동 개입의 필요성을 줄이고 통계를 지속적으로 최신 상태로 유지하기 위해 Aurora DSQL은 ANALYZE
를 백그라운드 프로세스로 자동으로 실행합니다. 이 백그라운드 작업은 테이블에서 관찰된 변경 속도에 따라 자동으로 트리거됩니다. 마지막 분석 이후 삽입, 업데이트 또는 삭제된 행(튜플) 수와 연결됩니다.
ANALYZE
는 백그라운드에서 비동기적으로 실행되며 다음 쿼리를 사용하여 시스템 뷰 sys.jobs에서 활동을 모니터링할 수 있습니다.
SELECT * FROM sys.jobs WHERE job_type = 'ANALYZE';
주요 고려 사항
참고
ANALYZE
작업은 Aurora DSQL의 다른 비동기 작업과 마찬가지로 청구됩니다. 테이블을 수정하면 자동 백그라운드 통계 수집 작업이 간접적으로 트리거되어 연결된 시스템 수준 활동으로 인해 사용량 측정에 따른 요금이 발생할 수 있습니다.
자동으로 트리거되는 백그라운드 ANALYZE
작업은 수동 ANALYZE
와 동일한 유형의 통계를 수집하여 기본적으로 사용자 테이블에 적용합니다. 시스템 및 카탈로그 테이블은 이 자동 프로세스에서 제외됩니다.