개략적인 규모 추정(back-of-the-envelope estimation): 보편적으로 통용되는 성능 수치상에서 사고 실험(thought experiments)을 행하여 추정치를 계산하는 행위 → 어떤 설계가 요구사항에 부합할 것인지 보기 위한 것
2의 제곱수
데이터 볼륨의 단위를 2의 제곱수로 표현하면 어떻게 되는지 알아야 함

응답지연 값
통상적인 컴퓨터에서 구현된 연산들의 응답지연 값

응답 지연 값의 결론
- 메모리는 빠르지만 디스크는 아직도 느리다
- 디스크 탐색(seek)은 가능한 한 피하라
- 단순한 압축 알고리즘은 빠르다
- 데이터를 인터넷으로 전송하기 전에 가능하면 압축하라
- 데이터 센터는 보통 여러 지역(region)에 분산되어 있고, 센터들 간에 데이터를 주고받는 데는 시간이 걸린다
가용성에 관계된 수치들
고가용성(high availability): 시스템이 오랜 시간 동안 지속적으로 중단 없이 운영될 수 있는 능력, 퍼센트로 표현함
SLA(Service Level Agreement): 서비스 사업자와 고객 사이에 맺어진 합의, 서비스 사업자가 제공하는 서비스의 가용시간(uptime)이 공식적으로 기술되어 있음
- ex) 가용률 99% → 연간 장애시간: 3.65일
- ex) 가용률 99.999% → 연간 장애시간: 31.56초
면접 팁
결과를 잘 내는 것보다, 올바른 절차를 밟는 것이 중요함 → 문제 해결 능력
- 근사치를 활용한 계산(rounding and approximation)
- 가정(assumption)은 나중에 볼 수 있도록 적어두기
- 모호함을 방지하기 위해 단위(unit)을 붙이기
- 개략적 규모 추정 문제: QPS(Query Per Second), 최대 QPS, 저장소 요구량, 캐시 요구량, 서버 수 등을 추정함
Reference: http://www.yes24.com/Product/Goods/102819435
가상 면접 사례로 배우는 대규모 시스템 설계 기초 - YES24
“페이스북의 뉴스 피드나 메신저, 유튜브, 구글 드라이브 같은 대규모 시스템은 어떻게 설계할까?”IT 경력자라도 느닷없이 대규모 시스템을 설계하려고 하면 막막하다고 느낄 수 있다. 특히나
www.yes24.com
'백엔드 > 아키텍처' 카테고리의 다른 글
[System Design Interview] 6장 키-값 저장소 설계 (0) | 2022.08.28 |
---|---|
[System Design Interview] 5장 안정 해시 설계 (0) | 2022.08.28 |
[System Design Interview] 4장 처리율 제한 장치의 설계 (0) | 2022.08.28 |
[System Design Interview] 3장. 시스템 설계 면접 공략법 (0) | 2022.08.20 |
[System Design Interview] 1장. 사용자 수에 따른 규모 확장성 (0) | 2022.08.19 |