'쓰기 절벽' 현상은 SSD 디스크에서만 발생하나요?

'쓰기 절벽' 현상은 SSD 디스크에서만 발생하나요?

우선 저는 디스크를 처음 접해서 기본적인 내용만 알고 있습니다. I/O가 많은 소프트웨어의 성능을 향상시키려고 노력 중이며 읽기 및 쓰기 속도 측면에서 SAS 디스크가 어떻게 작동하는지 이해해야 합니다.

나는 매우 기본적인 읽기/쓰기 테스트를 수행했고 '쓰기 절벽'처럼 보이는 것을 발견했습니다. 디스크에는 수 TB의 저장 용량이 있으며 연결된 시스템에는 630GB의 RAM이 있습니다. 내 테스트에 따르면 ~200GB의 집중적인 쓰기 후에는 쓰기 속도가 ~2000MBps에서 ~300MBps로 떨어지는 것으로 나타났습니다.

아무래도 큰 버퍼나 캐시가 어느 순간 가득 차서 쓰기 속도가 저하되는 원인이 되는 것 같아요. 그게 실제로 어떻게 작동하나요? 그 크기를 어떻게 계산할 수 있나요? 구성 가능합니까?

답변1

300M/s는 직접 연결 SAS 어레이의 완벽한 정상적인 쓰기 속도입니다. 그 위의 모든 것은 운영 체제에 의한 캐싱의 결과물입니다.

애플리케이션이 무엇을 하는지 모르고는 말하기 어렵지만, 대부분의 경우 O_DIRECT파일을 열 때 플래그를 사용하면 보다 현실적인 동작을 얻을 수 있습니다. 시스템이 캐시를 우회하고 디스크 컨트롤러로 직접 이동하여 캐시 아티팩트가 제거됩니다. 그리고 쓰기 절벽.

물론 이는 쓰기 성능을 I/O 하드웨어의 실제 수준으로 낮추는 대가를 치르게 됩니다. 그러나 이것이 바로 요점입니다. 지속 가능한 방식으로 디스크 하위 시스템이 허용하는 것보다 더 빠르게 쓸 수는 없습니다. 캐시는 많은 도움이 됩니다. 쓰기 로드가 급증하지만 기본 하드웨어의 한계를 영원히 극복할 수는 없습니다.

관련 정보