2014-12-14 4 views
1

내 웹 사이트의 일부 프로세스에 대한 메트릭 (통계)을 매일 저장하여 나중에 그래프에 표시하려고합니다. 측정 항목의 예 :메트릭 - 데이터베이스 번호 저장 규칙?

FacebookLikes 
SiteVisitors 

이제 MySQL 테이블을 디자인하는 방법을 알고 싶습니다. - 나는 "DeltaFacebookLikes"와 "DeltaSiteVisitors"를 저장해야하는지 여부 - 아니면 각 항목에 의해 성장을 계속 절대 번호를 저장할지 여부 :

ID DATE FACEBOOK_LIKES SITE_VISITORS 

첫 번째 예제 (델타 값을 저장)은 다음과 같습니다
여기서 문제는 내가 "합계"가치를 갖지 않을 것이라는 것입니다.

1 23.10 33    50 
2 24.10 14    80 
3 25.10 12    5 
4 26.10 28    105 

두 번째 예 (절대 값을 저장) 될 것이다 :
여기서 문제가 I는 총 값을 가지고 있지만, I는 V를 감산 할 필요가 있다는 것이다 (X) (V)의 (X + 1) 내지 실제 델타 값을 보관하십시오.

1 23.10 33    50 
2 24.10 47    130 
3 25.10 59    135 
4 26.10 87    240 

옳고 그른 방법은 무엇입니까? 잘못된 방법이 있습니까?
또는 두 가지 모두 합쳐 졌습니까?

답변

2

나는이 질문에 옳은 대답은 없다고 생각하지만 내 직감은 매일 증분 숫자를 저장한다고 말합니다.

누적 수치 저장은 매우 효율적입니다. 테이블에서 두 개의 값을 찾는 것만으로 이틀 간의 차이를 쉽게 얻을 수 있습니다. 임의의 시간 프레임에 대해 좋아하는 페이스 북의 수를 묻는 사용자가있는 경우 특히 효율적입니다.

  • 당신이 실수를하거나 하루의 부하를 그리워 경우는 다음 문제를 해결하는 것은 쉽다 : 한편

    은, 각각의 숫자는 어떤 다른 장점이있다.
  • 표준 편차와 분산을보다 쉽게 ​​계산할 수 있습니다.
  • 월요일 평균와 같이 인접하지 않은 시간 프레임을 기준으로 평균을보다 쉽게 ​​계산할 수 있습니다.
  • 경향 분석을하는 것이 더 쉽습니다.

분석적 관점에서 보았을 때 독립적 인 일일 측정을 선택하는 것이 좋습니다. 물론 하나에서 다른 것으로 쉽게 변환 할 수 있으므로 최상의 선택은 사용자 액세스 패턴에 따라 달라질 수 있습니다.