TheDataOpsManifesto

DataOps품질 매니페스토

모든 규모와 모든 기술 스택의 데이터 팀과 수년간 일하면서, 우리는 품질이 오직 테스트에서만 나오며, 테스트할 가치가 있는 품질은 데이터만이 아니라 전달 전체라고 믿게 되었습니다. 완벽한 데이터라도 잘못된 코드, 보고서, 모델을 거치면 여전히 오류이고, 고객은 그 차이를 구분할 수 없습니다. 우리는 데이터 품질 잔소리꾼이었습니다. 행 수를 눈으로 확인하고 괜찮기를 바랐습니다. 문서 하나만 남기고 아무것도 고치지 못한 12개월짜리 평가를 수행했습니다. 아무도 열어 보지 않는 대시보드를 만들었고, 오전 9시에 고객에게서 잘못된 데이터 이야기를 들었습니다. 우리가 원하는 것은 모든 지점에서 품질을 증명하는 방법입니다. 키보드 앞의 영웅 없이도 돌아가는 테스트, 그리고 고칠 수 있는 사람에게 그대로 건넬 수 있는 증거입니다. DataOps 매니페스토는 품질이 무엇보다 중요하다고 말합니다. Data Journey 매니페스토는 고객이 문제를 발견하는 것은 용납할 수 없다고 말합니다. 이 매니페스토는 그 둘을 실행에 옮기는 방법입니다.

매니페스토에 서명하기

우리는 일을 통해 다음의 가치를 깨닫게 되었습니다:

  • 희망과 수동 점검보다 자동화된 테스트
  • 일회성 프로젝트보다 지속적인 실천
  • 의견보다 측정
  • 손으로 작성한 규칙보다 자동 생성된 테스트
  • 계보 다이어그램보다 테스트 커버리지
  • 마지막 단계의 검사보다 라인 위의 품질 스테이션
  • 지시와 강제보다 영향력과 증거
  • 언젠가의 완벽함보다 오늘의 70%

여섯 그룹의 24가지 원칙, 그리고 하나 더. 원칙을 선택하면 해당 위치로 이동합니다.

1-4

증거

  1. 1

    테스트한 것만 안다

    희망은 테스트가 아닙니다. 비즈니스 리뷰도, 녹색으로 끝난 파이프라인 실행도 테스트가 아닙니다. 어떤 테스트도 확인하지 않았다면, 그것이 맞는지 알 수 없습니다.

  2. 2

    데이터를 테스트하고, 도구를 지켜보라

    품질은 데이터 품질과 프로세스 품질을 더한 것입니다. 테이블이 완벽해도 새로 고침이 실행되지 않았다면 쓸모가 없고, 녹색으로 끝난 작업은 그 안의 숫자에 대해 아무것도 말해 주지 않습니다. 모든 도구의 오류와 타이밍을 점검하십시오.

  3. 3

    수동 점검은 없다

    수동 점검은 누군가 기억할 때만 실행되고, 새벽 2시에는 아무도 기억하지 못합니다. 데이터는 매일 도착하므로, 모든 테스트는 매번의 로드마다 자동으로 실행됩니다. Data Journey 매니페스토는 분명하게 말합니다. 수동 품질 테스트는 전염병처럼 피하라.

  4. 4

    기준을 정하기 전에 측정하라

    데이터를 프로파일링하고, 테스트를 만들고, 기준이 무엇이어야 하는지는 베이스라인이 말하게 하십시오. 위원회가 기준부터 쓰면 그 뒤의 모든 결정이 늦어집니다. 테스트 결과가 없다면, 당신은 의견을 가진 또 한 사람일 뿐입니다.

5-6

