평균은 아무 의미가 없다

4 days ago 12

새 캐시 계층 배포 후 평균 지연 시간은 112ms에서 122ms로 악화됐지만, 중앙값은 99ms에서 54ms로 개선되고 p99는 309ms에서 678ms로 악화돼 단일 통계값만으로 성패를 판단하기 어려움 배포 후 지연 시간 분포가 하나의 봉우리에서 두 봉우리로 갈라졌으며, 누적분포함수(CDF) 를 겹쳐 보면 약 140ms를 경계로 빠른 요청은 개선되고 느린 요청은 악화됨 백분위별 변화량을 나타내는 이동 함수와 일별 능선 그래프·히트맵은 개선과 회귀의 크기, 배포율이 0%에서 100%로 높아지는 동안 느린 요청 집단이 커지는 과정을 드러냄 데이터를 캐시 결과와 응답 크기로 나누자 작은 응답의 캐시 적중은 빨라지고 큰 응답의 캐시 미스는 추가 홉 때문에 느려져 이봉 분포가 만들어진 원인을 확인할 수 있었음 평균이나 특정 백분위 하나만 선택하면 서로 반대되는 판단도 정당화할 수 있으므로, 분포 전체와 하위 집단을 함께 살펴야 캐시 최대 객체 크기 확대나 큰 응답 분할 같은 조치로 이어질 수 있음 프로덕션에서 보이지 않던 성능 개선 lld 관련 성능 개선은 벤치마크에서 나타났지만, 실제 프로덕션 대시보드에서는 데이터 잡음 때문에 분명한 변화를 찾기 어려웠음 빌드 속도는 콜드 캐시, 증분 빌드, 로컬·원격 실행, 시스템 상태, 워크로드 등 여러 변수에 따라 크게 달라질 수 있음 누적분포함수(CDF)로 빌드 성능을 평가한 사례를 계기로, 하나의 이미지나 통계값보다 여러 방식으로 데이터 자체를 살펴볼 필요가 생김 모든 예시는 고정 시드를 사용한 하나의 합성 데이터셋에서 생성됐으며, 전체 스크립트는 nix-shell shebang을 포함해 Nix 환경에서 각 그림을 그대로 재현할 수 있음 이야기용 데이터와 차트 생성에는 AI가 활용됐음 평균으로는 실패처럼 보인 캐시 배포 웹 서비스의 요청 지연 시간을 줄이려고 새 캐시 계층을 일주일 동안 배포했지만, 평균 지연 시간은 112ms에서 122ms로 9% 증가함 평균만 보면 변경을 되돌리고 장애 대응과 사후 분석을 시작할 만한 회귀로 판단하기 쉬움 하나의 데이터가 만든 네 가지 판단 배포 전후 통계는 서로 다른 방향을 가리킴 평균: 112ms → 122ms, 9% 악화 p50 중앙값: 99ms → 54ms, 46% 개선 p95: 224ms → 454ms, 103% 악화 p99: 309ms → 678ms, 119% 악화 평균은 가벼운 회귀를 나타내지만, 중앙값으로는 일반적인 요청이...

Read Entire Article