정의

  • 데이터 통합이란 유사한 동질 성격의 데이터, 동질성을 가진 데이터를 더 큰 주제로 합치는 것


목적

  • 확장성 과 성능을 높이고 중복성 배제를 위해 데이터를 일반화시키는 것.


대상

  • 속성, 관계, 엔터티 중 엔터티 통합 이 주를 이룸.
  • 데이터를 통합하는 기준은 데이터 성격 으로 정함.
  • 유사한 성격의 엔터티를 판단하는 기준은 엔터티의 기초 속성이 유사한 엔터티로 정함.
  • 엔터티 정의에 종속된 개념. 엔터티를 어떻게 정의하느냐에 따라 데이터 통합의 기준이 달라질 수 있음.
  • 업무가 바뀔 가능성이 많을수록 데이터를 일반화시켜야 함. 핵심적인 업무일수록 요구 사항이 변경, 추가될 가능성은 커짐.
  • 향후 추가될 업무에 대한 담당자의 의견을 참조, 숙고하여 데이터 일반화를 결정해야 함.
  • 업무가 공통적인 부분이 없더라도 데이터가 유사하면 통합이 가능함.


사전 요구

  • 동질성을 가진 데이터라는 판단을 하려면 데이터의 성격을 규정할 수 있어야 함.
  • 속성과 엔터티 정의에 대한 명확한 이해가 선행돼야 하므로 반드시 정규화를 끝낸 다음 엔터티를 통합 해야 데이터 성격에 맞는 유연한 모델이 되어 확장성이 좋아짐.
  • 보통 데이터 통합은 별도의 단계로 존재하지 않고 엔터티를 정의하는 과정에서 수행
  • 완전 정규형을 사용해 데이터 통합(일반화) 작업을 수행하고 비정규화가 필요하면 통합된 모델에서 수행 함.


특징

  • 일반화(Generalization)는 상향식 방법에서 사용됨. 반대 개념인 상세화(Specialization)는 엔터티를 구체화하는 것을 의미하며 하향식 방법에서 사용됨.
  • 확장성이 좋은 유연한 모델을 만드는 데 사용되는 주요한 기법이 데이터 통합정규화
  • 정규화를 수행한 모델도 확장성이 좋은 유연한 모델임. 반복 속성을 별도의 엔터티로 정규화하면 속성이 일반화 됨.
  • 데이터를 통합하면 중복 데이터가 늘어나지 않음.
  • 비정규화 기법 중에 데이터 추출 시간을 줄이려고 엔터티를 합체하는 방법이 있는데, 이는 데이터 통합과는 다름.


주의할 점

  • 너무 일반적인이고 광범위한 개념으로 통합해서는 안 됨.
  • 성격, 정체성, 주제 등으로 판단했을 때 동질성이 빈약한 데이터를 통합하는 것을 주의해야 함.
  • 실익이 있는지를 숙고하고 미래에 발생할 가능성 요건으로 무리하게 통합되는 것도 주의해야 함.
  • 실체 엔터티는 최대한 통합, 행위 엔터티는 가능한 통합.
  • 실체, 행위, 기준 엔터티 간에는 통합하지 않아야 함.


통합이 어려운 이유

  • 여러 개발 조직이 자신에게 할당된 엔터티만 관심을 두기 때문.
  • 타 영역에 비슷한 엔터티가 있는지도 모르며, 있는 것을 알더라도 통합에 따른 개발 오너십 등의 문제로 통합이 어려워지는 경향이 있음.
  • 없어서는 안 될 필수적인 연관 관계만을 파악하고 효율적인 연관 관계에 대해서는 관심을 두지 않으므로 비슷한 종류의 엔터티가 여러 영역에 존재하여 중복 개발이 뒤따르고 중복 데이터를 관리하기 어렵게 됨.