FAST CLOUD: 클라우드 스토리지 지연 성능 개선을 위한 코딩 기법

Source

  • Evernote/Inbox/FAST CLOUD Pushing the Envelope on Delay Performance of Cloud Storage With Coding.md

Summary

본 논문은 Amazon S3와 같은 클라우드 스토리지의 읽기/쓰기 지연 성능을 개선하기 위해 에러 수정 코딩(Erasure Coding), 병렬 연결, 제한적 청킹(Chunking)을 결합한 ‘FAST CLOUD’ 솔루션을 제시합니다. 이 기법은 2MB 파일 기준 평균 및 90/99 퍼센타일 지연을 각각 76%, 80%, 85%까지 줄일 수 있으나, 추가적인 스토리지 오버헤드(약 1.75배)와 큐잉 지연 증가라는 트레이드오프가 존재합니다. 이를 해결하기 위해 오프라인 계산된 큐 백로그 임계값을 기반으로 요청마다 최적의 코딩 레이트를 선택하는 ‘부하 적응형 알고리즘’과 유휴 연결을 활용하는 ‘그리디 알고리즘’을 제안하며, 특히 백로그 기반 솔루션이 높은 퍼센타일 지연 성능에서 우수함을 입증했습니다.

Key Points

  • 클라우드 스토리지(S3)의 소/중형 객체 접근 시 서비스 시간의 무작위성(Randomness)이 존재함.
  • 에러 수정 코딩, 병렬 연결, 제한적 청킹 조합을 통해 지연 성능을 극대화할 수 있음.
  • 코딩 및 청킹은 지연은 줄이지만 스토리지 오버헤드와 큐잉 지연을 증가시킴.
  • 부하에 따라 최적 코딩 레이트를 동적으로 선택하는 알고리즘(백로그 기반, 그리디) 제안.
  • 백로그 기반 알고리즘이 고정 코딩 레이트 정책 대비 평균 지연 및 고퍼센타일 지연에서 우수함.