콘텐츠로 건너뛰기
Telemetry
문서 찾아보기
개념 및 SQL 패턴업데이트된 2026년 7월 28일Telemetry 편집 및 제품 팀의 검토2 최소 읽기

코딩 에이전트와 함께 이 문서를 사용하세요.

Claude Code, Codex, Cursor 또는 다른 코딩 에이전트에 대한 집중 프롬프트 팩을 연 다음 여기에서 다루는 워크플로에 맞게 조정하세요.

SQL 코호트 유지 분석

Retention은 정의된 행위자가 시작 마일스톤 이후에 복귀하는지 여부를 묻습니다. 유용한 보존 쿼리에는 행위자, 집단 이벤트, 적격 반품 활동, 간격 및 관찰 기간이 명시되어 있습니다. 5가지 선택 사항이 명확해질 때까지 "주간 보존"은 모호합니다.

코호트 및 활동 테이블을 별도로 구축

WITH cohorts AS (
  SELECT
    account_id,
    date_trunc('week', MIN(timestamp_utc)) AS cohort_week
  FROM product_events
  WHERE event_name = 'activation_completed'
  GROUP BY account_id
),
activity AS (
  SELECT DISTINCT
    account_id,
    date_trunc('week', timestamp_utc) AS activity_week
  FROM product_events
  WHERE event_name IN ('query_completed', 'dashboard_viewed')
)
SELECT
  cohort_week,
  activity_week,
  COUNT(DISTINCT cohorts.account_id) AS retained_accounts
FROM cohorts
JOIN activity
  ON cohorts.account_id = activity.account_id
 AND activity.activity_week >= cohorts.cohort_week
GROUP BY cohort_week, activity_week
ORDER BY cohort_week, activity_week;

이 결과는 코호트 및 활동 주를 보존합니다. 보고 계층은 선택한 SQL 엔진에서 지원하는 날짜 산술을 확인한 후 간격을 0주, 1주 및 이후 기간으로 변환할 수 있습니다. 중간 날짜를 표시하면 경계 실수를 더 쉽게 잡을 수 있습니다.

분모를 한 번 정의하십시오.

분모는 나중에 활동 이벤트를 생성한 숫자가 아니라 코호트의 적격 행위자 수입니다. 코호트 크기를 별도로 계산하고 이를 유지된 수에 결합합니다. NULLIF로 백분율을 보호하고 출력에서 ​​두 개수를 모두 유지합니다.

최근 코호트는 이후 간격에 도달할 시간이 없었습니다. 해당 셀을 0 보존으로 처리하는 대신 불완전한 것으로 표시하십시오. 또한 0주차가 활성화 자체를 의미하는지 아니면 활성화 후 별도의 반환을 의미하는지 결정하세요.

백그라운드 하트비트가 아닌 지속성 값을 나타내는 이벤트를 사용하십시오. 제어된 필드가 포함된 테스트 계정 및 자동화된 활동을 제외합니다. 작은 장치를 사용하여 신원 병합, 이벤트 중복, 지각 및 시간대 경계를 검증합니다.

다른 날짜 계산을 적용하기 전에 마일스톤 진행에 대한 퍼널 분석, 간격 규칙에 대한 시간 버킷팅DataFusion SQL 참조를 읽어보세요. SQL 방언.

관련 제품 기능

구조화된 이벤트 테이블에 대해 읽기 전용 DataFusion SQL을 실행하고 결과를 재사용합니다.

소유권 및 기술 참조

이 설명은 Telemetry 편집팀의 소유입니다. 제품 팀은 동작, 예시, 경계를 검토합니다.

편집 기준 검토