인공지능 강아지 심리 테스트(무료)
오늘로또 당첨분석 및 행운번호 받기(무료)

티스토리 뷰

반응형

[오라클] 데이터베이스 쿼리 테이블은 소문자 대문자로 보기 쉽게 작성하는게 좋을까?

결론은 협업 업무를 하게 되면대문자나 소문자나 코딩 규칙을  통일해서 사용하는게 좋다.

 

설명 :

들여쓰기, 띄어쓰기, 대/소문자등 코딩 규칙을 정해놓고 사용하면 가독성이 좋아지지만

실수로 잘 못 작성한 경우 같은 쿼리인데도 대/소문자 구분 때문에 다른 쿼리로 인식하게 되어 

메모리에 접근해서 가지고 올 쿼리를 새로운 쿼리로 인식하여 하드 파싱을하여 저장을 하게 된다.

많이 실행되는 쿼리 일 수록 속도 저하를 가중 시킬 수 있다.

덧붙여서 쿼리에서 변수를 다이내믹쿼리로 작성하는 이유도 이러한 이유때문이다.

만약 select 변수 from dual 이런 쿼리가 있는데 변수를 하드코딩하여 사용한 경우

1번 쿼리. select 1 from dual

2번 쿼리. select 2 from dual 

1번, 2번 쿼리가 실행된다고 했을 때 1번이 실행되고 2번 쿼리는 메모리에 없기 때문에 하드파싱되어 메모리에 쓸모없이 쌓이게된다.

 

오라클 서버에서는 SQL문이 실행될 때 이전에 사용된 쿼리인지 확인하는 쿼리문마다 HASH 값이 있다.

쉽게 설명하면 지문이라고 생각하면 되겠다.

문자의 모양이 다르면 모두 다른 hash 값을 가지고 있다고 생각하며 된다.

 

즉, 대/소문자로 구성된 같은 쿼리라도 HASH 값이 달라지기 때문에 

매번 하드 파싱(hard parsing)하게 되어 서버에 부하를 주게 된다.

업체마다 다르게 사용하겠지만 간단하게 대문자로 사용하기도 한다.

물론 규칙을 잘 지킬 수 있는 회사 구조라면 키워드는 대문자, 테이블, 컬럼은 소문자로 하면된다.

 

 

 

 

 

반응형
댓글

쿠팡 파트너스 활동을 통해, 일정액의 수수료를 제공받습니다.
반응형