정규화를 통한 성능 향상 전략

 

  - 정규화를 하면.. 중복성을 제거하고, 데이터가 관심사별로 나뉘어지기 때문에 성능이 향상된다.

    좀 많이 나뉘어지니까.. 엔터티가 그만큼 많아질꺼고. SQL 문장에서 조인 할께 많아지니. 성능이 오히려 안좋아질수도..!!

   



 



반정규화된 테이블의 성능저하 사례






반정규화(다음장에서 설명) 를 정규화를 해서 2개의 테이블로 만들었는데

예를들어 관서등록일자 가 2010년 이후를 조회하면. 왼쪽 반정규화 테이블에서는 납부자번호 만큼 누적된

데이터를 다 읽어야되고.. 오른쪽은 관서 수만큼만 존재하는 데이터를 읽기때문에.. 정규화를 하면

조회 성능이 저하된다는 고정관념은 틀렸다고 볼 수 있다.



다른 사례도 몇가지 있지만, 정규화를 하면 좋아진다는 설명들이다.





 


함수적 종속성에 근거한 정규화 수행 필요


  - 함수의 종속성? 데이터들이 어떤 기준값에 의해 종속되는 현상. 이 떄 기준값을 결정자 라고 하고 종속되는 값을 종속자 라고 한다.







무슨말일까. 주민등록번호 가 결정자? 이름,출생지,주소가 종속자?

주민등록번호를 알면 이름, 출생지, 주소 가 딸려가기 때문에? 

주민등록번호 -> (이름, 출생지, 주소)

이름, 출생지, 주소 라는 함수들을 종속한다?( 끌고간다? )

끌고 가는건 결정자 (주민등록번호)

 

 

 

반응형


글이 도움이 되셨다면 공감과 광고 클릭 한번 부탁드립니다! 💕
감사합니다 ✨