뷰란?
뷰는 Unity 카탈로그에서 하나 이상의 테이블과 뷰에 대한 쿼리의 결과입니다. 뷰는 메타스토어에서 하나 이상의 테이블과 뷰로 구성된 읽기 전용 개체입니다. 여러 스키마 및 카탈로그의 테이블과 다른 뷰에서 만들 수 있습니다.
이 문서에서는 Azure Databricks에서 만들 수 있는 뷰에 대해 설명합니다.
Unity 카탈로그의 보기
Unity 카탈로그에서 뷰는 3개 수준 네임스페이스의 세 번째 수준()catalog.schema.view
에 있습니다.
뷰는 일반적으로 메타스토어의 하나 이상의 데이터 원본 또는 테이블에 대해 쿼리 텍스트를 저장합니다. Azure Databricks에서 뷰는 스키마의 개체로 유지되는 Spark DataFrame과 동일합니다. DataFrames와 달리 Azure Databricks의 어디에서나 뷰를 쿼리할 수 있습니다. 이 작업을 수행할 수 있는 권한이 있다고 가정합니다. 뷰를 만들면 데이터가 처리되거나 작성되지 않습니다. 쿼리 텍스트만 연결된 스키마의 metastore에 등록됩니다.
참고 항목
뷰는 델타 테이블 이외의 데이터 원본에서 지원되는 경우 다른 실행 의미 체계를 가질 수 있습니다. Databricks는 테이블 또는 뷰 이름을 사용하여 데이터 원본을 참조하여 항상 뷰를 정의하는 것이 좋습니다. 경로 또는 URI를 지정하여 데이터 세트에 대한 뷰를 정의하면 데이터 거버넌스 요구 사항이 혼란스러울 수 있습니다.
구체화된 보기
구체화된 뷰는 정의 쿼리에서 반환된 결과를 증분 방식으로 계산하고 업데이트합니다.
Databricks SQL을 사용하여 Unity 카탈로그에 구체화된 뷰를 등록하거나 델타 라이브 테이블 파이프라인의 일부로 정의할 수 있습니다. Databricks SQL에서 구체화된 뷰 사용 및 델타 라이브 테이블이란?을 참조하세요.
임시 보기
임시 보기에는 제한된 범위와 지속성이 있으며 스키마 또는 카탈로그에 등록되지 않습니다. 임시 뷰의 수명은 사용 중인 환경에 따라 다릅니다.
- Notebooks 및 작업에서 임시 뷰의 범위는 Notebooks 또는 스크립트 수준입니다. 선언된 Notebook 외부에서 참조할 수 없으며 Notebook이 클러스터에서 분리될 때 더 이상 존재하지 않습니다.
- Databricks SQL에서 임시 뷰의 범위는 쿼리 수준입니다. 동일한 쿼리 내의 여러 문이 임시 뷰를 사용할 수 있지만 동일한 대시보드 내에서도 다른 쿼리에서 참조할 수 없습니다.
동적 보기
동적 뷰는 데이터 마스킹 외에도 행 및 열 수준 액세스 제어를 제공하는 데 사용할 수 있습니다. 동적 뷰 만들기를 참조하세요.
Hive 메타스토어의 보기(레거시)
모든 데이터 원본에 대해 레거시 Hive 뷰를 정의하고 레거시 Hive 메타스토어에 등록할 수 있습니다. Databricks는 모든 레거시 Hive 보기를 Unity 카탈로그로 마이그레이션하는 것이 좋습니다. Hive 메타스토어의 보기를 참조하세요.
Hive 전역 임시 보기(레거시)
전역 임시 보기는 컴퓨팅 리소스에 대해 실행되는 모든 워크로드에서 사용할 수 있는 임시 보기를 등록할 수 있는 레거시 Azure Databricks 기능입니다. 글로벌 임시 보기는 Hive 및 HDFS의 레거시 홀드오버입니다. Databricks는 전역 임시 뷰를 사용하지 않도록 권장합니다.