SAN 팀에 적을 만들지 않으면 서 저 자신과 응용 프로그램 개발자에게 SQL 서버가 스토리지 구성이 잘못되어 있지 않다는 것을 어떻게 확신시킬 수 있습니까? perfmon 통계 만 사용 하시겠습니까? sqlio와 같은 다른 벤치 마크?
어떤 종류의 벤치마킹을 수행하기 전에 알아야 할 첫 번째 사항은 자체 워크로드를 실행해야하는 허용 오차에 대한 것입니다. 따라서 새 시스템을 확인하기 전에 자신의 작업을 벤치마킹하십시오. 이렇게하면 최대로드 (백업?) 중에 최대 56MB / s를 푸시하고있는 경우 SAN 연결 디스크 어레이가 '최대'시뮬레이트 된 최대로드에서 110MB / s를 푸시한다는 것을 알 수 있습니다. 한계가 I / O 채널이되지 않도록 보장했습니다.
새 디스크 어레이를 체크 아웃 할 때 이런 종류의 성능 테스트를 수행했습니다. 새로운 어레이는 파이버 채널 (SCSI) 드라이브 대신 SATA 드라이브를 사용했으며, 환경에서 제대로 작동하는지 확인해야했습니다. 나는 매우 모호했다. 그러나 특성화 후, 새로운 시스템은 피크보다 더 안정적인 I / O 오버 헤드가있어보다 안정적인 디스크에서 측정 된 피크를 유지할 수 있음을 알게되었습니다. 놀랐어요
이 SAN 드라이브에로드 테스트를하면 실제로 시작했을 때 볼 수있는 것을 신뢰할 수 있고 반복 가능한 측정 방법으로 제공합니까? (SAN 소프트웨어가 다른 시점에서 다르게 "동적으로 구성"할 수 있다고 가정합니다.)
SAN 접속 디스크 어레이의 공유 특성으로 인해 일주일 내내 성능이 변합니다. 피크 I / O로드가 언제인지 이미 알고있는 경우, 피크 I / O로드가있는 시간 동안 일련의로드 테스트를 수행하십시오. 그렇게하면 가장 관심있는 기간 동안 어떤 종류의 I / O 오버 헤드를 사용할 수 있는지 더 잘 특성화 할 수 있습니다. 피크가 아닌 시간 동안의로드 테스트는 '빠른'상황에 대한 느낌을 주지만 피크 테스트는 당신에게 진정한 경계 검사를 제공합니다.
SAN의 한 부분 (예 : Exchange 서버)의 과도한 IO가 SQL 서버에 영향을 줍니까? (각 서버마다 전용 디스크를 제공하지 않는다고 가정하지만 그렇지 않다고 들었습니다)
Exchange LUN이 디스크를 SQL LUN과 공유하는 경우 절대적으로 해당됩니다. 우리는 XP가 아닌 HP EVA를 사용하지만 동일한 "디스크 그룹"용어를 사용한다고 생각합니다. 동일한 디스크 그룹의 LUN은 디스크를 공유하므로 물리적 장치의 I / O에 대해 경쟁합니다. 디스크 그룹에 디스크를 많이 넣을수록 어레이가 I / O를 저글링해야하는 더 많은 공간이 필요합니다. 어레이는 (적어도 EVA는 그렇게하고 더 비싼 XP는 동일한 것으로 가정합니다) 논리적 LUN 블록을 물리적 디스크에 비 순차 방식으로 분배합니다. 이를 통해 제안 된 작업을 수행 할 수 있습니다. 자주 액세스하는 블록 그룹을 다른 물리적 장치에 동적으로 분산하여 디스크 수준에서 병렬 처리를 늘리고 I / O 경합을 줄입니다.
물어볼 질문은 디스크 그룹의 I / O 예산이 얼마인지, 그리고 해당 LUN을 사용하는 응용 프로그램이 I / O에 대해 초과 가입되었는지 여부입니다. 이는 스토리지 관리자가 추적해야 할 질문입니다. Exchange의 최대 I / O (아마도 백업 중)가 SQL로드와 일치하지 않을 수 있으며 두 시스템이 모두 공존 할 수 있습니다.
다른 기능을 위해 논리 드라이브 분리를 요청하면 논리 드라이브 (데이터 대 로그 대 tempdb)가 도움이 되겠습니까? SAN에서 이들에 대한 다른 IO 활동을보고 최적으로 다르게 구성합니까?
HP 어레이의 경우 서로 다른 I / O 패턴을 LUN이 아닌 다른 디스크 그룹 에 넣어야합니다 . 예를 들어, 데이터베이스 I / O 패턴은 웹 서비스 액세스 패턴과 공존해서는 안됩니다. 다른 LUN이 다른 디스크 그룹에 있지 않으면 성능이 크게 향상되지 않습니다. 이들이 동일한 디스크 그룹에 있다면 운영 체제에서 유일한 장점은 디스크 서브 시스템에 대한 병렬성을 향상시키기 위해 커널에서 I / O 스케줄링을 수행 할 수 있다는 것입니다. 그건 ...
어쨌든 HP 어레이는 LUN의 다양한 액세스 패턴을 알고 있지만 실제 논리 블록에 세심한주의를 기울입니다. 로그를 다른 LUN에 배치하면 이러한 종류의 I / O 트래픽을 얻을 수있는 논리 블록에 바운드가 적용되므로 물리 디스크에서 논리 블록을 올바르게 정렬하는 작업이 쉬워집니다.
우리는 지금 약간의 공간 위기에 처해 있습니다. 응용 프로그램 팀은 데이터 아카이브 등을 정리하라는 지시를받습니다. 공간 문제로 인해 SAN 팀이 서버 성능에 영향을 줄 수있는 내부 저장소 (RAID 수준 등)를 구성하는 방법에 대해 다른 결정을 내립니까?
명확히. 공간이 부족하면 I / O 전용 디스크 그룹을 얻지 못할 것입니다 (스토리지 환경이 독점적으로 사용할 수있는 7TB의 물리 디스크를 정당화 할만큼 충분히 큰 경우가 아니라면) ). Raid5 / Raid10 토론은 대부분 조직의 정책에 따라 결정되며 요청하는 것이 최선의 방법입니다.