반응형 SQL Server2 [MSSQL] SQL Server 튜닝 - 실행 계획 목차 시작하며 DB팀과 협업을 하며 자주 이야기하던 키워드가 바로 "실행계획" 이다. 쿼리를 만들고 난 후, 실행계획을 점검해보며 인덱스를 잘 타는지, 쿼리가 잘못되진 않았는지 등등을 체크하곤 하는데, 이번엔 이 부분을 다뤄보고자 한다. 그리고, 지난번 인덱스를 공부하며 사용했던 쿼리들의 실행계획도 재확인해볼 생각이다. 실행 계획(Execution Plan) 이란? 실행 계획은 SQL 구문을 처리하기 위해 사용되는 연산 방법이나 오브젝트를 읽어내는 순서 등이 조합된 일련의 처리 절차이다. 하나의 SQL 구문을 처리하는 실행 계획은 많은 경우의 수로 다양하게 생길 수 있지만, 내부적인 규칙이나 비용을 계산하여 가장 최적이라 판단되는 계획이 선택된다. 그렇다면 옵티마이저는 항상 최선의 실행 계획을 선택할 수.. DB 2022. 12. 27. [MSSQL] VARCHAR(MAX|N) 길이별 성능차이 및 NVARCHAR와의 성능차이에 관해.. 목차 시작하며 VARCHAR나 NVARCHAR를 선언할 때, 우리는 종종 해당 컬럼의 길이를 어떻게 놓을것인지에 대해서 고민하곤 한다. 확실하게 정해져있는 경우, 고정길이로 선언해주는것이 성능상 더 좋다는것은 자명하지만, 그렇지 않은 경우 갈피를 잡기 어려울 수도 있다. VARCHAR(N) 컬럼에 데이터를 저장할땐, 물리적으로 같은 방식이 사용되며 저장된다. 이 말은, 어떤 특정한 동작 없이 블록에 바로 쓰인다는것이다. 하지만, VARCHAR(MAX) 컬럼에 저장하는 경우, TEXT타입처럼 다뤄지게되어 저장을 위한 추가적인 절차가 필요하게된다. (단, 저장되는 데이터의 길이가 8000바이트 이상인 경우에만 해당된다.) 8000바이트 이상인 경우, 오버플로우가 발생하게 되는데 이를 out of row 라고.. DB 2022. 2. 8. 이전 1 다음 💲 추천 글 반응형