기존에 구성된 클러스터가 존재하는 상황에서 HDD와 SSD중 어느것을 어떤 방식으로 추가하는 것이 더 좋은것인가에 대해 고찰한 논문이다. 여러가지 환경에 대해서 다수의 옵션에 대해 성능 측정을 진행 하였다.
The Truth About MapReduce Performance on SSDs
HDD와 SSD를 hdfs에 적용했을 때의 결과를 확인하기
논문에서는 HDFS와 map-reduce만 다루고 있음
?? 네임노드가 직접 데이터노드를 선택하는가? 아니면 위의 애플리케이션이 요청하는가
저장 단위는 128MB,
- cost efficiency를 고려해야한다.
하드 여러개와 SSD 1개중에 뭐가 더 좋냐
CPU heavy job은 성능차이 없다.
shuffle이 많고 read가 많을 수록 ssd가 좋다.
대부분 ssd가 좋다.
===
hdd로 구성된 cluster에 뭘 추가하는게 좋은가?
- ssd를 1개만 추가할때는 별 차이가 없다
- hdd를 여러개 추가해도 큰폭의 차이가 없다. (왜지)
===
그럼 shuffle위치와 data 위치를 변경하면 어떨까?
- shuffle 비율이 높을때 shuffle을 ssd에 저장하는게 효율이 좋다(당연), 그외엔 별차이가 없고
- teravalidate 는 ssd에 데이터가 있을때 빠름(읽어야 하니까)
Hybrid일때도 ssd에서 읽는 비율이 적어서 문제다
- ssd의 영역을 10개의 디렉토리로 나눠서 전체에서 차지하는 비중을 높이면 성능이 올라간다.
* cost 비교표
* 조합이 엉망진창이다