콘텐츠로 이동

데이터 품질 기준

정상 수집 기준

지표 정상 경고 실패
키워드 수 10개 5개 미만 0개
수집 성공률 (24h) 90% 이상 70~90% 70% 미만
연속 실패 0회 1~2회 3회 이상

예상되는 품질 이슈

새벽 시간 데이터 부족

  • 시간대: 01:00 ~ 06:00 KST
  • 현상: 다음 트렌드가 베타 서비스로, 새벽에는 데이터가 제한적
  • 처리: status=EMPTY 스냅샷으로 기록. 정상 동작이므로 알림 불필요

HTML 구조 변경

  • 현상: 대상 사이트가 HTML 구조를 변경하면 파싱 결과가 0건
  • 처리: keyword_count=0이 낮 시간에 연속 발생하면 파서 수정 필요
  • 확인 방법: RustFS Bronze의 raw.html을 다운로드하여 구조 변경 확인

중복 수집

  • 현상: 같은 시간대에 동일한 키워드 목록이 반복 수집됨
  • 원인: 수집 간격보다 트렌드 갱신 주기가 길 때 발생 (정상)
  • 처리: 별도 중복 제거 불필요 (시계열 분석 시 자연스러운 현상)

품질 확인 쿼리

최근 24시간 수집 성공률

SELECT
    COUNT(*) AS total,
    SUM(CASE WHEN status = 'SUCCESS' THEN 1 ELSE 0 END) AS success,
    ROUND(SUM(CASE WHEN status = 'SUCCESS' THEN 1 ELSE 0 END) / COUNT(*) * 100, 1) AS success_rate
  FROM trend_snapshots
 WHERE collected_at >= NOW() - INTERVAL 24 HOUR;

연속 실패 확인

SELECT id, collected_at, status, error_message
  FROM trend_snapshots
 WHERE status = 'FAILED'
   AND collected_at >= NOW() - INTERVAL 6 HOUR
 ORDER BY collected_at DESC;

키워드 수 이상 감지

SELECT s.id, s.collected_at, COUNT(k.id) AS keyword_count
  FROM trend_snapshots s
  LEFT JOIN trend_keywords k ON k.snapshot_id = s.id
 WHERE s.status = 'SUCCESS'
   AND s.collected_at >= NOW() - INTERVAL 24 HOUR
 GROUP BY s.id
HAVING keyword_count < 5
 ORDER BY s.collected_at DESC;