데이터 표준화
Q. 오늘은 데이터 표준화에 대해 알아보겠다. 데이터 표준관리란 무엇인가?
표준관리: 표준화를 통한 표준사전을 도출해 내고 이후에도 지속적인 관리가 되도록 하는 일련의 활동.
데이터 표준화 활동은 회사마다 다르다.
Q. 데이터 표준화를 하는 이유는 무엇인가?
데이터를 정합성과 일관성을 위함이다.
프로젝트를 할 때, 내가 아닌 남들과 함께 한다면 변수나 컬럼에 대한 이름을 통일 시켜야 하지 않는가.
더욱이 프로젝트의 규모가 크면 클 수록, 데이터 표준화의 중요도는 높아진다.
더욱이 프로젝트의 규모가 크면 클 수록, 데이터 표준화의 중요도는 높아진다.
Q. 데이터 표준화 하는 절차는 복잡하지 않는가?
맞다. 복잡하다. 따라서 시간이 걸린다. 하지만 이 작업은 추후 수정을 위해서도 필요한 작업이니,
큰 프로젝트를 할 때는 표준화 꼭 해놓는 것이 좋다.
큰 프로젝트를 할 때는 표준화 꼭 해놓는 것이 좋다.
데이터 표준화 프로세스는 크게 다음과 같다.
데이터 표준 정의 > 데이터모델 작성 > DB반영 > DB이관 반영.
Q. 표준화 대상은 특정 유형들이 반복되는 느낌이다. 예를 들면 이름이면 이름, 도메인이면 도메인처럼
표준화를 시키는 부분들은 한정되어 있지 않은가.
표준화를 시키는 부분들은 한정되어 있지 않은가.
맞다. 데이터 표준화의 대상은 유형화 할 수 있다.
표준 워드 사전 혼재 되어 사용되고 있는 단어를 현업에서 사용되어지고 있는 표준단어로 정리하여
전사적으로 유일하게 정의하는 것을 말합니다.
전사적으로 유일하게 정의하는 것을 말합니다.
표준 도메인 사전 전사적으로 사용되어지고 있는 데이터 중 동일한 유형 및 길이를 정리하여 표준화
하는 것을 말합니다
하는 것을 말합니다
표준 용어 사전 정의된 표준단어사전의 조합을 통해 전사적으로 사용되어지는 엔티티 및 속성에 대한
용어표준을 정의하는 것을 말합니다.
용어표준을 정의하는 것을 말합니다.
표준 코드 코드표준화는 각 산업에서 가져야 할 기본적인 코드에 대해서 표준화하여 관리하는 것으로
법적, 제도적으로 부여된 코드 뿐만 아니라 기관/기업에서 사용되어지는 코드 를 표준화 하는
것입니다.
법적, 제도적으로 부여된 코드 뿐만 아니라 기관/기업에서 사용되어지는 코드 를 표준화 하는
것입니다.
데이터관련 요소 표준 시스템을 설계하고 구축하는데 필요한 데이터관련요소(Subject Areas, Relationships,
Database & Instance, Indices, Constraints, Views, Tablespaces, Script Names 등) 의
표준을 정의하는 것입니다.
Database & Instance, Indices, Constraints, Views, Tablespaces, Script Names 등) 의
표준을 정의하는 것입니다.
그러나 본인이 생각하기에는 표준화의 대상이 무엇인지 하나하나 따지는 것 보다는 표준화라는 액션을 통하여
데이터의 정합성과 일관성을 유지하는 것이 더 중요하다고 생각한다.
데이터의 정합성과 일관성을 유지하는 것이 더 중요하다고 생각한다.
표준화 대상의 유형을 정리하는 것은 단순히 표준화 과정을 체계화 시키는 일부에 불과하다.
그렇지만서도 추후 설명을 효과적으로 하자면 이 개념을 숙지해 두는 것이 좋다. 줏대가 없어 미안하다.
그렇지만서도 추후 설명을 효과적으로 하자면 이 개념을 숙지해 두는 것이 좋다. 줏대가 없어 미안하다.
Q. 본인에게 아직은 데이터 표준화에 대한 개념이 너무 추상적이다. 구체적인 예시를 들어들며 설명해 달라.
요구사항이 참 많다. 데이터 표준화는 단어의 뉘앙스 때문에 어렵게 느껴지는 것이지, 생각보다 단순한 원리이다.
데이터 표준화를 나름의 체계를 갖고 설명하기 위해 표준 워드, 표준 용어, 표준 도메인, 표준 코드로
나누어 설명하겠다.
나누어 설명하겠다.
먼저, 표준 워드부터 보자. 사람들은 데이터베이스를 만들 때 본인들이 쓰던 단어를 자주 쓰지 않느냐.
인간은 원래 익숙함에서 편안함을 느낀다. 그렇기 때문에 자주 쓰는 단어들을 접두어/접미어 처럼 의미 있는 작은 단위로
쪼개어 표준화 시킨다.
인간은 원래 익숙함에서 편안함을 느낀다. 그렇기 때문에 자주 쓰는 단어들을 접두어/접미어 처럼 의미 있는 작은 단위로
쪼개어 표준화 시킨다.
이를 조합하여 단어를 구성하는데, 이때 같은 의미여도 경우의 수로 여러 단어가 나올 수 있지 않느냐.
그래서 다시 한번 사람들끼리 모여 ‘우리 이 단어는 이렇게 쓰도록 하자’라고 못을 박는다. 이것이
표준 용어이다.
그래서 다시 한번 사람들끼리 모여 ‘우리 이 단어는 이렇게 쓰도록 하자’라고 못을 박는다. 이것이
표준 용어이다.
그 다음은 표준 도메인이다. 표준 도메인은 앞서 정했던 표준 워드에 데이터 타입을 붙여 표준화 시키는
것이다. 예를 들면, 우리 고객이름(약어 CUS_NAM)의 데이터 타입은 VARCHAR(5)으로 하자와 같다.
것이다. 예를 들면, 우리 고객이름(약어 CUS_NAM)의 데이터 타입은 VARCHAR(5)으로 하자와 같다.
코드도 같은 맥락이다. 절대 설명하기 귀찮아서 설명을 하지않는 것이 아니다.
참, 알아두어야 할 것은 데이터 표준화는 주로 개념적 모델링단계에서 논리적 모델링 단계로 넘어갈 때 실행된다.
다음은 데이터 표준화를 쉽게 이해시키기 위해 불법으로 퍼와 붙여놓은 예시이다.
이를 이론화하여 정리하면 다음과 같다.
그림은 어려워 보이지만, 자세히 들여다 보면 별거 없다. 했던 말 똑같이 하는 것이다.
이 예시를 보면 정확하게 알아 볼 것이다.
이때 O/X는 무엇이냐 하면, 우리 이렇게 하도록 하자라고 확정한 것은 O, 그 중에서 확정되지 않은 것은
X이다.
X이다.
Q. 이제 데이터 표준화 방식이 이해가 되는 것 같기도 하다. 그런데 표준화 과정에서 워드와 약어를 분리
하고 합성하는 방식은 사람에 따라 다르지 않나. 여러 방식이 있을 것인데 어떤 방식을 채택할 것인가.
하고 합성하는 방식은 사람에 따라 다르지 않나. 여러 방식이 있을 것인데 어떤 방식을 채택할 것인가.
맞다. 그래서 똑똑한 연구자들은 굳이 이를 두 가지 경우로 정리했다. 정리하는데 그치지 않고 각각의
경우에 따른 장점과 단점도 도출했다. 역시 연구는 아무나 하는 것이 아니다라고 새삼 또 한번 느끼는 순간이다.
경우에 따른 장점과 단점도 도출했다. 역시 연구는 아무나 하는 것이 아니다라고 새삼 또 한번 느끼는 순간이다.
Q.그럼 동음이의어가 있다면?
Q. 도메인 표준화에 대해서도 자세히 설명해달라.
도메인 유형은 사용목적에 따라 그룹도메인, 번호도메인, 코드도메인 등으로 정의 되며, 번호 도메인과
코드 도메인의 경우 코드 표준화 작업을 통해 정의된다.
코드 도메인의 경우 코드 표준화 작업을 통해 정의된다.
실은 이 부분에 대해서는 본인이 제대로 이해하지 못하였다. 기다려 달라. 정확한 정보로 다시 돌아오겠다.
댓글 없음:
댓글 쓰기