Circlee7
2 min readSep 6, 2021

대규모 시스템 설계 기초 (2) – 개략적인 규모 추정

책을 봅시다

http://www.kyobobook.co.kr/product/detailViewKor.laf?ejkGb=KOR&mallGb=KOR&barcode=9788966263158&orderClick=&Kc=

개략적인 규모 추정

  • 개략적인 규모 추정은 보편적으로 통용되는 수치상에서 사고 실험을 행하여 추정치를 계산하는 행위로써, 어떤 설계가 요구사항에 부합 할 것인지 보기 위한 것

2의 제곱수

  • 데이터 볼륨은 2의 제곱으로 표현

응답지연 값

  • ns, ms 등으로 표현.

보편적인 사실

  • 메모리는 빠르지만 , 디스크는 느리다.
  • 디스크 탐색은 가능한 한 피하라.
  • 단순한 압축 알고리즘은 빠르다.
  • 데이터를 인터넷으로 전송하기 전에 가능한 압축.
  • 데이터 센터는 보통 여러 지역에 분산되어있고 센터들간 데이터 전송엔 시간이 걸린다.

가용성

  • 고가용성은 시스템이 오랜 시간동안 지속적으로 중단없이 서비스 될수 있는 능력을 지칭하는 용어.
  • 대부분의 서비스는 99%~100%의 값을 가진다.
  • 9의 갯수가 많아질수록 좋다. 99% < 99.9% < 99.9999%

가정을 통한 저장소 요구량 추정 예

가정

  • 월간 능동자 : 3억
  • 50% 사용자가 트위터를 매일 사용
  • 평균적으로 각 사용자는 매일 2건의 트윗을 남김
  • 미디어를 포함하는 트윗은 10%
  • 데이터는 5년간 보관

추정

QPS (Query per Second) 추정

  • 일간 능동 사용자 추정 = 월간 능동자(3억) * 매일 사용하는 사람(50%) = 1.5억
  • QPS = 일간 능동 사용자(1.5억) * 2트윗 / 24 시간 / 3600초 = 3500 건
  • 최대 QPS = 2 * QPS = 7000건

필요 저장소 추정

  • 평균 트윗 크기 ( tweet_id : 64byte, text : 140byte, media : 1MB)
  • 미디어 저장소 요구량 : 일간 능동 사용자(1.5억) * 평균 매일 트윗 건수(2건) * 미디어포함 트윗 (10%) * media(1MB) = 30TB
  • 5년간 미디어를 보관하기 위한 저장소요구량 : 30TB * 365 * 5 = 55PB

면접에서 규모추정과 관련된 질문을 받는다면 가장 중요한 것은 문제를 풀어나가는 절차.

문제해결 능력이다.

  • 근사치를 활용한 계산을 하자 : 정확한 값을 계산하길 원하는 질문이 아니다.
  • 가정 들은 적어두어 확인하지.
  • 단위를 붙여서 모호함을 제거하자
  • 많이 출제되는 문제는 QPS, 최대 QPS, 저장소 요구량. 캐시 요구량, 서버 수 등의 추정이다.
Circlee7
Circlee7

No responses yet