웨어하우스 개발 및 배포를 위한 Git 통합 활용법

적용 대상: ✅ Microsoft Fabric의 웨어하우스

이 글에서는 Fabric Git 통합과 Fabric Data Warehouse을 어떻게 다루는지 설명합니다.

Important

이 기능은 프리뷰 상태입니다.

브랜치 생성, Git 저장소 업데이트, 변경 사항을 Fabric 작업 공간으로 동기화하기, 창고 변경 사항을 Git에 커밋하는 등 일반적인 개발 워크플로우를 다룹니다. 이러한 워크플로우는 버전 관리, 협업, 그리고 창고 스키마 변경의 통제된 배포를 가능하게 합니다.

Fabric Data Warehouse Git 워크플로우

Workspace 설정 페이지에서 git 제공자와의 연결을 쉽게 설정할 수 있습니다. 연결을 설정하려면 Git 통합 시작을 참조하세요. 지침에 따라 Git 공급자로 Azure DevOps 또는 GitHub을 사용하여 Git 리포지토리에 연결하십시오.

지점 생성 또는 체크아웃/전환

Fabric Data Warehouse 작업 공간에서 Git 분기를 관리할 수 있습니다. 새 브랜치를 만들거나, 브랜치 간 전환, 또는 별도의 작업 공간으로 분기할 수 있습니다.

현재 지점 창과 드롭다운 리스트의 Fabric 포털에서 캡처한 스크린샷입니다.

  • 새 지점 확인: 이 작업을 위한 새로운 분기를 만들어 주세요. 항상 새로운 운영 지점에서 일하세요, main아니면 기존 작업 영역 상태를 유지하면서 현재 작업 영역을 새 브랜치에 연결하려면 새 브랜치 체크아웃을 선택합니다.

  • 다른 작업 공간으로 확장하기: 분기에서 작업 공간을 생성하거나 연결하는 방법에 대한 자세한 내용은 ' 다른 작업 공간으로 개발하기'를 참조하세요.

  • 기존 지점 간 전환: 브랜치를 바꾸면 워크스페이스가 새 브랜치와 동기화되고, 워크스페이스 내 모든 항목이 오버라이드됩니다. 자세한 내용은 '지점 전환'을 참조하세요.

워크플로우를 분기할 때, 각 웨어하우스는 다른 웨어하우스와의 의존성을 분석하여 아이템 동기화의 순서를 결정하여 브랜치 워크플로우가 기대대로 작동하는지 확인합니다.

Git의 충돌 해결에서 새 분기를 확인하는 방법에 대해 자세히 알아봅니다.

데이터베이스 프로젝트를 활용해 로컬에서 개발하세요

Git 저장소의 웨어하우스 데이터베이스 프로젝트를 통해 로컬 개발 을 수행할 수 있습니다. 창고 데이터베이스 프로젝트를 오프라인으로 개발할 수도 있습니다.

  1. 웨어하우스 데이터베이스 프로젝트가 포함된 Git 저장소를 복제합니다.
  2. 예를 들어, Visual Studio Code에서 SQL 데이터베이스 프로젝트 확장 기능을 사용하여 데이터베이스 프로젝트를 로컬에서 엽니다.
  3. 스키마 업데이트나 스크립트 변경은 데이터베이스 프로젝트에서 직접 하세요.
  4. 데이터베이스 프로젝트를 구축하여 오류를 로컬에서 검증하세요.
  5. 개발이 완료되면 변경 사항을 원격의 Git 브랜치로 커밋하고 푸시하세요. 한 번 푸시되면, 업데이트된 프로젝트 정의는 Git 통합 워크플로우를 통해 Fabric 작업 공간에 동기화될 수 있습니다.

Git에서 작업 공간으로 변경 사항을 동기화하기

기능이나 작업 브랜치(에 속main하지 않음)에서 개발을 완료한 후, Git에서 업데이트된 데이터베이스 프로젝트 정의를 Fabric 작업 공간으로 동기화하여 웨어하우스가 최신 승인된 변경 사항을 반영하도록 할 수 있습니다.

  1. 만약 이전에 기능 분기를 만들었다면(예: 분기 생성이나 체크아웃 시), 먼저 변경 사항을 검토하고 대상 분기로 병합할 풀 요청을 생성하세요. 풀 요청은 단순히 한 브랜치에서 다른 브랜치로 변경 사항을 병합하는 요청입니다.

  2. 풀 리퀘스트가 Git에서 병합된 후, Fabric 작업 공간의 소스 제어로 가세요.

  3. 최신 변경 사항을 창고에 적용하기 위해 Git 저장소에서 작업 공간을 업데이트하거나 동기화하세요.

    Fabric 포털에서 소스 컨트롤 창의 '모두 업데이트' 버튼과 창고에 적용될 예정인 변경 사항이 보입니다.

  4. Git과 Fabric 작업 공간 간 변경 동기화 중에 충돌이 발생하면, 충돌 해결 지침을 따라 충돌을 해결하세요.

변경을 하고 Git에 웨어하우스 업데이트를 커밋하세요

라이브 웨어하우스에 직접 변경이 필요하다면, 라이브 웨어하우스 정의에서 소스 컨트롤을 업데이트할 수 있습니다.

Tip

구조화된 버전 관리 형식으로 스키마 변경을 관리하려면 데이터베이스 프로젝트에서 웨어하우스 스키마 파일을 활용하세요. Develop에서 설명한 대로 데이터베이스 프로젝트를 통해 로컬 저장소에 스키마 변경을 계획할 수 있으며, 이 섹션에서 설명한 대로 실시간 창고 상태에 직접 점진적으로 변경하는 것이 아닙니다.

변경 사항을 검토하고 Git 저장소에 커밋하려면:

  1. 웨어하우스 객체를 생성하거나 수정하려면 Fabric 포털 SQL 쿼리 편집기, SQL Server Management Studio(SSMS),Visual Studio CodeMSSQL 확장 프로그램 또는 기타 쿼리 도구에서 T-SQL 문장을 실행하세요. 이러한 변경 사항은 라이브 웨어하우스 스키마를 업데이트합니다.

  2. Fabric 작업 공간에서 Source Control로 가세요.

  3. 수정된 창고는 변경 목록에 대 기 중인 변경 항목 으로 나타납니다.

  4. 분기(branch-out) 또는 작업 공간에서 git 간 동기화 워크플로우 동안, 시스템은 DacFx 기반 증분 추출을 사용하여 스키마 추출을 수행합니다. 스키마 추출은 관련 스키마 변경만 캡처합니다. 감지된 변경 사항을 검토하세요:

    • 창고 품목 정의와 현재 지점 버전을 비교해 보세요.
    • 개별 항목이나 여러 항목에 대한 스키마 차이를 검증하세요.
  5. 커밋하고 싶은 창고 아이템을 선택하세요.

  6. 커밋 메시지를 추가하고 변경 사항을 Git 저장소에 커밋하세요.

    Fabric 포털의 소스 컨트롤 메뉴 스크린샷으로, 커밋 대화 창과 선택적 커밋 메시지가 보여요.

  7. 커밋 후:

    • Git 저장소로 가세요.
    • 커밋 히스토리와 업데이트된 데이터베이스 프로젝트 항목을 통해 변경 사항을 확인하세요.

    예를 들어, 에서 열dbo.CustomersAddress 제거한 커밋이 있습니다:

    두 커밋의 차이를 보여주는 Fabric 포털 스크린샷입니다.