-
[가상면접 사례로 배우는 대규모 시스템 설계 기초] 2장. 개략적인 규모 추정📕 book/가상 면접 사례로 배우는 대규모 시스템 설계 기초 2025. 12. 25. 13:01
시스템 설계 면접에서 시스템 용량, 성능 요구사항을 개략적으로 추정하라는 요구를 받게됨.
개략적인 규모 추정(back-of-the-envelope estimation)
- 보편적으로 성능 수치상에서 사고 실험을 행하여 추정치를 계산하는 행위
- 어떤 설계가 요구사항에 부합할 것인지 보기 위함.
2️⃣ 2의 제곱수
데이터 볼륨의 단위를 2의 제곱수로 표현하면 어떻게 되는지 알아야 한다.
2의 x제곱 근사치 이름 축약형 10 1천 1킬로바이트 1KB 20 1백만 1메가바이트 1MB 30 10억 1기가바이트 1GB 40 1조 1테라바이트 1TB 50 1000조 1페타바이트 1PB 🕓 응답지연 값
구글의 제프 딘이 2010년에 통상적인 컴퓨터에서 구현된 연산들의 응답지연 값을 공개한 바가 있다.
한 구글 엔지니어가 개발한 도구를 사용해 최근 기술 동향을 반영하여 2020년 기준 시각화한 수치를 분석하면 아래와 같다.
- 메모리는 빠르지만 디스크는 아직 느리다.
- 디스크 탐색은 가능한 한 피하라.
- 단순한 압축 알고리즘은 빠르다.
- 데이터를 인터넷으로 전송하기 전에 가능하면 압축하라.
- 데이터 센터는 보통 여러 지역에 분산되어 있고 센터들 간에 데이터를 주고받는 데는 시간이 걸린다.
✔️ 가용성에 관계된 수치들
고가용성
- 시스템이 오랜 시간 동안 지속적으로 중단없이 운영될 수 있는 능력
SLA
- 서비스 사업자가 보편적으로 사용하는 용어
- 서비스 사업자와 고객 사이에 맺어진 합의를 의미
🤖 예시 - 트위터 QPS와 저장소 요구량 측정
👀 가정
- 월간 능동 사용자(MAU)는 3억명
- 50%의 사용자가 트위터를 매일 사용한다.
- 평균적으로 각 사용자는 매일 2건의 트윗을 올린다.
- 미디어를 포함하는 트윗은 10% 정도다.
- 데이터는 5년간 보관된다.
🥸 추정 QPS(Query Per Second) 추정치
- 일간 능동 사용자(DAU) = 3억 x 50% = 1.5억(150million)
- QPS = 1.5억 x 2트윗 / 24시간 / 3600초 = 약 3500
- 최대 QPS(Peek QPS) = 2 X QPS = 약 7000
📦 미디어 저장을 위한 저장소 요구량
- 평균 트윗 크기
- tweet_id에 64바이트
- 텍스트에 140바이트
- 미디어에 1MB
- 미디어 저장소 요구량 : 1.5억 x 2 x 10% x 1MB = 30TB/일
- 5년간 미디어를 보관하기 위한 저장소 요구량 : 30TB X 365 X 5 = 약 55PB
👍 Tip
규모 추정과 관계된 면접에서 중요한 것은 문제를 풀어나가는 절차!!
- 면접자가 보고 싶어하는 것은 문제 해결 능력이다.
1️⃣ 근사치를 활용한 계산을 하자.
- 복잡한 계산을 하는 것은 어렵다.
- 적절한 근사치를 활용해 시간을 절약하자.
2️⃣ 가정들은 적어두자
- 나중에 살펴 보기
3️⃣ 단위를 붙이기
- 모호함을 방지
'📕 book > 가상 면접 사례로 배우는 대규모 시스템 설계 기초' 카테고리의 다른 글
[가상면접 사례로 배우는 대규모 시스템 설계 기초] 6장. 키:값 저장소 설계 (1) 2025.12.25 [가상면접 사례로 배우는 대규모 시스템 설계 기초] 5장. 안정 해시 설계 (0) 2025.12.25 [가상면접 사례로 배우는 대규모 시스템 설계 기초] 4장. 처리율 제한 장치의 설계 (0) 2025.12.25 [가상면접 사례로 배우는 대규모 시스템 설계 기초] 3장. 시스템 설계 면접 공략법 (0) 2025.12.25 [가상면접 사례로 배우는 대규모 시스템 설계 기초] 1장. 사용자 수에 따른 규모 확장성 (0) 2025.12.25