Microsoft Fabric의 구체화된 레이크 뷰
Microsoft Fabric의 구체화된 레이크 뷰
레이크하우스에서 구체화된 레이크 뷰를 제공하고 있습니다. 사실 구체화된 레이크 뷰는 다른 분석 플랫폼에서도 제공이 되고 있습니다. 이와 유사한 구체화된 뷰를 Azure Synapse Analytics에서 제공하고 있습니다. 데이터 집계와 빠른 성능을 보장받기 위해 구체화된 뷰와 구체화된 레이크 뷰를 사용하고 있습니다.
Microsoft Fabric의 구체화된 레이크 뷰를 사용 시 이점은 데이터 변환을 개선할 수 있다는 것입니다. 도움말에서는 성능 향상을 얘기하고 있지는 않습니다. 성능에 대한 내용은 사용자 정의 집계(aggregations)에 대해서 확인해봐야 합니다.
레이크하우스에서는 메달리온 아키텍처라는 데이터 레이어를 설명하고 있습니다. Bronze, Silver, Gold 레이어에 따른 데이터 품질을 나타내며 권장되는 모범 사례이며 의무사항은 아닙니다. 각 레이어(Bronze ⇒ Silver ⇒ Gold 계층 테이블)를 통해 흐르는 데이터의 구조와 품질을 개선하기 위해 이 아키텍처를 사용합니다.
o Bronze: 수집된 raw 데이터
o Silver: 데이터 정리 및 유효성 검사
o Gold: 차원 모델링 및 집계
3가지 레이어를 스키마로 구성하거나, 테이블 이름의 prefix(예, dbo.Bronze_OOO)로 구성하거나, 레이크 하우스를 개별로 구성하는 경우도 있습니다.
새 데이터가 수집되면 데이터를 변환하고 정리하면서, 집계를 하여 다음 계층으로 데이터를 별도로 구성해주어야 합니다. 수작업으로 다음 계층으로 데이터를 변환하지 않아도 구체화된 레이크 뷰를 통해 구성이 되어 효율적입니다.
여기서는 Microsoft Fabric의 구체화된 레이크 뷰를 생성해보겠습니다. 구체화된 레이크 뷰를 생성하려면 스키마가 활성화된 레이크하우스를 사용해야 합니다. 스키마가 활성화된 레이크하우스를 액세스하면, 구체화된 레이크 뷰 메뉴를 확인할 수 있습니다.

Raw 데이터를 수집하여 Bronze라는 스키마를 가진 테이블로 저장하고 있습니다. 구체화된 레이크 뷰를 생성하려면 Notebook에서 가능합니다. 레이크하우스의 구체화된 레이크 뷰 관리(미리 보기)를 클릭합니다. 노트북 열기를 통해 SparkSQL 환경의 노트북에서 쿼리 구문으로 개체를 생성할 수 있습니다. SQL 분석 엔드포인트에서는 CREATE MATERIALIZED LAKE VIEW 구문이 실행되지 않습니다.

노트북에서는 CREATE MATERIALIZED LAKE VIEW <mlv_name> AS select 구문으로 Silver 계층에 해당하는 뷰를 생성합니다.

그리고 Silver 계층의 테이블을 기반으로 Gold 계층의 차원, 팩트 테이블을 생성합니다.

뷰 생성이 완료되었다면 레이크하우스의 구체화된 레이크 뷰 관리(미리 보기)를 클릭하여 계보를 볼 수 있습니다.
일정을 클릭하게 되면, 구체화된 레이크 뷰에 대한 데이터 새로 고침을 적용할 수 있습니다. 해당 일정이 실행되면, Gold 계층의 데이터가 업데이트되게 되어 데이터 관리가 원활해집니다.

간략히 Microsoft Fabric의 구체화된 레이크 뷰를 확인해보았습니다. 아직 데이터 파이프라인이나 Notebook을 통해서 구체화된 레이크 뷰를 새로 고칠수 없어 일부 애매한 점이 있습니다. 데이터 파이프라인을 통해 이번달 데이터를 수집 저장한 후, 구체화된 레이크 뷰를 새로 고침할 수 있으면 데이터 관리가 보다 더 원활할 것 같습니다.