성능 데이터 모델링 성능 데이터 모델링 성능 데이터 모델링이란 데이터베이스의 성능 향상을 목적으로, 분석/설계 단계부터 정규화, 반정규화, 테이블 통합과 분할, 조인 등의 사항을 반영하여 모델링을 구현하는 것을 의미한다. 성능 향상을 위한 비용은 사전에 할수록 비용이 들지 않으므로, 분석/설계 단계에서부터 데이터베이스 처리 성능을 향상시킬 수 있는 방법을 고려해야 한다. 성능 데이터 모델링의 고려사항 데이터 모델링의 성능을 향상시키기 위해서는 기본적으로 정규화를 정확하게 수행해야 한다. 정규화 된 모델은 데이터를 주요 관심사별로 분산시켜 그 자체만으로 성능을 향상시키는 효과를 내기 때문이다. 데이터베이스의 용량을 산정하고 데이터 모델에 발생되는 트랜잭션의 유형을 파악해야 한다. CRUD 매트릭스 혹은 시퀀스 다이어그램을 참.. 2021. 5. 21. 정규화 정규화 관계형 데이터베이스의 설계에서 중복을 최소화하게 데이터를 구조화하는 프로세스를 정규화라고 한다. 정규화를 수행한다는 것은 데이터를 결정하는 결정자에 의해 함수적 종속을 가지고 있는 일반 속성을 의존자로 하여 입력/수정/삭제 이상현상을 제거하는 것이다. 함수적 종속성과 결정자의 정의는 위의 이미지를 참고하면 이해가 쉽다. 정규화의 효과 및 장점 정규화는 데이터의 중복 속성을 제거하고 동일한 의미의 일반 속성을 하나의 테이블로 집약시키므로 한 테이블의 데이터 용량을 최소화 시키는 효과가 있다. 상호 종속성이 강한 데이터 요소들을 분리하고 독립된 개념으로 정의함에 따라 High cohesion & Loose coupling 원칙 원칙에 충실해지고 유연성을 극대화시킨다. 또, 개념을 좀 더 세분화함에 따.. 2021. 5. 17. 데이터 모델링의 3요소와 식별자 데이터 모델링의 3요소 복수/집합 type/class 개별/단수 업무가 관여하는 어떤 것 things 엔터티 타입 entity type 엔터티 entity 엔터티 entity 인스턴스 instance 어커런스 occurrence 어떤 것 간의 관계 relationships 관계 relationship 패어링 pairing 어떤 것이 가지는 성격 attributes 속성 attribute 속성값 attribute value 엔터티 entity 엔터티는 저장이 되기 위한 어떤 것 things 으로, 명사에 해당한다. 엔터티는 인스턴스의 집합으로, 해당 업무에서 필요하고 관리하고자 하는 정보여야 한다. 고로 업무 프로세스는 반드시 해당 엔터티를 이용해야 한다. 인스턴스 각각을 구분하기 위한 유일한 식별자(PK.. 2021. 5. 13. 데이터 모델링 What is Data Modeling? 모델링이란 복잡한 현실 세계를 추상화, 단순화시켜 명확하게 표현하기 위한 기법을 의미한다. 데이터베이스를 구축하기 위한 분석 및 설계의 과정으로, 현실세계의 데이터를 미리 약속한 표기법에 의해 표현한다. 모델링에는 세 가지 관점이 있다. 업무가 어떤 데이터와 관련이 있는지에 대해서 모델링하는 데이터 관점 (What) 업무가 실제로 하고 있는 일은 무엇인지 또는 무엇을 해야 하는지를 모델링하는 프로세스 관점(How) 업무 처리의 방법에 따라 데이터는 어떻게 영향을 받고 있는지 모델링하는 상관 관점(Process) 데이터 모델링이 시스템 구축 작업 중에서 다른 어떤 설계 과정보다 우선시 여겨지는 이유는 파급효과 때문이다. 데이터 모델링은 구축할 시스템의 복잡한 정보들.. 2021. 5. 11. 이전 1 다음