dbt 활용 사례: Data Agent Kit으로 BigQuery 사기 탐지 파이프라인 만들기
한마디로
AI 에이전트에게 말로 시키면 로그 적재부터 dbt 변환, 모델 학습, 매일 도는 자동 파이프라인까지 만들어 줘요
한눈에
Google Cloud가 Antigravity IDE에서 쓰는 Data Agent Kit을 소개했어요. 에이전트가 데이터 적재, dbt 변환, 모델 학습, Airflow 배포까지 한 흐름으로 만들어 주는 방식입니다. dbt는 그중 중복과 누락 레코드를 정리하는 변환 단계를 맡아요.
실무 맥락: 파이프라인을 단계마다 따로 만들던 방식
보통 데이터 팀은 로그 적재, 정제, 모델링, 스케줄링을 각각 다른 도구와 코드로 만들어요. 이 사례에서는 결제가 예상보다 늦게 처리되자 컴플라이언스 팀이 사기를 의심했고, 데이터 사이언티스트가 어떤 거래부터 조사할지 목록을 만들어야 하는 상황입니다. 원시 거래 로그를 적재하고 정제하고, 과거 사기 거래로 모델을 학습하고, 새 거래에 점수를 매기고, 매일 돌도록 예약하는 일이 한 덩어리로 필요해요.
Data Agent Kit이 하는 일
Data Agent Kit은 코딩 에이전트용 플러그인이나 VS Code 기반 IDE 확장으로 제공됩니다. 구성은 두 가지예요.
- MCP 도구: 에이전트를 데이터 서비스에 연결해요
- Skills: 데이터 스택을 다루는 지침과 모범 사례를 담은 Markdown 파일이에요
에디터를 떠나지 않고 데이터베이스 조회부터 Airflow 파이프라인 배포까지 할 수 있다는 점이 핵심입니다.
dbt가 맡는 정제 단계
원문의 흐름은 이렇습니다. 먼저 에이전트가 Spark Serverless 노트북을 만들어 Cloud Storage의 JSON 로그를 BigQuery의 raw_transactions 테이블에 적재해요. 그다음 정제 로직을 dbt 프로젝트로 만들어 새 배치마다 다시 돌릴 수 있게 합니다.
- 에이전트가 중복과 누락 레코드를 처리하고 송신자와 수신자 정보를 붙이는 SQL 모델을 생성해요
- 터미널에서 dbt build를 실행하면 staging 테이블과 enriched 테이블이 BigQuery에 만들어져요
- 거래 ID가 빠진 레코드는 별도 테이블로 분리돼요
- 각 거래가 한 번만 나오는지 확인하는 uniqueness 테스트도 함께 돌아가요
생성된 코드가 중복과 참조 테이블 조인을 어떻게 처리하는지는 직접 읽어 보고 실행하라는 것이 원문의 안내예요.
모델 학습부터 매일 자동 실행까지
정제된 데이터로 Random Forest 분류기를 Spark Serverless에서 학습합니다. 과거 거래의 is_fraud 컬럼이 정답 라벨이 되고, 학습된 모델 아티팩트는 Cloud Storage에 저장돼요. 추론 노트북은 is_fraud 값이 아직 없는 거래에 점수를 매겨서 사기 확률 50% 이상인 거래를 Spanner 검토 큐에 보냅니다. 이 목록은 어디를 조사할지 정하는 데 쓰이고, 실제 사기 여부는 사람이 판단해요.
마지막으로 에이전트가 YAML 파이프라인 정의와 배포 설정을 생성하고, Data Agent Kit이 이를 Airflow DAG로 바꿔요. 매일 최신 로그 적재, dbt 변환, 점수 매기기 순서로 실행됩니다. IDE의 Orchestration Pipelines 화면에서 DAG를 그래프로 보고, 태스크별 상태와 소요 시간, 로그를 확인할 수 있어요.
실무 적용 체크리스트
- 에이전트가 만든 dbt SQL은 중복 제거 기준과 조인 키를 사람이 직접 읽고 검증해요
- uniqueness 같은 dbt 테스트를 파이프라인에 넣어 두면 새 배치마다 데이터 품질을 확인할 수 있어요
- 점수 임계값(원문 예시는 50%)은 검토 인력 규모에 맞춰 팀이 정해야 해요
- 노트북, dbt 프로젝트, 파이프라인 정의를 코드로 남겨야 재현과 리뷰가 가능해요
- 같은 구조를 이탈 예측이나 이상 탐지 같은 마케팅 데이터 업무에 옮겨 볼 수 있지만, 원문은 사기 거래 시나리오만 다뤄요
자주 묻는 질문
BigQuery 란 무엇인가요?
BigQuery는 Google Cloud의 데이터 웨어하우스예요. 이 사례에서는 Cloud Storage의 원시 JSON 로그를 raw_transactions 테이블로 적재하고, dbt로 정제한 staging 테이블과 enriched 테이블을 저장하는 자리로 쓰여요.
AI 에이전트로 데이터 파이프라인을 만든 사례가 있나요?
이 글이 바로 그 사례예요. 에이전트에게 요청하면 PySpark 노트북, dbt 프로젝트, Random Forest 학습 노트북, Airflow 파이프라인 정의가 생성돼요. 사람은 코드를 검토하고 실행하는 역할을 맡습니다.
dbt는 이 파이프라인에서 어떤 역할을 하나요?
적재된 원시 데이터를 모델 학습용으로 정리하는 변환 단계를 맡아요. 중복과 누락 레코드를 처리하고, 참조 테이블과 조인하고, 거래 ID가 하나씩만 있는지 테스트합니다. 새 배치마다 dbt build로 다시 돌릴 수 있게 프로젝트로 묶는 방식이에요.
마케팅 데이터 업무에도 쓸 수 있나요?
원문은 결제 사기 탐지 시나리오만 보여 줘요. 적재, 변환, 모델링, 스케줄링을 에이전트로 묶는 구조 자체는 이탈 예측이나 이상 탐지 같은 업무에 응용해 볼 만하지만, 실제 적용은 팀 데이터 스택에 맞춰 검증해야 해요.
에디터 노트
dbt가 에이전트 워크플로우 안에서 정제와 테스트를 맡는 구조는 AI가 만든 SQL도 결국 검증 가능한 코드로 남는다는 점에서 실무적으로 의미가 있어요. 다만 원문은 Google Cloud 스택(BigQuery, Spark Serverless, Spanner, Airflow) 전제이고 실행 결과나 성능 수치는 제시하지 않으니, 도입 전에 codelab으로 직접 확인해 보세요.
참고 출처 | 원문 보기
태그
- dbt
- SQL 기반 데이터 변환 도구
- BigQuery
- Google Cloud 데이터 웨어하우스
- AI 에이전트
- 말로 시키면 작업을 수행하는 AI
- 데이터 파이프라인
- 적재부터 변환과 모델링까지 이어지는 데이터 흐름
관련 마테크
- Snowflake Semantic Studio 활용 방법, 에이전트 오류 지표 수정AI 에이전트가 틀린 답을 낸 원인 지표를 찾고 고치는 일을 한 작업 공간에서 끝낼 수 있어요
- BigQuery identity columns란, 고유 ID 자동생성으로 파이프라인 단순화하는 법BigQuery가 테이블마다 겹치지 않는 번호를 자동으로 매겨주는 identity columns 기능을 내놨어요
- dbt와 BigQuery Data Agent Kit로 데이터 파이프라인 몇 분 만에 만드는 법자연어 프롬프트 하나로 dbt 모델부터 파이프라인 배포, 장애진단까지 자동화하는 도구예요
- BigQuery 경계 없는 Lakehouse란, Databricks, Snowflake 데이터 AI 에이전트 연결법BigQuery가 Databricks, Snowflake, AWS 데이터를 옮기지 않고도 AI 에이전트로 직접 쿼리하게 해줘요