디스크를 많이 사용하는 애플리케이션이 물리적 디스크보다 SAN에서 더 빨리 실행되는 이유는 무엇입니까?


21

디스크를 많이 사용하는 애플리케이션이 물리적 디스크보다 SAN에서 더 빨리 실행되는 이유는 무엇입니까? 물리 디스크가 약간 더 빠를 것으로 예상했지만 실제로는 작업 드라이브가 SAN의 파티션으로 설정되어있을 때 프로세스가 100 배 더 빠르게 실행되었습니다.

SAN은 물리적 디스크 튜닝 설정이 OS (Solaris)와 관련이 있고 수정되거나 OS 패치되지 않은 반면, SAN은 빠른 속도로 최적화되어 있습니다.

활동이 가장 많은 동안 디스크 I / O는 100 %로 실행되었으며 여러 프로세스가 동시에 디스크에 쓰는 중이므로 쓰기 완료 시간이 2 초 이상이었습니다.

(참고로 관련된 응용 프로그램은 Informatica PowerCenter였습니다)

답변:


23

나는 전혀 놀랍지 않다. SAN 어레이에는 일반적으로 관련된 많은 디스크가 있습니다. 디스크 I / O의 제한 요소는 개별 디스크의 속도와 이러한 스택입니다. RAID10에서 로컬로 6 개의 드라이브는 2보다 나은 성능을, SAN에서 80 개의 드라이브는 로컬로 10 개 이상의 드라이브를 수행합니다. 물론 변수가 있지만 그것이 작동하는 방식입니다.

또한 SAN에 SSD가 포함되어 있으면 정말 까다로워집니다.


15

거의 확실하게 캐싱 때문입니다. DAS는 캐싱이 거의 없으며 대부분의 Enterprise SAN에는 여러 기가 바이트의 캐시가 있습니다. 앱이 DAS의 캐시를 포화 시키지만 SAN은 포화시키지 않는 것 같습니다.


1
SAN의 명백한 대기 시간이 DAS보다 길어 지지만 모든 캐싱을 통해 SAN의 전체 처리량이 더 높습니다. 좋은 대답입니다.
매트

그리고 미리 읽기 캐시가 있기 때문에 임의 읽기 / 쓰기가 가장 큰 히트를당한 다음 쓰기를 캐시하여 영향을받는 유일한 임의 읽기에 대해 여전히 약간의 지연이 발생할 수 있습니다.
Silverfire

1
오버로드되지 않은 SAN에서 올바르게 구성된 스토리지 서브 시스템은 약 1-2ms의 임의 쓰기 시간을 제공해야합니다.
MikeyB

@MikeyB 나는 당신과 동의하지 않습니다. SAN에 1-2ms 쓰기가 옳은 것 같습니다. 그러나 Charles의 SAN 구성은 오버로드 된 물리적 디스크보다 100 배 빠릅니다 (후자는 2 초 이상 쓰기). 그래서 그의 SAN 성능조차도 1-2ms가 아닌 20ms에서 그렇게 좋지 않습니다 ...?
엘리 케셀 먼

9

개념적으로 항상 SAN에서 디스크를 제공하는 것이 로컬에서 제공하는 것보다 느려 야합니다. 그러나이를 되돌릴 수있는 많은 요소가 있으며 SAN이 훨씬 빠른 옵션이됩니다. 이러한 요인 중 일부는 다음과 같습니다.

  • 워크로드에 빠른 탐색 시간이나 빠른 처리량 또는 둘 다가 필요합니까?
  • SAN LUN과 로컬 디스크의 스핀들 수는 몇 개입니까?
  • 로컬 디스크 인터페이스와 SAN LUN 및 서버 간의 버스 속도는 어느 정도입니까?
  • SAN LUN과 로컬 디스크에서 얼마나 많은 읽기 / 쓰기 캐시를 사용할 수 있습니까?
  • SAN LUN과 로컬 디스크의 디스크 속도는 어느 정도입니까?
  • SAN LUN과 로컬 디스크에서 수행중인 다른 IO 활동은 무엇입니까?
  • SAN 및 로컬 스토리지의 어레이는 어떤 RAID 레벨입니까?

이 모든 것이 SAN 및 로컬 디스크의 성능에 영향을줍니다.


1

모든 스핀들을 사용할 수 있습니다 .... 스핀들 수가 많을수록 주어진 데이터에 더 빨리 액세스 할 수 있습니다. IO를 많이 사용하는 경우, 특히 데이터베이스 응용 프로그램 인 경우에는 코어 데이터, 인덱스 등을 관리하기 위해 훨씬 더 많은 수의 디스크 세트를 가질 수있는 SAN 솔루션을 사용하여 로컬 디스크 성능을 쉽게 저장할 수 있습니다.

로컬 디스크 하위 시스템을 사용하면 r / w to swap, 로컬 OS 및 라이브러리 파일 액세스, 응용 프로그램 액세스 등과 같은 다른 작업과 함께 읽기 / 쓰기 헤드에 대한 액세스 권한을 공유 할 수도 있습니다. 개별적으로 빠르지 만 집합적인 시간 모든 읽기 / 쓰기 작업이 디스크의 한 영역에서 읽기 / 쓰기 헤드를 이동하여 응용 프로그램 요구 사항을 충족시키기 위해 한 작업 집합을 다른 작업 집합으로 처리하면 성능을 확실히 능가 할 수 있습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.