데이터 모델링/모델링 노트 - 관계형 데이터 모델링7 1. 엔터티 이야기(7) 1.12. 행위 엔터티란?행위 엔터티는 어떤 실체의 업무 행위나 활동에 의해서 생긴 원천 데이터를 관리하는 엔터티다.엔터티 중에 가장 많은 엔터티가 행위 엔터티다.행위 엔터티만의 특징은 엔터티 발생 순서가 존재할 수 있다는 것이다.일반적으로 데이터에는 순서의 개념이 없다. 생성 순서가 중요하지 않다는 것이 더 정확한 표현일 듯 하다.하지만, 일부 행위 엔터티 간에는 발생 순서가 중요하다.발생해서 소멸하는 비교적 짧은 라이프 사이클이 존재한다.행위 엔터티는 관리하는 속성도 대부분 많다.엔터테도 많고 속해 있는 속성도 많기 때문에 모델링시 가장 많은 시간이 소요되는 엔터티다.행위 엔터티의 가장 큰 특징 중 하나는 주 식별자가 복잡하다는 것이다.행위 엔터티는 대부분 하위 엔터티가 적어서 굳이 인조 식별자를 사.. 2024. 11. 24. 1. 엔터티 이야기(6) - 실체 엔터티 1.11. 실체 엔터티란?실체의 정의를 사전에서 찾아보면 '실체의 물체 또는 외형에 대한 실상'이라고 나온다.실체 엔터티는 간단히 만질 수 있는 것(tangible)을 관리하는 엔터티다.1.5에서 설명한 보이는 것을 관리하는 엔터티가 실체 엔터티다.엔터티를 분석하거나 설계할 때 해당 엔터티가 실체 엔터티인지를 가장 먼저 살펴본다.주의할 점은 만질 수 있는 것에 대한 모든 데이터를 관리하는 것이 아니라 본질적인 데이터를 관리한다는 것이다.실체의 존재와 연관된 데이터를 의미한다.이름이나 주민등록번호, 나이 등 실체의 존재와 연관된 데이터를 관리하는 엔터티이지, 그 실체가 발생시킨 데이터를 관리하는 엔터티는 아니다.예를 들면, 그 실체가 어떤 계약을 했는지, 어떤 불만을 얘기했는지, 얼마나 출금했는지 등을 관.. 2024. 11. 22. 1. 엔터티 이야기(5) 1.9. 엔터티 정의방법 - 원천 데이터인가?엔터티를 정의할 때, 그 엔터티에서 관리하는 데이터가 원천 데이터인지 가공 데이터인지를 구분하는 것도 엔터티를 제대로 이해하는 데 도움이 된다.원천 데이터(Raw Data)는 스스로 존재하는 최초의 데이터다.반면에, 가공 데이터(Processing Data)는 원천 데이터를 사용해서 만들어낸 데이터다.가공 데이터는 처음 데이터인 원천 데이터로 만들어낼 수 있지만, 또 다른 가공 데이터로도 만들어 낼 수 있다.중복 데이터까지 가공 데이터에 포함되기 때문에 가공 데이터는 상당히 많아질 수 있다.실제로 원천 데이터가 아닌 집계/요약/임시/작업용 데이터는 많이 볼 수 있다.원천 데이터는 고객이나 사용자가 직접 입력함으로써 생성된다.즉, 화면에서 입력(Key-in)한다.. 2024. 11. 22. 1. 엔터티 이야기 (4) 1.7. 종속 엔터티의 종류종속 엔터티는 참조 엔터티에 비하면 그다지 많지 않지만, 아래와 같은 다양한 경우에 발생한다. 부모 엔터티의 부가 데이터를 관리하는 엔터티1정규화에 의해서 발생한 엔터티이력 데이터를 관리하는 엔터티다대다 관계에서 발생한 교차 엔터티슈퍼타입에 대한 서브타입 엔터티엔터티 분류에 의한 일대일 관계의 엔터티부모 엔터티의 부가 데이터를 관리하는 엔터티모델의 상품 가격 엔터티는 상품 엔터티의 일부 데이터를 더욱 상세하게 관리하는 엔터티다.상품가격은 상품 없이는 존재할 수 없는 데이터이므로, 상품가격 엔터티는 상품 엔터티의 종속 엔터티다.부모 엔터티의 일부로서 성격이 동일한 데이터라고 할 수 있다.부모 엔터티의 주 식별자는 보통 종속 엔터티의 식별자로서 상속된다.그리고, 상속된 식별자와 결.. 2024. 11. 21. 1. 엔터티 이야기(3) 1.4. 엔터티 분류법어떤 대상을 구분하는 이유는 그 대상의 성질을 파악하는 데 도움이 되기 때문이다.어떤 대상을 범주로 하면 그 대상의 특징이 더 잘 이해된다.엔터티를 정의할 때 나름대로 다음과 같이 다양한 각도로 분류해 본다. 다양하게 분류해 볼수록 엔터티의 성격을 더욱 잘 알아낼 수 있다. 자연히 설계한 엔터티는 더욱 명확해진다.만질 수 있는 것과 만질 수 없는 것자립 엔터티와 종속 엔터티원천 데이터와 가공 데이터실체·행위·가공·기준 엔터티내부 생성 데이터와 외부 생성 데이터엔터티 유형에 의한 기본·내역·상세 등의 엔터티엔터티를 정의할 때 가장 먼저 보는 것은 '보이는 물체인가?'를 따져보는 것이다.사람/사물과 같이 실제로 존재하는 물건인지, 만져서 느낄 수 있는지부터 따져본다.그 후에는 엔터티가 .. 2024. 11. 21. 1. 엔터티 이야기(2) 1.2. 엔터티에 대한 서설'업무를 수행하는 데 필요한 데이터를 특성이 유사한 것끼리 모아놓은 집합'엔터티는 필요 때문에 관리하고자 하는 데이터의 집합이며, 특성이 유사한 데이터끼리 모아 놓은 집합이다.특성이 유사한 것끼리 모아 놓았다는 것은 함수 종속(Functional Dependency)을 의미한다.업무에서 관리하고자 하는 데이터(속성)를 함수 종속으로 도출한 결과 집합이 엔터티다.엔터티를 설계할 때 가장 기본적인 판단 기준은 '관리하고자 하는 데이터인지'를 판단하는 것.데이터베이스에 관리할 필요가 없는 데이터에 대해서는 고민할 이유가 없다.데이터베이스에 관리할 필요가 있는지에 대한 판단은 현업이 하게 된다.이때 모델러는 가능한 많은 데이터를 데이터베이스에 저장하도록 유도하는 것이 좋다.현재는 필요.. 2024. 11. 19. 1. 엔터티 이야기(1) 1.1. 집합과 엔터티'우리의 직관 또는 사고의 대상으로서 확정되어 있고 서로 명확히 구별되는 것들의 모임'게오르그 칸토어가 말한 '집합의 정의'집합의 정의를 엔터티의 정의로 대체할 수 있다고 생각한다. 그만큼 엔터티와 집합은 닯았다.직관이나 사고로 확정지을 수 있는 대상에는 보이지 않는 것을 포함하고 있다.그리고, 어떤 대상으로서 서로 구별돼야 한다는 것은 집합의 기본 개념이다.또한, 직관이나 사고의 대상으로서 확정되어 있다는 말은 직관이나 사고로 그 대상을 분명히 알 수 있다는 말이다. 즉, 어떤 조건에 의해 그 대상을 분명히 알 수 있는 것의 모임이 집합이다.집합은 명확한 조건이라는 기준이 있어야 형성 될 수있다.예를 들어, '프로야구 강팀의 모임'은 집합이 아니다.왜나하면, 모임을 결정하는 조건의.. 2024. 11. 19. 이전 1 다음