참고
개략적인 규모 측정
NOTE
보편적으로 사용되는 성능 수치 항목들을 추정해서 계산하는 것!
•
필요한 기본기로 2의 제곱수나 응답지연(latency) 값과 가용성에 관계된 수치들의 이해가 필요하다.
◦
2의 제곱수
◦
응답지연 값
◦
가용성에 관계된 수치들
2의 제곱수
NOTE
•
데이터 볼륨 단위를 계산하기 위해 사용 최소단위는 1바이트
•
아스키 문자 하나가 차지하는 메모리 크기가 1바이트, 보통 쓰는 UTF-8의 경우 1~4바이트
◦
한글 또는 다국어를 고려하면 한 단어를 4바이트로 고려하는게 좋음
•
대략 많이 사용되는 기가바이트는 10억 (2^30)
응답지연 값
가용성에 관계된 수치들
NOTE
99.99%가 기본이다
ex) 트위터 QPS(Query Per Second)와 저장소 요구량 추정
NOTE
가정
•
월간 능동 사용자는 3억명이다.
•
50%의 사용자가 트위터를 매일 사용한다.
•
평균적으로 각 사용자는 매일 2건의 트위터를 올린다.
•
미디어를 포함하는 트윗은 10%이다.
•
데이터는 5년간 보간된다.
추정
•
QPS 추정치
◦
일간 능동 사용자
▪
3억 * 50% = 1.5억
◦
QPS
▪
1.5억 * 2 트윗 / 24시간 / 3600초 = 약 3500
◦
최대 QPS
▪
2 * QPS = 약 7000
•
미디어 저장을 위한 저장소 요구량
◦
평균트윗 크기
▪
tweeid_id에 64바이트
▪
텍스트에 140바이트
▪
미디어에 1MB
◦
미디어 저장소 요구량
▪
1.5억 * 2 * 10% * 1MB = 30TB / 일
◦
5년간 미디어 보관을 위한 저장소 요구량
▪
30TB * 365 * 5 = 약 55PB