SQL Server 2016 Larger Data File Writes

 

  • Version : SQL Server 2016

 

SQL Server의 WriteFileGather는 대량의 데이터파일 쓰기 요청에 사용된다. 이 로직은 더티페이지를 싱글 I/O 요청에 통합하는 것이다. 예를 들어 페이지 1:13과 1:12는 더티페이지로 하나의 WriteFileGather 작업에 통합한다.

 

SQL Server 2012 and 2014에서연속 블록을 만들려면 32페이지또는 그 이상 더이페이지에 대해 해시룩업(Hash lookups)을 수행한다.

  • Is Page 1:14 in memory (hashed) and dirty NO – End forward search for near pages
  • Is Page 1:12 in memory (hashed) and dirty YES – Include in write request
  • Is Page 1:11 in memory (hashed) and dirty NO – End of backward search for near pages

     

10년 이상의 하드웨어에서는 64K 또는 128K 에서 가장 잘 수행된다. 일부 새로운 SSD 및 플래쉬에서는1MB ~ 4MB 내부 블록킹 사이즈를 가지고 있다. 데이터파일의 전체 크기를 늘리면 확장성 및 성능이 향상되어 신속하게 읽기(Read), 수정(Modify), 쓰기(Write) 동작을 기록 한다.

 

SQL Server 2016(X64 Installations)에서8K 페이지를32페이지에서 128(1MB)페이지로 연속적으로 증가시킬때 (Lazy, Checkpoint, select into, create index and bulk insert write 작업등) 이러한 쓰기 작업은 데이터파일 쓰기 작업의 95%+ 를 차지한다. SQL Server 2016 데이터베이스에서는 하드웨어 확장을 통해 파일의 쓰기 동작을 증가시킨다.

 

[참고자료]

https://blogs.msdn.microsoft.com/psssql/2016/04/15/sql-2016-it-just-runs-faster-larger-data-file-writes/

 

 



강성욱 / jevida@naver.com
Microsoft SQL Server MVP
Blog : http://sqlmvp.kr
Facebook : http://facebook.com/sqlmvp

No. Subject Author Date Views
Notice SQL강좌: 챗GPT와 함께 배우는 SQL Server 무료 강좌 목차와 소개 (2023년 9월 업데이트) 코난(김대우) 2023.08.18 15672
Notice Python 무료 강좌 - 기초, 중급, 머신러닝(2023년 6월 업데이트) 코난(김대우) 2021.01.01 9543
2074 SQL Server Install on Linux (Ubuntu – 16.0.4) jevida(강성욱) 2017.01.11 5106
2073 SQL Azure blob storage 백업을 위한 프록시 세팅 jevida(강성욱) 2017.01.11 4287
2072 SQL on Azure 환경에서 SQL 서버 연결 불능 문제(VNET 설정 문제) jevida(강성욱) 2017.01.11 3368
2071 SQL Server 2016 자동 통계 업데이트 임계값 변경 jevida(강성욱) 2017.01.11 4796
2070 SQL Server 2016 Multiple Log Writer Workers jevida(강성욱) 2017.01.11 3877
» SQL Server 2016 Larger Data File Writes jevida(강성욱) 2017.01.11 3244
2068 SQL Server 2016 향상된 업데이트 스케줄링 알고리즘 jevida(강성욱) 2017.01.11 3699
2067 SQL Server 2016 Automatic Soft NUMA jevida(강성욱) 2017.01.11 3173
2066 SQL Server 2016 Tempdb 환경 설정 jevida(강성욱) 2017.01.11 4480
2065 SQL Server 2016 향상된 즉시 파일 초기화 jevida(강성욱) 2017.01.11 2830
2064 SQL Server 2016 LDF 생성 또는 증가 시 변경된 스탬프 패턴 jevida(강성욱) 2017.01.11 2683
2063 SQL Server 2016 Tempdb 성능 향상 jevida(강성욱) 2017.01.11 4868
2062 SQL Server 2016 DBCC CHECK 작업 성능 향상 jevida(강성욱) 2017.01.11 2425
2061 Microsoft Azure - SQL Server가 포함된 가상 컴퓨터 생성하기 jevida(강성욱) 2017.01.11 1879
2060 데이터베이스에서 사용자 삭제 오류 jevida(강성욱) 2017.01.11 1348
2059 Sys.dm_exec_query_plan 에서 query_plan 컬럼의 NULL 값 반환 jevida(강성욱) 2017.01.11 1935
2058 SSMS에서 유효하지 않은 소유자로 데이터베이스 정보가 보이지 않는 증상 jevida(강성욱) 2017.01.11 1953
2057 SQLCMD 유틸리티 사용하기 jevida(강성욱) 2017.01.11 8294
2056 In-Memory 최적화 테이블을 사용하여 임시 테이블 및 테이블 변수 성능 향상 jevida(강성욱) 2017.01.11 5303
2055 SQL Server Job Agent는 몇 개까지 실행이 가능할까? jevida(강성욱) 2017.01.11 1809





XE Login