Blog/DCM Projects를 위한 Cortex Code 스킬: 선언형 인프라 관리와 AI 지원 개발로 구현하는 개발, 테스트, 배포 워크플로우
MAY 14, 2026/6분 읽음

DCM Projects를 위한 Cortex Code 스킬: 선언형 인프라 관리와 AI 지원 개발로 구현하는 개발, 테스트, 배포 워크플로우

현재 퍼블릭 프리뷰로 제공되는 DCM(Database Change Management) Projects는 Snowflake에 선언형 인프라 관리를 도입합니다. 또한 Cortex Code의 dcm 스킬은 이러한 기능을 첫 번째 파일 작성부터 첫 번째 배포까지 AI 기반 워크플로우로 구현합니다. 원하는 인프라 상태를 설명하면 Cortex Code가 정의 작성을 지원하고, dcm 스킬이 실제 오브젝트 변경 전에 이를 검증하며, DCM이 각 환경 전반의 배포를 처리합니다.

대규모 인프라 관리의 어려움

스키마 드리프트는 조용히 발생합니다. ALTER TABLE 스크립트로 관리되는 테이블 기반 파이프라인은 두 명의 엔지니어가 서로 다른 브랜치에서 동일한 오브젝트를 수정하는 순간부터 동기화가 어긋나기 시작합니다. 개발(dev), 스테이징(staging), 프로덕션(prod) 등 다중 환경 배포에서는 로직을 중복으로 관리하면서 설정 변수의 일관성이 유지되기만을 기대해야 합니다. 문제 발생 시에는 예상보다 훨씬 더 큰 다운스트림 영향으로 이어질 수 있습니다.

기존 접근 방식은 지나치게 경직되어 있습니다. 마이그레이션 스크립트부터 복잡한 CI/CD 툴링, 외부 상태 저장소까지 모두 필요합니다. 물론 이런 방식도 효과는 있습니다. 하지만 모든 변경 작업마다 불필요한 복잡성이 따라옵니다. 데이터 엔지니어는 중요한 것을 구축하는 것보다 무엇이 배포되었는지 추적하는 데 더 많은 시간을 사용합니다.

DCM Projects는 전혀 다른 모델로 이 문제를 해결합니다. 변경 사항을 스크립트로 작성하는 대신 DEFINE 구문을 사용해 각 오브젝트가 어떤 상태여야 하는지를 선언합니다. DCM은 차이점(diff)을 계산하고, 실행 전에 실행 계획을 보여준 뒤, 필요한 변경사항만 적용합니다. 

DCM Projects와 DCM 스킬이 여는 가능성

DCM Project는 두 가지 핵심 구성 요소로 이루어집니다. 하나는 배포 대상과 Jinja2 템플릿 변수를 정의하는 manifest.yml이고, 다른 하나는 환경별 변수 치환을 지원하는 DEFINE <object> 구문의 표준 SQL 정의 파일(1개 이상)입니다. 구조는 깔끔하고 Git에서 버전 관리할 수 있으며, 단 한 번의 CLI 명령으로 배포할 수 있습니다.

DCM Projects는 테이블, 뷰, Dynamic Tables, Tasks, 웨어하우스, 스키마, 데이터베이스, 역할 및 권한 부여 등 다양한 Snowflake 오브젝트를 지원합니다. 지원 오브젝트는 지속적으로 추가되고 있습니다. 플랫폼 팀은 엔터프라이즈 전반의 표준을 정의할 수 있습니다. 기능 팀은 자신들의 영역을 직접 소유하고 안정적으로 배포할 수 있습니다.

Cortex Code의 DCM Projects 스킬은 이 범위를 한층 더 확장합니다. 이 스킬은 DCM 컨텍스트, 구문 참조, 워크플로우 가드레일을 AI에 로드하는 도메인 특화 스킬입니다. 이를 통해 Cortex Code는 DCM Projects의 선언형 템플릿 구문 사용 방식을 이해하고 DCM ANALYZE 및 PLAN으로 변경 사항 검증을 지원하며 DCM 모범 사례를 안내할 수 있습니다.

이 스킬은 DCM, manifest.yml, snow dcm, DEFINE TABLE 또는 관련 키워드를 언급하면 자동으로 활성화됩니다. 별도의 수동 호출은 필요하지 않지만 /dcm 명령으로 직접 호출할 수도 있습니다.

기존 파이프라인 편집, 변경 테스트, 안전한 배포

이제 이 워크플로우가 실제 운영에서 어떻게 작동하는지 살펴보겠습니다. 예를 들어, 팀에서 일일 수집 파이프라인을 위한 Dynamic Tables와 Tasks 세트를 관리하는 DCM 프로젝트를 배포했다고 가정해 보겠습니다. 스키마 변경이 예정되어 있으며, 세 개의 다운스트림 오브젝트에 데이터를 공급하는 소스 테이블에 새 열을 추가해야 합니다. 기존 방식이라면 여러 단계를 수작업으로 처리해야 하며 다운스트림 오브젝트에 영향을 줄 위험도 큽니다.

GitHub Actions로 전체 루프 자동화

동일한 DCM 명령은 CI/CD에서도 그대로 동작합니다. Snowflake Labs DCM 리포지토리에는 재사용 가능한 네 가지 GitHub Actions 워크플로우가 포함되어 있습니다.

  • push 시 연결 테스트 실행

  • main 대상 모든 pull request에서 snow dcm plan 실행

  • merge 시 프로덕션 배포 수행

  • 승인 게이트를 포함한 stage-to-prod 승격 워크플로우 지원

이를 통해 모든 스키마 변경은 자동으로 동일한 리뷰 루프를 거치게 됩니다. PR에서 PLAN 출력이 확인 가능하며, DEPLOY는 승인을 거쳐야만 실행됩니다. 이제 Snowflake 인프라 변경 사항에도 애플리케이션 코드와 동일한 수준의 검토 체계가 적용됩니다.

지금 DCM Projects 시작하기

현재 퍼블릭 프리뷰 단계인 DCM Projects는 누구나 손쉽게 시작할 수 있습니다. 설명서를 살펴보거나 개발자 가이드 시작하기를 직접 따라 해 보세요. /dcm skill reference 또는 자연어 프롬프트 내 DCM 키워드를 활용하면 DCM Projects와 대화형으로 상호 작용할 수 있으며 몇 분 만에 초기 프로젝트를 스캐폴딩하고 실행 전에 검증 가능한 인프라 변경 사항을 배포할 수 있습니다.

 

미래 전망 진술

본 콘텐츠에는 향후 제품 제공에 대한 미래 전망 진술이 포함되어 있으며, 이는 제품 제공에 대한 약속이 아닙니다. 실제 결과 및 제공 사항은 알려진 및 알려지지 않은 위험과 불확실성에 따라 달라질 수 있습니다. 보다 자세한 내용은 최신 10-Q를 참조하세요.

Subscribe to our blog newsletter

Get the best, coolest and latest delivered to your inbox each week