사람

  1. 5

    한 사람에서 시작하라

    무료 도구를 가진 의욕 있는 한 사람이 헌장을 가진 운영 위원회보다 낫습니다. 잔소리꾼을 찾아 그 사람에게 증거를 건네십시오.

  2. 6

    영향력이 곧 일이다

    결함을 발견한 사람이 그 결함을 만든 시스템을 소유하는 경우는 드뭅니다. 소스 데이터는 원래 만들어진 목적에는 충분히 쓸 만하기 때문에, 그 소유자는 바꿀 이유가 없습니다. 수정에 쉽게 동의할 수 있게 만드십시오.

7-9

테스트

  1. 7

    테스트는 프로파일이 쓰게 하라

    테이블마다 수백 개의 테스트를 손으로 코딩하는 일은 결코 끝나지 않습니다. 테스트는 자동으로 생성하고, SQL은 도메인 전문가만 아는 비즈니스 규칙을 위해 아껴 두십시오.

  2. 8

    테스트는 공유 자원이다

    분석가, 데이터 스튜어드, 엔지니어, 그리고 모델이 모두 같은 규칙을 다루는데, 그중 Git 계정이 있는 것은 하나뿐입니다. 모든 테스트와 모든 결과를 하나의 기록 데이터베이스에 두고, 사람은 UI로, 코드는 API로, 모델은 MCP로 접근할 수 있게 하십시오. 권위 있는 사본은 하나뿐이며, 모든 변경 사항은 diff, 리뷰, 롤백을 위해 Git으로 보냅니다.

  3. 9

    언젠가의 완벽함보다 오늘의 70%

    작동하는 테스트를 오늘 오후에 배포하십시오. 한 바퀴를 돌 때마다 데이터에 대해 무언가를 배우고, 그때마다 기준은 나아집니다.

10-13

점수와 실행

  1. 10

    중요한 것에 점수를 매겨라

    팩스 번호 열 때문에 행동을 바꾸는 사람은 없습니다. 고객이 신경 쓰는 요소에 점수를 매기고, 고객마다 다른 점수를 만드십시오.

  2. 11

    모든 점수는 테스트로 거슬러 올라간다

    수정 경로가 없는 점수는 소음일 뿐입니다. 대시보드의 모든 숫자는 문제를 보여 주고 수정을 증명하는 테스트로 거슬러 올라가야 합니다.

  3. 12

    행동하기 쉽게 만들어라

    모든 대시보드에는 이름이 있는 고객과, 데이터를 고칠 수 있는 이름이 있는 담당자가 있습니다. 문제, 그 영향, 재현 방법, 바꿔야 할 내용을 그들이 이미 쓰고 있는 티켓 시스템으로 건네십시오.

  4. 13

    추세선을 지켜라

    점수 하나는 의견입니다. 윗사람이 이미 보고 있는 KPI에 연결된 6개월치 점수는 예산입니다. 두 개의 숫자로 시작하십시오. 프로덕션의 오류 수, 그리고 변경 사항을 배포하는 데 걸리는 시간입니다. 더 많은 여지를 요청할 때 가리키는 것이 바로 이 추세입니다.

14-19

실천

  1. 14

    오류를 사랑하라

    결함 하나하나가 데이터나 프로세스에 대해 무언가를 가르쳐 줍니다. 품질 분임조에서 함께 검토하고, 결함을 만든 단계를 고치십시오. 사람이 아니라 단계를 탓하십시오.

  2. 15

    납품 조건을 테스트로 만들어라

    데이터 계약은 양쪽이 합의한 테스트의 집합입니다. 실행할 수 있는 조건이 실행할 수 없는 약속보다 낫습니다.

  3. 16

    마이그레이션을 증명하라

    마이그레이션은 새 시스템이 옛 시스템과 같은 진실을 담고 있다는 약속입니다. 양쪽을 모두 테스트하고, 행 수부터 열 값까지 그것을 증명하십시오.

  4. 17

    소음을 줄여라

    아무도 믿지 않는 알림은 알림이 없는 것보다 나쁩니다. 실패가 의미를 가질 때까지 모든 테스트를 조정하고, 조치할 수 있는 사람에게 보내십시오. 매일 밤 울리는 알림은 등급을 낮추십시오. 절대 음소거하지는 마십시오.

  5. 18

    프로덕션에서도 당신이 책임진다

    배포는 일의 중간이지 끝이 아닙니다. 누군가는 라인을 지켜봐야 하고, 그 누군가는 바로 당신입니다.

  6. 19

    에이전트가 쓴 것을 테스트하라

    에이전트는 몇 초 만에 변환을 배포하지만 파이프라인에 대해서는 아무것도 기억하지 않습니다. 수정 티켓과 맞춤 SQL의 초안은 에이전트에게 맡기십시오. 그 밖에 에이전트가 손댄 모든 것은 테스트가 확인하기 전까지는 테스트되지 않은 것입니다.

