[대규모 서비스를 지탱하는 기술] 5장. 대규모 데이터 처리의 어려운 점

June·2021년 12월 22일
0

대규모 데이터를 다룰 때 어려운 점은 '메모리 내에서 계산할 수 없다'는 점이다.

  • 메모리 내에서 계산할 수 없게 되면 디스크에서 데이터 검색을 해야한다.
  • 하지만 디스크는 느리므로 시간이 훨씬 더 걸린다.

디스크는 메모리보다 10^5 ~ 10^6배 느리다. 10만배~100만배 정도이다.

디스크는 왜 늦을까?

메모리는 전기적인 부품이므로 물리적 구조는 탐색 속도와 그다지 관계없다. 메모리 상에서 포인터를 이동시키는데는 마이크로초 단위로 이동한다.

디스크는 헤드의 이동과 원반의 회전이라는 물리적인 이동이 필요하다. 그 과정에서 수 밀리초가 이용된다.

OS 레벨에서의 연구

디스크는 느리지만 OS는 이것을 커버하려한다. OS는 연속된 데이터를 같은 위치에 쌓아서 4KB 단위로 읽게 한다.

전송속도, 버스의 속도차

메모리와 디스크에서 데이터 탐색 속도차도 있지만, 전송 속도차도 있다. 메모리와 CPU는 상당히 빠른 속도로 연결되어 있으므로 7.5GB/초 정도 나오지만, 디스크는 58MB/초 정도 밖에 나오지 않는다.

SSD(Solid State Drive)는 물리적인 회전이 아니므로 Seek 은 빠르지만 버스 속도에서 차이가나서 메모리와 차이가 난다.

0개의 댓글