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

5.1 데이터 통합




5.1. 데이터 통합(Generalization)

정의
  • 데이터 통합이란 유사한 동질 성격의 데이터, 동질성을 가진 데이터를 더 큰 주제로 합치는 것
목적
  • 확장성 과 성능을 높이고 중복성 배제를 위해 데이터를 일반화시키는 것.
대상
  • 속성, 관계, 엔터티 중 엔터티 통합 이 주를 이룸.
  • 데이터를 통합하는 기준은 데이터 성격 으로 정함.
  • 유사한 성격의 엔터티를 판단하는 기준은 엔터티의 기초 속성이 유사한 엔터티로 정함.
  • 엔터티 정의에 종속된 개념. 엔터티를 어떻게 정의하느냐에 따라 데이터 통합의 기준이 달라질 수 있음.
  • 업무가 바뀔 가능성이 많을수록 데이터를 일반화시켜야 함. 핵심적인 업무일수록 요구 사항이 변경, 추가될 가능성은 커짐.
  • 향후 추가될 업무에 대한 담당자의 의견을 참조, 숙고하여 데이터 일반화를 결정해야 함.
  • 업무가 공통적인 부분이 없더라도 데이터가 유사하면 통합이 가능함.
사전 요구
  • 동질성을 가진 데이터라는 판단을 하려면 데이터의 성격을 규정할 수 있어야 함.
  • 속성과 엔터티 정의에 대한 명확한 이해가 선행돼야 하므로 반드시 정규화를 끝낸 다음 엔터티를 통합 해야 데이터 성격에 맞는 유연한 모델이 되어 확장성이 좋아짐.
  • 보통 데이터 통합은 별도의 단계로 존재하지 않고 엔터티를 정의하는 과정에서 수행
  • 완전 정규형을 사용해 데이터 통합(일반화) 작업을 수행하고 비정규화가 필요하면 통합된 모델에서 수행 함.
특징
  • 일반화(Generalization)는 상향식 방법에서 사용됨. 반대 개념인 상세화(Specialization)는 엔터티를 구체화하는 것을 의미하며 하향식 방법에서 사용됨.
  • 확장성이 좋은 유연한 모델을 만드는 데 사용되는 주요한 기법이 데이터 통합정규화
  • 정규화를 수행한 모델도 확장성이 좋은 유연한 모델임. 반복 속성을 별도의 엔터티로 정규화하면 속성이 일반화 됨.
  • 데이터를 통합하면 중복 데이터가 늘어나지 않음.
  • 비정규화 기법 중에 데이터 추출 시간을 줄이려고 엔터티를 합체하는 방법이 있는데, 이는 데이터 통합과는 다름.
주의할 점
  • 너무 일반적인이고 광범위한 개념으로 통합해서는 안 됨.
  • 성격, 정체성, 주제 등으로 판단했을 때 동질성이 빈약한 데이터를 통합하는 것을 주의해야 함.
  • 실익이 있는지를 숙고하고 미래에 발생할 가능성 요건으로 무리하게 통합되는 것도 주의해야 함.
  • 실체 엔터티는 최대한 통합, 행위 엔터티는 가능한 통합.
  • 실체, 행위, 기준 엔터티 간에는 통합하지 않아야 함.
통합이 어려운 이유
  • 여러 개발 조직이 자신에게 할당된 엔터티만 관심을 두기 때문.
  • 타 영역에 비슷한 엔터티가 있는지도 모르며, 있는 것을 알더라도 통합에 따른 개발 오너십 등의 문제로 통합이 어려워지는 경향이 있음.
  • 없어서는 안 될 필수적인 연관 관계만을 파악하고 효율적인 연관 관계에 대해서는 관심을 두지 않으므로 비슷한 종류의 엔터티가 여러 영역에 존재하여 중복 개발이 뒤따르고 중복 데이터를 관리하기 어렵게 됨.

문서정보

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