#title Disk partition alignment [[TableOfContents]] ==== 확인 방법 ==== cmd에서.. wmic partition get BlockSize, StartingOffset, Name, Index {{{ BlockSize Index Name StartingOffset 512 0 디스크 0번, 파티션 0번 32256 --> 요거(Partition StartingOffset) 512 0 디스크 1번, 파티션 0번 32256 512 0 디스크 2번, 파티션 0번 32256 512 0 디스크 3번, 파티션 0번 32256 512 0 디스크 4번, 파티션 0번 16384 512 0 디스크 5번, 파티션 0번 16384 }}} H/W or SAN Guy에게 Allocation Unit Size 확인 Partition Offset / Stripe Unit Size --> 요거시 정수로 조낸 나누어 떨어져야 함. cmd에서.. fsutil fsinfo ntfsinfo e: {{{ NTFS 볼륨 일련 번호: 0x1c98a98898a9614e 버전: 3.1 섹터 개수: 0x00000000a27ff4a8 전체 클러스터 개수: 0x000000000144ffe9 사용 가능한 클러스터: 0x00000000001498fd 예약된 개수: 0x0000000000000000 섹터당 바이트: 512 클러스터당 바이트: 65536 --> 요거 (OS File Allocation Unit Size) FileRecord 세그먼트당 바이트: 1024 FileRecord 세그먼트당 클러스터: 0 Mft 올바른 데이터 길이: 0x0000000000190000 Mft 시작 Lcn: 0x000000000000c000 Mft2 시작 Lcn: 0x0000000000a27ff4 Mft 영역 시작: 0x000000000000c000 Mft 영역 끝: 0x00000000000b0f40 }}} Stripe Unit Size / OS File Allocation Unit Size -> 요거시 정수로 조낸 나누어 떨어져야 함. '''결국은 Allocation Unit Size이나 Stripe Unit Size도 1024의 2배 단위로 할당될 것이므로 Partition StartingOffset / 1024 가 정수로 나누어 떨어지면 대충은 다 맞을 거란 말씀.''' [[HTML(<font color=red>windows 2003, xp는 위 처럼 확인 해 봐야 하고, 2008에서는 기본이 Partition StartingOffset 1024로 Disk Partition Alignment를 OS 단에서 맞춰 준다.</font>)]] wmic partition get BlockSize, StartingOffset, Name, Index {{{ BlockSize Index Name StartingOffset 512 0 Disk #1, Partition #0 1048576 512 0 Disk #6, Partition #0 1048576 512 0 Disk #7, Partition #0 1048576 512 0 Disk #2, Partition #0 1048576 512 0 Disk #3, Partition #0 1048576 512 0 Disk #4, Partition #0 1048576 512 0 Disk #5, Partition #0 1048576 512 0 Disk #0, Partition #0 16384 }}} ==== Disk Partition Alignment 하는 방법 ==== {{{ Diskpart list disk select disk <DiskNumber> create partition primary align=<Offset_in_KB> assign letter=<DriveLetter> format fs=ntfs unit=64K label="<label>" nowait }}} {{{ C:\>diskpart Microsoft DiskPart version 6.0.6001 Copyright (C) 1999-2007 Microsoft Corporation. On computer: ASPIRINGGEEK DISKPART> list disk Disk ### Status Size Free Dyn GPT -------- ---------- ------- ------- --- --- Disk 0 Online 186 GB 0 B Disk 1 Online 100 GB 0 B Disk 2 Online 120 GB 0 B Disk 3 Online 150 GB 150 GB DISKPART> select disk 3 Disk 3 is now the selected disk. DISKPART> create partition primary align=1024 DiskPart succeeded in creating the specified partition. DISKPART> assign letter=F DiskPart successfully assigned the drive letter or mount point. DISKPART> format fs=ntfs unit=64K label="MyFastDisk" nowait }}} ==== 참고자료 ==== * [http://technet.microsoft.com/ko-kr/library/aa995867(EXCHG.65).aspx 저장소 트랙 경계에 Exchange I/O 맞추는 방법] * [http://nexondbteam.tistory.com/tag/Sector%20Alignment Sector Alignment에 대한 IO성능] * [http://msdn.microsoft.com/en-us/library/dd758814.aspx Disk Partition Alignment Best Practices for SQL Server] * [http://blogs.msdn.com/jimmymay/archive/2009/05/08/disk-partition-alignment-sector-alignment-make-the-case-with-this-template.aspx Disk Partition Alignment (Sector Alignment): Make the Case: Save Hundreds of Thousands of Dollars] * [http://kendalvandyke.blogspot.com/2009/02/disk-performance-hands-on-series.html Disk Performance Hands On: Series Introduction] * [http://msdn.microsoft.com/en-us/library/dd758814.aspx Disk Partition Alignment Best Practices for SQL Server] * [http://feedproxy.google.com/~r/PaulSRandal/~3/nPWtF078yx0/post.aspx Using diskpart and wmic to check disk partition alignment]