20-24

모든 지점에서 품질을 증명하라

  1. 20

    테스트는… 소스에서

    소스가 목적에 맞는지 테이블 하나, 열 하나씩 증명하십시오. 소스는 당신의 것이 아니므로, 당신의 증거는 소유자를 설득할 수 있어야 합니다.

  2. 21

    테스트는… 수집 단계에서

    모든 테이블의 신선도, 양, 스키마 변경, 드리프트를 지켜보십시오. 6,000개의 테이블을 손으로 지켜볼 수는 없습니다. 이상 탐지는 할 수 있습니다.

  3. 22

    테스트는… 프로덕션에서

    모든 레이어 사이에 인계철선을 두고, 결함이 나오면 라인을 멈추십시오. 모든 실패가 멈출 만한 것은 아니므로, 어떤 것은 멈추고 어떤 것은 경고할지 미리 정해 두십시오. 누군가 살펴보는 동안 프로덕션은 마지막으로 정상이었던 데이터로 계속 돌아갑니다.

  4. 23

    테스트는… 개발 단계에서

    배포하기 전에 오늘의 코드를 어제 프로덕션 데이터의 복제본이나 일부에 대해 실행하십시오. 열 이름을 바꾸면, 어떤 다운스트림 보고서를 망가뜨렸는지 빨간 불이 알려 주어야 합니다. 여기서 잡은 버그의 비용은 고객이 발견한 버그의 100분의 1입니다.

  5. 24

    테스트는… 어디서나, 매번, 자동으로

    NULL 점검 하나가 네 곳에서 네 가지 일을 합니다. 하나라도 건너뛰면 그 실패를 놓칩니다. 모든 테이블, 모든 열, 모든 도구, 그리고 고객이 읽는 모든 숫자를 다루십시오. 수동 테스트는 없습니다.

품질로 DataOps를 시작하라

DataOps 매니페스토에는 18가지 원칙이 있지만, 월요일에 그 모두를 도입하는 사람은 없습니다. 자동화된 데이터 테스트로 시작하십시오. 가장 비용이 적게 드는 단계이고, 고객이 가장 먼저 체감하는 단계입니다. 오케스트레이션, CI/CD, 관측 가능성은 모두 데이터가 맞는지 아는 것에 달려 있습니다.

DataOps 품질 매니페스토에 서명하기

품질을 바라기보다 자동화된 테스트로 증명하고 싶다면, 이름을 올려 주십시오.

오픈 소스로 매니페스토를 실천하십시오

DataOps TestGen

Profile your data and generate the quality tests automatically. Full coverage in minutes, with no hand-written rules to maintain.

Install TestGen

DataOps Process Observability

Watch every tool and every run from source to the dashboards that depend on it. Catch errors, late arrivals, and bottlenecks before your customer does.

Get Process Observability

다른 매니페스토 읽기

The DataOps Manifesto

18 principles for delivering analytics, plus one: start with data testing.

Read the DataOps Manifesto

The Data Journey Manifesto

22 principles for observing the paths your data takes, so you find the problem before your customer does.

Read the Data Journey Manifesto