간단한 4단계로 dbt 스키마 테스트 레벨 업
4110 단어 sqldbtdatasciencedatabase
아시다시피 dbt 및 관련 도구를 사용하여 더 많은 작업을 수행할 수 있습니다. Packages in dbt은 본질적으로 종속성이 있는 데이터 변환 프로젝트에 유용하고 더 복잡한 기능을 추가하는 좋은 방법입니다.
dbt_utils
이 경우에는 the dbt_utils package 에 초점을 맞출 것입니다. 이것은 dbt를 개발하는 사람들이 공식적으로 만들고 유지 관리하는 적절한 이름의 유틸리티 패키지입니다. 아직 방법을 모르는 경우 패키지를 추가하는 방법을 보여주고 유용하다고 생각되는 dbt_utils 자동화된 스키마 테스트의 몇 가지 예를 공유합니다.
참고: dbt_utils 스키마 테스트의 큰 장점 중 하나는 모델 또는 열 수준에서 테스트할 수 있다는 것입니다.
간편한 4단계 설치
해보자!
1. Packages.yml을 루트 dbt 폴더에 추가합니다.
dbt 프로젝트의 루트 수준에서 새 파일을 만들고 이름을 packages.yml로 지정합니다.
2. 패키지에 dbt_utils 추가
this official page 에서 최신 패키지 코드를 가져온 다음 복사하여 packages.yml 파일에 붙여넣습니다.
오늘 코드는 다음과 같습니다.
packages:
- package: fishtown-analytics/dbt_utils
version: 0.7.0
packages.yml 파일을 저장합니다. 다음과 같아야 합니다.
3. 로컬에서 dbt deps 실행
dbt 프로젝트를 제어하고 명령을 보낼 때마다 명령줄 또는 터미널을 엽니다. 다음 명령을 실행하여 컴퓨터에 dbt_utils 패키지를 설치하면 사용할 수 있습니다.
dbt deps
다음과 같은 내용이 표시되어야 합니다.
그렇다면 성공! 패키지가 설치되고 새 테스트를 사용할 수 있습니다.
4. 새 테스트 사용
dbt's built-in testing과 마찬가지로 dbt_utils 자동 스키마 테스트는 "tests"구성에서 테스트 중인 열 또는 모델 아래에 배치되어야 합니다. 그것이 본질적으로 그들이 통합되는 방식입니다!
dbt_utils 스키마 테스트
이제 dbt_utils 패키지에서 새로운 dbt 자동 스키마 테스트의 전체 호스트와 그 이상을 사용할 수 있습니다. 지금은 내가 좋아하는 몇 가지 dbt_utils 스키마 테스트를 보여드리겠습니다.
최신성 - 모델 수준 테스트
최신성은 참조된 타임스탬프 열이 기간 내에서 변경되었는지 확인하는 구성 가능한 스키마 테스트입니다. 즉. 모델이 매일, 시간, 주 등으로 로드되는지 확인할 수 있습니다.
models:
- name: model_name
tests:
- dbt_utils.recency:
datepart: day
field: created_at
interval: 1
Equal_Rowcount - 모델 수준 테스트
equal_rowcount는 수집 또는 변환 중에 내 소스에서 변경된 사항이 없는지 확인하기 위한 환상적인 테스트라고 생각합니다. 두 모델이 동일한 수의 행을 포함할 것으로 예상되는 경우 대상 모델에서 둘 다 쉽게 참조할 수 있습니다.
models:
- name: model_name
tests:
- dbt_utils.equal_rowcount:
compare_model: ref('other_table_name')
dbt_utils은 프로젝트에 많은 기능을 추가할 수 있는 진정으로 강력한 패키지이며 설치 비용이 들지 않습니다. 다른 스키마 테스트에는 카디널리티에 대한 유효성 검사, 고유한 SQL 조건, 허용되지 않는 값, 행 같음, 행 수 등이 포함됩니다.
읽어 주셔서 감사합니다!
이것이 당신에게 도움이 되었기를 바라며, 당신이 나처럼 당신의 dbt 프로젝트에 멋진 기능을 더 추가할 것이라는 기대에 들떠 있기를 바랍니다! dbt 또는 데이터 엔지니어링에 대한 더 많은 경험을 공유하고 싶다면 언제든지 의견을 말하거나 저에게 연락하십시오. 누구나 Google BigQuery를 사용하여 dbt 테스트를 시도할 수 있도록 열려 있는 dbtTestExamples repository on GitHub이 있습니다.
Reference
이 문제에 관하여(간단한 4단계로 dbt 스키마 테스트 레벨 업), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/corissa/level-up-your-dbt-schema-tests-in-4-easy-steps-6k8텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)