SQL의 뷰와 구체화된 뷰의 차이점

WBOY
풀어 주다: 2023-08-25 16:49:23
앞으로
1434명이 탐색했습니다.

SQL 中视图和物化视图的区别

모든 데이터베이스의 주요 구성 요소는 테이블이며, 데이터 접근성을 높이기 위해 사용자 정의하는 경우 뷰라는 개념이 있습니다. 즉, 테이블 뷰를 통해 모든 사용자가 액세스해야 하는 데이터에만 액세스하도록 제한할 수 있습니다. 이제 뷰의 특징과 특성을 바탕으로 뷰와 구체화된 뷰를 구분할 수 있습니다.

이 글에서는 SQL의 뷰와 구체화된 뷰의 중요한 차이점에 대해 설명합니다. 하지만 먼저 뷰와 구체화된 뷰의 기본 사항을 개별적으로 살펴보고 차이점을 더 잘 이해해 보겠습니다.

SQL의 뷰

는 'select query' 문을 실행하여 생성된 테이블의 논리적 및 가상 복사본입니다. 뷰는 디스크의 어느 곳에도 저장되지 않으므로 특정 데이터가 있을 때마다 쿼리를 실행해야 합니다. 필수입니다. 하지만 쿼리 표현식은 디스크에 저장됩니다.

뷰에는 이와 관련된 저장/업데이트 비용이 없습니다. 뷰는 특정 스키마에 따라 설계됩니다. 이는 뷰를 정의하는 SQL 표준이 있음을 의미합니다. 뷰는 데이터에 자주 액세스해야 하지만 데이터를 자주 업데이트해야 하는 경우에 사용됩니다.

SQL의 구체화된 뷰

구체화된 뷰는 내용이 계산되어 저장되는 뷰입니다. 구체화된 뷰도 논리적 가상 테이블이지만 이 경우 쿼리 결과가 테이블이나 디스크에 저장됩니다. 일반 보기보다 데이터가 디스크에 저장되기 때문이죠.

쿼리 후에 생성된 테이블이 인덱싱되어 더 빠르고 효율적으로 액세스할 수 있기 때문에 구체화된 뷰를 "인덱싱된 뷰"라고도 합니다. 구체화된 뷰는 데이터에 자주 액세스해야 하고 테이블의 데이터가 자주 업데이트되지 않는 경우에 사용됩니다.

SQL의 뷰와 구체화된 뷰의 차이점

다음 표에서는 뷰와 구체화된 뷰의 중요한 차이점을 강조합니다 −

조회수 구체화된 뷰
정의 기술적으로 테이블 뷰는 "선택 쿼리"를 통해 생성된 테이블의 논리적 가상 복사본이지만 결과는 디스크에 저장되지 않습니다.

데이터가 필요할 때마다 쿼리를 실행해야 하므로 사용자는 항상 원본 테이블에서 업데이트된 데이터나 최신 데이터를 가져옵니다.

구체화된 뷰(구체화된 뷰)도 "선택 쿼리"에 의해 구동되는 데이터의 논리적 가상 복사본이지만 쿼리 결과는 테이블이나 디스크에 저장됩니다.
저장 뷰에서 쿼리 표현식의 결과 튜플은 디스크에 저장되지 않고 쿼리 표현식만 디스크에 저장됩니다. 구체화된 뷰의 경우 쿼리 표현식과 쿼리 결과 튜플이 모두 디스크에 저장됩니다.
쿼리 실행 쿼리 표현식은 결과가 아닌 디스크에 저장되므로 사용자가 데이터 추출을 시도할 때마다 사용자가 최신 업데이트 값을 얻을 수 있도록 쿼리 표현식이 실행됩니다. 쿼리 결과는 디스크에 저장되므로 사용자가 데이터를 가져오려고 할 때마다 쿼리 표현식이 실행되지 않으므로 데이터베이스에서 변경된 경우 최신 업데이트 값을 얻을 수 없습니다.
비용 효율적 뷰에는 저장 비용이 없기 때문에 업데이트 비용도 없습니다. 구체화된 뷰에는 저장 비용이 관련되어 있으므로 업데이트 비용도 관련되어 있습니다.
디자인 SQL의 뷰는 뷰를 정의하는 SQL 표준이 있기 때문에 고정된 아키텍처 접근 방식으로 설계되었습니다. SQL의 구체화된 뷰는 일반적인 아키텍처 접근 방식으로 설계되었으므로 이를 정의하기 위한 SQL 표준이 없으며 해당 기능은 일부 데이터베이스 시스템에서 확장으로 제공됩니다.
사용법 뷰는 일반적으로 데이터에 자주 액세스하지 않고 테이블의 데이터가 자주 업데이트되는 경우에 사용됩니다. 구체화된 뷰는 데이터에 자주 액세스해야 하고 테이블의 데이터가 자주 업데이트되지 않을 때 사용됩니다.

결론

SQL에서 뷰와 구체화된 뷰는 매우 다릅니다. 뷰는 데이터에 거의 액세스하지 않고 테이블의 데이터가 자주 업데이트될 때 사용됩니다. 반대로 데이터에 자주 액세스해야 하고 테이블의 데이터가 자주 업데이트되지 않는 경우 구체화된 뷰를 사용합니다.

위 내용은 SQL의 뷰와 구체화된 뷰의 차이점의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:tutorialspoint.com
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