Metric Semantic Layer: How Lyft Governs and Scales Key Data Definitions
Author: Rohit Channe, Simran Mirchandani (Lyft) | Source: Lyft Engineering Blog | Published: 2026-06-11
한 줄 요약
Lyft가 메트릭 정의 분산(팀마다 다른 “Metric ABC” 정의)을 해결하기 위해, 메트릭의 plain-English 설명 + SQL 정의를 YAML/Jinja로 코드화한 중앙 Python 패키지(Metric Semantic Layer)를 구축.
핵심 주장/내용
- 문제: 스케일·제품 진화·인력 변동으로 같은 메트릭에 다른 정의 → outdated 정의가 의사결정에 침투
- 3대 원칙: 단순 온보딩·변경 관리(한 번 업데이트 → 모든 다운스트림 자동 전파), 의도적 거버넌스(소유권·범위·책임), 투명성·접근성
- YAML + Jinja 템플릿: 비즈니스 로직·메타데이터를 YAML로, 핵심 정의는 SQL Jinja 템플릿(time granularity·dimension별 tailoring, DRY)
- 거버넌스: ① 선택 기준 — “Golden Metric”(최소 2개 use case)만 온보딩, niche는 오버헤드 ② 소유권 모델 — Business Owner(메트릭 health, 정의 유지)와 Operational Owner(데이터 health, DQ check·backfill), 둘 다(개인 아닌 팀) 승인 필요
- 접근: Python 메서드/API + Amundsen(발견) + self-service Metric UI(코드 없이 SQL 생성) + MCP/Skills(YAML이 AI 에이전트 knowledge base, Claude/Cursor/Hex 통합, ground truth·LLM-as-judge 가드레일)
주요 수치 / 사실
- 예: Rides Completed가 대시보드 + 운영 ML 모델에서 사용 → Golden Metric
- 패키지 버전드, 자동 코드 refactor로 다운스트림에 최신 업데이트 배포
- 향후: vendor 관리 솔루션 탐색, AI-driven 분석으로 확장
관련 위키
Source: 원문 보기