by-nc-sa     개발자, DBA가 함께 만들어가는 구루비 지식창고!

엔터티 종류




엔터티 종류

엔터티의 성격을 파악하거나, 현행 데이터베이스가 존재할 때 작업순서를 정하는데 도움을 주기위해서, 엔터티를 분류한다.

프로젝트에서 엔터티를 정확하게 분류하는 것은 현실적으로 어렵다. 이상적인 순서는 먼저 현행 엔터티 전체를 분류하고 실체 엔터티로 분류된 핵심적인 엔터티를 대상으로 개념모델링을 진행하는 것이다.

실체 엔터티 : 실제 물체(보이는 실상)에 대한 본질적인 데이터를 관리하는 엔터티
행위 엔터티 : 행위나 활동에 의해서 발생된 원천 데이터를 관리하는 엔터티
가공 엔터티 : 원천 데이터를 추출, 집계한 데이터를 관리하는 엔터티
기준 엔터티 : 실체나 행위 데이터의 기준이 되는 데이터를 관리하는 엔터티

실체 엔터티

실체의 본질적인 데이터를 관리하므로 도출이 용이한 반면, 잘못 도출하면 업무 전반적으로 심각한 상황이 발생하게 된다.

카드, 계좌, 직업등과 같이 관점에 따라서 다른 엔터티로 분류가능한 애매한 엔터티들이 존재한다.

실체엔터티는 대부분 부모엔터티가 존재하지 않으며, 다른 엔터티와의 관계에서 최상위에 위치하므로 주식별자를 단순하게 구성하는 것이 좋다.

또한 주식별자값에는 어떠한 체계도 존재하지 않는 것이 바람직하다.

통합된 모델은 확장성이 좋아지므로, 실체엔터티는 다른 엔터티에 비해 과감한 통합이 필요하다.

행위 엔터티

어떤 실체의 업무 행위나 활동에 의해서 발생된 원천 데이터를 관리하는 엔터티

계약, 주문, 신청, 입금

발생부터 소멸에 이르는 명확하고 짧은 라이프사이클이 있으며, 행위에 따른 발생순서가 존재

관리하는 속성수가 많으며, 주식별자가 복잡하다.

데이터 발생량도 많으며, 통계, 집계 등 가공 데이터으이 원천이 된다.

행위엔터티는 업무식별자를 제대로 파악하는 것이 매우 중요하다.

다수의 행위엔터티는 많은 하위엔터티가 존재하지 않아서, 굳이 인조식별자를 사용해 주 식별자를 단순화시킬 필요가 없으며 가능하면 업무에서 가장 많이 사용하는 업무식별자를 사용하는 것이 바람직하다

행위엔터티의 데이터 생성기준은 누가(Who), 무엇을(What), 언제(What), 어떻게(How) 이다. 이 요소중 '누가'와 '무엇을'에 해당하는 것이 실체 엔터티 이며, 이 엔터티의 교차 엔터티가 행위엔터티가 된다.

실체와 행위가 일대일 관게일지라도 성격이 다르므로 별개의 엔터티로 설계하는 것이 바람직 하다.

가공 엔터티

원천데이터가 아닌 데이터를 관리하는 엔터티. 집계, 요약, 임시테이터

가공 엔터티의 대부분 속성은 중복속성이므로, 가능한한 사용하지 않는 것이 바람직하며, 불가피할 경우만 사용하야 한다.

다른 집계와 관계가 존재하면 잘못된 관계가 아닌지 주의해야 한다.

집계를 하려는 기준이 주 식별자가 된다.

기준 엔터티

코드와 같이 업무기준이 되는 데이터를 관리하는 엔터티. 참조 엔터티

기준 엔터티를 사용할 때는, 기준 데이터를 관리하는 기준 엔터티와 기준 데이터를 사용하는 엔터티의 관계를 심도 있게 고려해봐야 한다.

기준엔터티는 타 엔터티와 관계가 존재할 수 있어, 인조식별자를 적절히 사용해야 단순한 모델이 될수있다.

기준엔터티의 통합은 적극적으로 고려해야 한다

기준엔터티를 정비하면 데이터 품질이 좋아진다.

문서정보

Enter labels to add to this page:
Please wait 
Looking for a label? Just start typing.