본문 바로가기

분류 전체보기

이력 데이터와 내역 데이터 2 그럼 [그림5] 환율 엔터티는 내역 엔터티일까요? 이력 데이터일까요? 환율은 기준 통화에 대한 상대 통화의 교환 비율인데요. 기본적으로 매일 관리하기 때문에 기준일자를 관리합니다. 원화에 대한 달러의 2월 15일 환율 데이터가 생성되고, 16일 환율도 생성되는 등 주 식별자에 따라 데이터가 생성되니 내역 데이터입니다. 환율을 관리하는 원천 엔터티이니 발생 내역 엔터티입니다. 환율 같은 엔터티를 이력 엔터티로 생각하는 경우가 많습니다. [그림5] 이미 존재하는 15일 환율이 바뀌고, 바뀌기 전 데이터를 관리해야 한다면 [그림6]과 같이 이력 엔터티가 있어야 됩니다. [그림6] 그리고 또 많이 혼돈하는 엔터티가 학력이나 회사경력 같은 엔터티입니다. [그림7]과 같은 고객의 학력을 관리하는 엔터티는 주 식별자.. 더보기
이력 데이터와 내역 데이터 1 지난 글에서 이력 데이터의 성격에 대해 간략하게 설명드렸습니다. 다시 정리하면 변경되는 데이터가 이력 데이터이고요. 쌓이는 데이터는 내역 데이터입니다. 그리고 원천(본질) 데이터인지를 구별하는 것이 중요합니다. 원천 엔터티를 도출하고 이력엔터티를 분석해야 하고요. 발생 내역인 원천 데이터가 변경되면, 변경 전의 데이터를 관리해야 이력 데이터 관리라고 합니다. 저는 ‘변경이력’과 ‘발생내역’이라는 용어로 구분합니다. 지난 번에 언급했듯이 이력이라는 용어는 상당히 애매합니다. 과거 데이터라는 포괄적인 의미를 지니고 있습니다. 영어로 표현하면 Time-Dependent Data, Historical Data 정도가 되는데요… 하지만 데이터 모델에서 말하는 이력은 단순히 쌓여있는 과거의 데이터가 아니라 변경된 .. 더보기
데이터를 활용하는 사용자의 불만 오늘날 데이터를 정보로서 활용하는 사용자의 불만과 불신은 널리 퍼져 있습니다. 모델러로서 간혹 현업 사용자와 인터뷰를 하는데 IT에 대한 불만이 심합니다. 물론 IT의 불만도 많습니다. 사실 데이터 품질 문제는 IT의 문제만은 아닙니다. 사용자의 불만을 간단하게 요약하면 아래와 같습니다. 수시로 요청하는 데이터, 화면에서 보여지는 데이터, 리포트 등을 망라해서요. § 요청한 데이터를 선별적으로 받는다 § 요청한 데이터를 늦게 받는다 § 요청해서 받은 데이터가 정확하지 않다 § 필요한 데이터를 관리하지 않는다 사용자 생각에는 만들 수 있는 데이터 같은데 IT 부서에 요청하면 어떤 건 안되고, 어떤 건 된다는 거죠. 지금은 그렇지 않겠지만 예전엔 저도 상대에 따라 후순위로 미뤘던 기억이 납니다. ㅎㅎ IT .. 더보기
이력 데이터에 대한 주절거림 모델링 분야에서 ‘이력’만큼 혼란스러운 용어는 없을 거 같습니다(저만 그런지는 모르겠습니다만). 책을 쓰면서도 가장 고민했던 장이고 ‘이력’이란 용어를 사용하지 않으려 시도해 봤지만 달리 방법이 없었습니다. 어쨌든 이력이라는 용어는 사용했지만 강조하려 했던 것이 우선 이력 데이터입니다. 무엇을 이력 데이터라고 하는지를 설명하려 애를 먹었습니다. 아직도 스스로 만족하지 못하는 부분은 있지만요. 언젠가 저를 잘 아는 어떤 모델러가 아직 연구할 부분이 있냐고 물었을 때 이력 데이터라고 주저없이 답변했습니다. 이력 데이터에 대한 내용은 외국 서적에도 그다지 없는 거 같습니다. 우리만의 고민은 아닐 거 같은데 원서에서 생각보다 많이 찾지 못했습니다. 저는 이력 데이터는 지나간 데이터(Bygone Data)라고 생.. 더보기
한 번은 읽을 만한 데이터 모델링 책... ㅎㅎ [프리미엄 가이드 후기] [도서 정보] 제목: 이론과 실무를 겸비한 전략서-관계형 데이터 모델링 프리미엄 가이드 페이지 수│536 쪽 빌행일│2010-11-04 지은이│김기창 출판사│㈜오픈메이드 컨설팅, www.openmade.co.kr 출판사 주소| 서울특별시 마포구 공덕동 426-19 동우빌딩 202호 출판사 전화 및 팩스| TEL 02-714-3702, FAX 02-714-3703 ISBN| 978-89-963840-1-4 값│37000원 [저자소개] 김기창 E-mail: bluepupi@gmail.com Blog: http://dataprofessional.tistory.com/ 데이터 분야에서 10여년째 일하고 있으며 현재는 오픈메이드컨설팅에서 수석 컨설턴트로 근무하고 있다. DA(Data Ar.. 더보기
관계 엔터티 선택 기준 [그림1]은 다수의 관계 속성을 사용하는 방식과 관계 엔터티를 사용하는 방식의 특징을 설명한 표입니다. [그림1] 일견 정규형 엔터티 방법이 일방적으로 좋아 보이나 앞서 밝혔듯이 가장 기본적인 판단 기준은 반복 속성의 개수와 속성이 늘어날 가능성을 염두에 두는 것입니다. 반복 속성도 적고 업무가 변경될 가능성이 없어 속성이 더는 늘어나지 않으며 성능 이슈가 존재하면, 정규형 엔터티를 채택하는 것이 바람직하지 않을 수 있습니다. 물론 일반적으로 관계형 데이터베이스에서는 반복 속성을 채택하는 방법보다 정규형 엔터티를 채택하는 것이 효율적입니다 또 다른 기준은 조회 요건입니다. 엔터티가 화면에 종속되는 것은 바람직하지 않지만 중요한 화면이 어떻게 구성됐는지에 따라 선택이 달라질 수 있습니다. 보험계약 당사자가.. 더보기
관계 엔터티의 장점 2 관계 엔터티의 장점에 대한 두 번째 글입니다. [그림1]과 같은 모델의 단점이 성능이 떨어지는 것이라고 생각하는 사람이 많은데요. 진짜인지 아닌지를 여기서 따지지는 않고요. ‘성능이 반드시 떨어진다’는 건 아니라는 전제하에 케이스별로 따지는 게 정답이라고 언급하고 글을 이어가겠습니다. [그림1] 만약 성능에 문제가 된다면 비정규형을 고려해야 됩니다. 관계 속성을 나열해서 사용하는 것도 비정규형이지만, 그쪽으로 한번 가면 되돌아오기 어렵고요. 업무가 복잡할수록 누더기가 된다고 보여집니다. [그림1]의 관계 엔터티에서 몇 가지 비정규형을 고려할 수 있습니다. 제 생각에는 [그림1]이 정규형이니까 모든 비정규형은 다 적용할 수 있다고 보는데요. 모든 경우를 장담할 수는 없겠죠. [그림2]와 같이 중복 관계(계.. 더보기
관계 엔터티의 장점 1 관계 엔터티의 장점은 유연하다는 것입니다. 반면에 다수의 관계 속성을 사용하는 방식의 단점은 유연하지 않다는 것입니다. 이전 글에서 설명했듯이 관계 속성을 사용하다 당사자 유형 중에서 연대보증인이 늘어날 때, 보험료 납부자와 같은 당사자 유형(서브타입) 자체가 늘어날 때 난감해집니다. 관계 엔터티를 사용하면 당사자구분코드에 ‘납부자’를 추가하면 약간의 수정이 발생할 뿐이죠. 어플리케이션이나 SQL의 수정을 최소화시키는 유연한 모델이 되는 것입니다. 관계 엔터티에서는 다른 속성(부가 데이터)을 관리하기 수월해집니다. [그림1] 모델과 같이 관계 엔터티도 고유의 속성을 가지게 될 때가 있습니다. 계약자와 피보험자의 신용정보 활용에 대한 동의 데이터를 관리할 수 있습니다. [그림1] 만약 관계 속성을 사용하면.. 더보기
다수의 관계 속성 & 하나의 관계 엔터티 이전 글에서 밝혔듯이 저는 관계를 속성이라고 생각합니다. 다른 엔터티와 연관성을 알 수 있는 속성으로요. 속성이 존재해야 관계가 성립되는 것입니다. 관계 속성은 데이터 생성 순서 개념이 존재하는 것이 일반 속성과 다른 점입니다. 하위 엔터티 속성의 데이터는 상위 엔터티의 속성(주 식별자)에 존재해야 하기 때문에요. 그 외에는 그냥 속성하고 같다고 생각됩니다. 이런 관계 속성은 엔터티 간에 두 개 이상일 수 있습니다. 하지만 실무 모델에서는 관계선을 정확하게 도출하지 않아 엔터티 간에 관계선이 여러 개가 존재하는 엔터티를 찾아보기 어렵습니다. [그림1]은 보험 계약과 연관된 고객이 계약자, 피보험자, 연대보증인 등으로 세 명일 때의 모델입니다. 세 명이 전부라면 보험계약 엔터티에서 관계 속성으로 관리해도 .. 더보기
관계가 쉬워진 Turning Point 이번 글은 쉬어가는 글인데요. 관계와 관련된 개인적인 경험담입니다. 저는 관계도 속성이라는 것을 알고부터 관계에 대한 의문이 풀렸습니다. 사실 별 거 아닌데요. 당연한 건데 이상하게 그 얘기를 듣는 순간(정말 순간적으로) 관계라는 것이 아주 쉬워졌어요. 그 전에는 추상적인 선 정도로 생각했던 거 같아요. 그때도 관계를 정의하는 건 자신 있었지만, 관계를 생각할 때 마다 눈 앞에 뿌연 게 있는 것처럼 왠지 허전했었는데요. 관계를 단지 속성으로 인지할 수 있도록 알려주신 분이 오픈메이드컨설팅 최영철사장님입니다. 이 사실 하나만으로도 상당히 고마워하고 있습니다. 5년 정도 지난 거 같은데 아직 그 순간을 기억하고 있어요. 아마도 모델러로서 한 단계 성장하는 순간이었을 거에요. 이 글을 읽는 여러분도 이런 경험.. 더보기