KR101930034B1 - 데이터의 도메인을 판별하는 장치 및 그 방법 - Google Patents

데이터의 도메인을 판별하는 장치 및 그 방법 Download PDF

Info

Publication number
KR101930034B1
KR101930034B1 KR1020170024634A KR20170024634A KR101930034B1 KR 101930034 B1 KR101930034 B1 KR 101930034B1 KR 1020170024634 A KR1020170024634 A KR 1020170024634A KR 20170024634 A KR20170024634 A KR 20170024634A KR 101930034 B1 KR101930034 B1 KR 101930034B1
Authority
KR
South Korea
Prior art keywords
data
domain
type
name
classification
Prior art date
Application number
KR1020170024634A
Other languages
English (en)
Other versions
KR20180097892A (ko
Inventor
김종현
이진형
김지혁
Original Assignee
(주)위세아이텍
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by (주)위세아이텍 filed Critical (주)위세아이텍
Priority to KR1020170024634A priority Critical patent/KR101930034B1/ko
Priority to PCT/KR2018/000580 priority patent/WO2018155816A1/ko
Publication of KR20180097892A publication Critical patent/KR20180097892A/ko
Application granted granted Critical
Publication of KR101930034B1 publication Critical patent/KR101930034B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2228Indexing structures
    • G06F16/2246Trees, e.g. B+trees
    • G06F17/2755
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/268Morphological analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/289Phrasal analysis, e.g. finite state techniques or chunking
    • G06F40/295Named entity recognition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/40Processing or translation of natural language
    • G06F40/53Processing of non-Latin text

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • General Health & Medical Sciences (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Software Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Machine Translation (AREA)

Abstract

데이터의 도메인을 판별하는 방법은 데이터 타입, 데이터 국문명 및 데이터 영문명을 포함하는 복수의 분류 기준 중 제 1 분류 기준 및 제 2 분류 기준에 기초하여 의사결정 트리 알고리즘을 통해 제 1 데이터의 도메인을 제 1 도메인으로 판별하는 단계, 제 1 데이터의 도메인을 제 1 도메인으로 저장하는 단계, 데이터 타입, 데이터 국문명 및 데이터 영문명을 포함하는 복수의 분류 기준 중 제 2 분류 기준 및 제 3 분류 기준과 저장 결과에 기초하여 의사결정 트리 알고리즘을 통해 제 2 데이터의 도메인을 제 2 도메인으로 판별하는 단계를 포함한다.

Description

데이터의 도메인을 판별하는 장치 및 그 방법{APPARATUS AND METHOD FOR DETERMINING DOMAIN}
본원은 데이터의 도메인을 판별하는 장치 및 그 방법에 관한 것으로, 인공지능을 기반으로 도메인을 자동으로 판별하는 장치 및 그 방법에 관한 것이다.
수집된 빅 데이터의 품질을 확보하는 것 대한 요구가 증가하고 있어, 빅데이터의 품질을 확보하는 것은 중요한 화두로 대두되고 있으나, 데이터의 양은 무어의 법칙(Moore's law)에 대응하는 비율로 폭발적으로 증가하고 있어, 데이터 엔지니어의 경험과 노력으로 품질을 측정하는데 어려움이 따른다. 무어의 법칙은 반도체 집적회로의 성능이 18개월마다 2배로 증가한다는 법칙이다. 또한, 비즈니스의 복잡성 증가에 따른 정보 시스템의 복잡도도 증가하고 있으며, 데이터의 종류도 정형 데이터에서 비정형 데이터로 확장되고 있으며, 빅데이터의 활용에 대한 관심 증대에 따라 데이터의 양은 더욱 늘어나고 있다.
데이터 관리 기술들은 데이터 저장소나 액세스(Access) 기술이 주로 발전되고 있으며, 이에 반해 데이터 품질에 대한 인식은 매우 낮고, 저품질 데이터의 피해 사례와 비용 발생에 따른 데이터 품질 관리에 대한 필요성이 대두되고 있다. 예를 들면, 2009년을 5월을 기준으로 국민연금 가입자의 주민등록번호와 이름이 일치하지 않는 사례가 30만여건에 달하고 있으며, 국외에서는 주 관공서가 이미 사망한 아동의 부모들에게 위학 학교를 선택하라는 안내문을 발송하는 사례가 있다.
이렇듯, 국내 및 국외의 공공기관 또는 기업 등지에서 사용되는 데이터베이스와 관련된 사고가 점차 증가하고 있으며, 미국 NASA의 한 연구에서 빅데이터의 경우 증가하는 데이터 양에 부합하는 데이터 품질요구사항을 만족하기 위해 자동화된 데이터 품질 측정 도구가 필요하다고 언급하는 등, 인력으로는 해결할 수 없는 데이터베이스의 품질을 자동으로 관리하고 측정하는 기술에 대한 요구도 점차 증가하고 있다.
현재, 데이터베이스는 중요성 및 부정확한 데이터에 대한 낮은 인식, 데이터 품질 관리 비용의 인식 부족 등 데이터베이스의 데이터 품질에 대한 인식이 낮은 편에 속하며, 데이터 품질 전문가 부족으로, 기관 또는 기업에 적합한 데이터 품질 활동을 고려한 적용 기술이 요구된다.
본원의 배경이 되는 기술은 한국특허공개공보 제 2000-0055986호에 개시되어 있다.
본원은 전술한 종래 기술의 문제점을 해결하기 위한 것으로서, 빅데이터 환경 내에서 데이터의 도메인을 자동으로 판별하는 시스템을 제공하는 것을 목적으로 한다. 또한, 본원은 데이터 품질 가이드라인에서 정의하고 있는 데이터 도메인에 대하여 머신 러닝 알고리즘을 활용하여 해당 도메인에 대해 자동으로 판별하는 장치 및 그 방법을 제공하는 것을 목적으로 한다.
다만, 본원의 실시예가 이루고자 하는 기술적 과제는 상기된 바와 같은 기술적 과제들도 한정되지 않으며, 또 다른 기술적 과제들이 존재할 수 있다.
상기한 기술적 과제를 달성하기 위한 기술적 수단으로서, 데이터의 도메인을 판별하는 방법에 있어서, 데이터 타입, 데이터 국문명 및 데이터 영문명을 포함하는 복수의 분류 기준 중 제 1 분류 기준 및 제 2 분류 기준에 기초하여 의사결정 트리 알고리즘을 통해 제 1 데이터의 도메인을 제 1 도메인으로 판별하는 단계, 제 1 데이터의 도메인을 제 1 도메인으로 저장하는 단계 및 데이터 타입, 데이터 국문명 및 데이터 영문명을 포함하는 복수의 분류 기준 중 제 2 분류 기준 및 제 3 분류 기준과 저장 결과에 기초하여 의사결정 트리 알고리즘을 통해 제 2 데이터의 도메인을 제 2 도메인으로 판별하는 단계를 포함할 수 있다.
또한, 본원의 일 실시예에 따르면, 데이터 타입, 데이터 국문명 및 데이터 영문명을 포함하는 복수의 분류 기준 중 제 1 분류 기준 및 제 3 분류 기준과 저장 결과에 기초하여 의사결정 트리 알고리즘을 통해 제 3 데이터의 도메인을 제 3 도메인으로 판별하는 단계를 더 포함할 수 있다.
또한, 본원의 일 실시예에 따르면, 데이터 타입은 데이터의 컬럼의 타입(Type)에 따라 숫자 타입, 문자 타입 및 문자열 타입 중 어느 하나로 분류할 수 있다.
또한, 본원의 일 실시예에 따르면, 데이터 국문명은 데이터의 컬럼이 국문인 경우, 컬럼을 형태소 단위로 분리하고, 분리된 형태소 중 어느 하나를 선정하는 것일 수 있다.
또한, 본원의 일 실시예에 따르면, 데이터 영문명은 데이터의 컬럼이 영문인 경우, 컬럼 중 소정 기호를 기준으로 일정 부분을 선정하는 것 일 수 있다.
또한, 본원의 일 실시예에 따르면, 제 1 도메인으로 판별하는 단계는, 제 1 분류 기준이 데이터 타입이고, 제 2 분류 기준이 데이터 국문명인 경우, 데이터 타입이 숫자 타입이고, 데이터 국문명이 금액을 의미하는 형태소를 포함하면, 데이터를 금액 도메인으로 판별할 수 있다.
또한, 본원의 일 실시예에 따르면, 제 2 도메인으로 판별하는 단계는, 제 2 분류 기분이 데이터 타입이고, 제 3 분류 기분이 데이터 영문명인 경우, 데이터 타입이 숫자 타입이고, 데이터 영문명이 번호를 의미하는 약어, 코드 중 적어도 하나를 포함하면, 데이터를 번호 도메인으로 판별할 수 있다.
또한, 본원의 일 실시예에 따르면, 제 3 도메인으로 판별하는 단계는, 제 1 분류 기준이 데이터 타입이고, 제 3 분류 기준이 날짜 여부인 경우, 데이터 타입이 문자 또는 숫자 타입 중 어느 하나이고, 날짜 여부가 참 값을 가지는 경우, 데이터를 날짜 도메인으로 판별할 수 있다.
또한, 본원의 일 실시예에 따르면, 제 2 도메인으로 판별하는 단계는, 제 2 분류 기준이 데이터 타입이고, 제 3 분류 기준이 200자 이상 여부인 경우, 데이터 타입이 문자열 타입이고, 200자 이상 여부가 참 값을 가지는 경우, 데이터를 내용 도메인으로 판별할 수 있다.
또한, 본원의 일 실시예에 따르면, 제 2 도메인으로 판별하는 단계는, 제 1 분류 기준이 데이터 타입이고, 제 2 분류 기준이 200자 이상 여부이고, 제 3 분류 기준이 데이터 국문명인 경우, 데이터 타입이 문자 타입 또는 문자열 타입이고, 제 200자 이상 여부가 거짓 값을 가지고, 국문 명이 이름을 의미하는 형태소를 포함하면, 데이터를 명칭 도메인으로 판별할 수 있다.
또한, 본원의 일 실시예에 따르면, 제 2 도메인으로 판별하는 단계 이후에, 제 2 데이터의 도메인을 제 2 도메인으로 저장하는 단계를 더 포함할 수 있다.
또한, 본원의 일 실시예에 따르면, 데이터의 도메인을 판별하는 장치는 데이터 타입, 데이터 국문명 및 데이터 영문명을 포함하는 복수의 분류 기준 중 제 1 분류 기준 및 제 2 분류 기준에 기초하여 의사결정 트리 알고리즘을 통해 제 1 데이터의 도메인을 제 1 도메인으로 판별하는 도메인 판별부 및 제 1 데이터의 도메인을 제 1 도메인으로 저장하는 데이터베이스를 포함하되, 도메인 판별부는 데이터 타입, 데이터 국문명 및 데이터 영문명을 포함하는 복수의 분류 기준 중 제 2 분류 기준 및 제 3 분류 기준과 저장 결과에 기초하여 의사결정 트리 알고리즘을 통해 제 2 데이터의 도메인을 제 2 도메인으로 판별할 수 있다.
상술한 과제 해결 수단은 단지 예시적인 것으로서, 본원을 제한하려는 의도로 해석되지 않아야 한다. 상술한 예시적인 실시예 외에도, 도면 및 발명의 상세한 설명에 추가적인 실시예가 존재할 수 있다.
전술한 본원의 과제 해결 수단에 의하면, 기존의 데이터 엔지니어가 수작업으로 수행하던 업무를 도구를 활용하여 자동화함으로써 투입 인력을 최소화할 수 있으며, 데이터 엔지니어 전문가의 개입 없이 지속적인 데이터 품질 관리가 용이할 수 있다. 또한 빅데이터 환경 내에서 데이터의 도메인을 자동으로 판별함으로써, 엔지니어의 실수 등으로 인해 잘못될 수 있는 데이터 품질 관리를 방지할 수 있다.
도 1은 본원의 일 실시예에 따른 데이터의 도메인을 판별하는 시스템의 구성도이다.
도 2는 본원의 일 실시예에 따른 도메인 판별 장치(10)의 구성을 나타내는 도면이다.
도 3a 내지 도3b는 본원의 일 실시예에 따른 데이터의 도메인을 판별하는 과정을 나타내는 도면이다.
도 4는 본원의 일 실시예에 따른 데이터의 도메인을 판별하는 과정을 나타내는 흐름도이다.
도 5는 본원의 일 실시예에 따른 데이터의 도메인을 판별하는 흐름을 나타내는 동작 흐름도이다.
아래에서는 첨부한 도면을 참조하여 본원이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 본원의 실시예를 상세히 설명한다. 그러나 본원은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본원을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
본원 명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "전기적으로 연결"되어 있는 경우도 포함한다.
본원 명세서 전체에서, 어떤 부재가 다른 부재 "상에", "상부에", "상단에", "하에", "하부에", "하단에" 위치하고 있다고 할 때, 이는 어떤 부재가 다른 부재에 접해 있는 경우뿐 아니라 두 부재 사이에 또 다른 부재가 존재하는 경우도 포함한다.
본원 명세서 전체에서, 어떤 부분이 어떤 구성요소를 "포함" 한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성 요소를 더 포함할 수 있는 것을 의미한다.
도 1은 본원의 일 실시예에 따른 데이터의 도메인을 판별하는 시스템의 구성도이다. 도 1을 참조하면, 데이터의 도메인을 판별하는 시스템은 도메인 판별 장치(10), 표준 데이터 사전(20) 및 탐지 대상 데이터베이스(30)를 포함할 수 있다. 다만, 도 1에 도시된 시스템의 구성이 상기된 구성으로 한정되는 것은 아니다.
도메인 판별 장치(10)는 표준 데이터 사전(20)을 기반으로 인공지능을 통한 선행학습을 수행하고, 학습 결과에 기초하여 탐지 대상 데이터베이스(30)에 대한 도메인 판별을 수행할 수 있다. 도메인 판별 장치(10)는 탐지 대상 데이터베이스(30)의 컬럼에 대하여 컬럼의 도메인을 11개의 도메인으로 판별할 수 있으며, 판별된 도메인의 유형을 저장 및 학습함으로써, 도메인을 판별하는데 이용할 수 있다. 이와 같은 도메인 판별 장치(10)의 구성은 도 2를 통해 자세히 설명된다.
표준 데이터 사전(20)은 도메인 판별 장치(10)가 선행학습을 할 수 있도록 하는 선행 데이터를 가질 수 있다. 일반적으로 SQL 등의 DBMS(Database Management System)에서는 데이터에 대한 의미 파악, 데이터의 중복, 데이터 불일치 발생, 데이터 통합, 변경 및 유지 발생 등의 문제를 해결하기 위해 데이터 표준 사용을 권장하고 있다.
좀 더 상세히 말하면, 데이터가 기업의 전략적 의사 결정의 핵심 요소로 떠오름에 따라 데이터 통합이나 데이터 품질에 대한 관심이 증대되고 있다. 하지만, 정보 시스템 개발 및 운영 과정에서 동일한 의미로 데이터를 다른 명칭으로 중복 관리하거나, 동일한 명칭 데이터를 시스템 간에 상이한 로직으로 산출하여 다른 의미로 활용함으로서, 데이터의 중복에 따른 조직, 업무 시스템 별 데이터의 불일치가 발생할 수 있다.
또한, 데이터의 명칭, 데이터 정의에 대하여 새로운 정보 요건이나 정보 요건 변경 시 필요 데이터를 파악하는데 많은 시간을 할애해야 하는 문제로, 사용자에게 적시에 정보를 제공하는 데 어려움이 발생할 수 있으며, 단위 시스템 위주의 데이터 저장소 구축 등 전사 데이터에 대한 통합적인 정보 요건을 통합하는데 있어, 데이터의 의미 파악이나 데이터의 중복 여부를 파악하는데 어려움이 따를 수 있다. 정보 시스템의 변경이나 유지보수 시에도 마찬가지로 데이터의 의미 파악에 어려움을 겪을 수 있고, 새로운 정보 요건 반영 시 기존 데이터의 활용이 가능한지 여부를 파악하는데 많은 노력을 필요로 하게 된다.
상기된 바와 같은 문제점을 해결하기 위해 DBMS 또는 DBMS를 제공하는 기업이나 기관들은 데이터를 표준화 및 규격화하기 위한 기본 방침을 설정하고, 전사적인 정보 공유를 위해 유지 되어야할 공통 데이터 요소를 도출하여 시스템 개발의 효율성 및 데이터의 공유성을 향상시키기 위한 노력을 기울이고 있다.
표준 데이터 사전(20)는 도메인 판별 장치(10)가 데이터에 대한 도메인을 판별하는데 있어 최초 학습 자료를 제공하기 위해 다양한 시스템 별로 산재해 있는 정보 요소에 대하여 명칭, 정의, 형식, 규칙 등의 정보를 포함할 수 있다.
예를 들어, 데이터 명칭은 데이터를 유일하게 구별해주는 이름으로, 해당 개념을 유일하게 구분해주는 이름으로, 데이터를 표준화하는데 있어, 하나의 개념에 대하여 모든 사용자들이 하나의 명칭만을 사용하도록 표준 데이터 사전(20) 내에 설계될 수 있다. '고객 계좌번호' 또는 '고객 구좌번호' 등을 '고객 계좌번호'로 통일하여 사용되도록 설계될 수 있다.
다른 예에서, 데이터 명칭은 해당 데이터가 의미하는 범위 및 자격 요건을 규정하는 것으로서, 사용자가 데이터의 의미를 이해할 수 있도록 데이터의 범위와 자격 요건을 명시하고, 이를 전달하는 역할을 수행할 수 있도록 표준 데이터 사전(20) 내에 설계될 수 있다. 데이터 사용자가 데이터의 의미를 잘 이해할 수 있도록 제 3자 입장에서 기술하거나, 또는 서술식 정의만으로 데이터의 의미 전달이 어려운 경우 실제 발생할 수 있는 데이터의 값도 같이 기술하도록 설계될 수 있다.
다른 예에서, 데이터 형식은 데이터 표현 형태의 정의를 통해 데이터 입력 오류와 통제 위험을 최소화하도록 표준 데이터 사전(20) 내에서 설계될 수 있다. 데이터의 형식은 숫자, 문자, 문자열, 날짜 형식 등의 데이터 유형에 따라 사용될 수 있도록 설계될 수 있다.
다른 예에서, 데이터 규칙은 발생 가능한 데이터 값을 사전에 정의하여 데이터의 입력 오류와 통제 위험이 최소화 되도록 표준 데이터 사전(20) 내에서 설계될 수 있다. 숫자 타입의 기본값으로 0이 자동으로 입력되거나, 소정 길이를 갖는 문자열 만이 입력되거나 또는 데이터 값의 범위를 제한하도록 설계될 수 있다.
위와 같이, 표준 데이터 사전(20)은 도메인 판별 장치(10)가 데이터에 대한 도메인을 판별하는데 있어 사전 정보를 저장 또는 학습할 수 있도록 하는 데이터를 포함할 수 있다. 예를 들면, SQL, Oracle Cubird등의 DB업체에서 정의하는 표준 데이터 셋을 포함할 수 있으며, 서울시에서 제공하는 OPEN API 등에서 정의하는 표준 데이터 셋을 포함할 수도 있다.
예를 들면, 표준 데이터 사전(20)은 아래 표 1과 같은 데이터 셋을 포함하여, 도메인 판별 장치(10)가 도메인을 판별하는데 있어 사전 정보를 학습할 수 있도록 소스(Source)를 제공할 수 있다.
No 출력명 출력 설명
1 DB_NM 공공정보그룹명
2 DT_NM 공공정보명
3 INF_ID 서비스ID
4 INF_NM 서비스명
5 PAR_INFO_TYPE_ID 상위분류체계ID
6 INFO_TYPE_ID 분류체계ID
7 PAR_INFO_TYPE_NM 상위분류체계명
8 INFO_TYPE_NM 분류체계명
9 INF_TAG 태그
10 MNG_ORGAN_NAME 제공기관
11 MNG_STATION_NAME 제공부서
표 1은 서울시의 데이터베이스를 이용하기 위한 Open API에 정의된 데이터 명칭과 정의를 나타낸다. 표 1을 참조하면 서울시의 데이터베이스에서는 서비스 ID는 INF_ID로 표시하고, 태그는 INF_TAG로 표시하도록 설계될 수 있다. 한편, 서울시의 데이터베이스는 표준 데이터 사전(20)으로서 활용되고, 이 때, 도메인 판별 장치(10)는 서울시의 데이터베이스에 정의된 데이터의 정의, 명칭 등을 학습하여 도메인을 판별할 수 있다.
탐지 대상 데이터베이스(30)는 도메인 판별의 대상이 되는 데이터베이스로서, 도메인 판별 장치(10)는 학습 결과에 기초하여 탐지 대상 데이터베이스(30)에 포함된 데이터에 대한 도메인을 판별할 수 있다.
도 2는 본원의 일 실시예에 따른 도메인 판별 장치(10)의 구성을 나타내는 도면이다. 도 2를 참조하면, 도메인 판별 장치(10)는 데이터베이스(110) 및 도메인 판별부(120)를 포함할 수 있다. 다만, 도 2에 도시된 도메인 판별 장치(10)의 구성이 앞서 설명된 것들로 한정되는 것은 아니다.
도메인 판별 장치(10)는 빅데이터 환경에서 신규 유형의 도메인을 인공지능 기반으로 자동판별 또는 학습할 수 있으며, 이를 통해 도메인에 대한 품질관리가 가능해진다. 좀 더 상세히 말하면, 표준 데이터 사전(20)을 기반으로 인공지능을 통해 선행학습을 수행하고, 선행학습 결과에 기초하여 탐지 대상 데이터베이스(30) 내의 데이터 도메인에 대한 판별을 수행할 수 있다. 이 때, 선행학습은 표준 데이터 사전(20) 내의 데이터를 기초로 도메인에 대한 판별 기준을 생성하고 생성된 판별 기준에 따라 도메인을 판별하는 것일 수 있다.
일반적으로 데이터 품질 관리는 현재 운영 또는 관리되고 있는 정보 시스템 내에 수록된 데이터의 품질을 측정하여 현재의 수준을 평가하고, 품질 저하의 요인을 분석하는 절차를 의미할 수 있다. 데이터 품질 관리는 운영 데이터 베이스의 테이블, 컬럼, 코드, 관계, 업무 규칙 등을 기준으로 데이터의 값을 분석하여 데이터의 품질을 진단하는 것을 의미할 수 있으며, 데이터 값과 관련된 품질 기준을 적용하여 오류 내역을 산출하고 오류 원인을 분석하는 절차를 의미할 수 있다.
한편, 도메인은 일반적으로 데이터베이스 설계 시 부여되는 데이터의 가장 작은 단위인 컬럼의 특성을 의미하며, 도메인에 부합하는 데이터 업무 규칙을 적용하면, 데이터의 무결성을 유지할 수 있는 효과를 가질 수 있다. 좀 더 상세히 말하면, 도메인은 데이터베이스에서 테이블의 설계 단계에서 각 컬럼들에 적용되는 고유한 성격으로 데이터베이스에서 관리하는 데이터의 가장 작은 단위인 컬럼의 특성에 대한 정의라고 할 수 있다.
도메인 판별 장치(10)는 탐지 대상 데이터베이스(30)가 보유하고 있는 컬럼 정보에 기초하여 도메인을 판별할 수 있다.
도메인 판별부(120)는 데이터 타입, 데이터 국문명, 데이터 영문명을 포함하는 복수의 분류 기준 중 제 1 분류 기준 및 제 2 분류 기준에 기초하여 의사결정 트리 알고리즘을 통해 제 1 데이터의 도메인을 제 1 도메인으로 판별할 수 있다.
좀 더 상세히 말하면, 도메인 판별부(120)는 데이터 타입, 데이터 국문명, 데이터 영문명, 소수점 여부, 날짜 여부, 숫자 여부, 유니크 건수, 글자 200자 이상 여부, 자릿수 변동 여부 등 다양한 분류 기준에 기초하여 데이터에 대한 도메인을 결정할 수 있다.
데이터 타입은 탐지 대상 데이터베이스(30)에서 컬럼에 저장되는 데이터의 유형을 의미할 수 있다. 예를 들면, 숫자, 문자 또는 문자열 등의 유형으로 분류될 수 있으며, 'NUMBER', 'CHAR' 또는 'VARCHAR'등으로 구분되어 저장될 수 있다.
데이터 국문명은 데이터의 컬럼이 국문인 경우, 컬럼이 국문인 경우, 컬럼을 형태소 단위로 분리하고, 분리된 형태소 중 어느 하나를 선정하는 것일 수 있다. 예를 들면, 컬럼의 국문명의 가장 마지막 형태소를 선정할 수 있으며, 좀 더 상세히 말하면, '고객 번호'라는 컬럼으로부터 '번호'를 선정하여 데이터 국문명으로 선정할 수 있고, '구매 일자'로부터 '일자'를 선정하여 데이터 국문명으로 선정할 수 있으며, '고객명'으로부터 '명'이라는 형태소를 선정할 수도 있다.
데이터 영문명은 데이터의 컬럼이 영문인 경우, 컬럼 중 소정 기호를 기준으로 일정 부분을 선정하는 것 일 수 있다. 좀 더 상세히 말하면, 'CUST_ID'라는 컬럼으로부터 '_' 이하의 문자열인 'ID'를 데이터 영문명으로 선정할 수 있고, 'SALES_AMT' 로부터 'AMT'를, 'PURCHASE_DT'로부터 'DT'를 데이터 영문명으로 선정할 수 있다.
소수점 여부는 데이터의 유형이 숫자인 데이터 중 소수점을 포함하고 있는지 여부를 나타내는 정보를 포함하는 것일 수 있다. 예를 들어, 데이터 타입이 NUMBER(10,0)인 경우, 10자리 정수만 입력이 가능하고, NUMBER(10,2)인 경우, 10자리 정수와 2자리 소수점의 입력이 가능하다는 정보를 포함할 수 있다. 한편, 소수점 여부는 'Y'로 대표되는 참 값, 'N'으로 대표되는 거짓 값을 통해 현재 데이터가 소수점을 가지고 있는지 여부를 포함할 수도 있다.
날짜 여부는 컬럼에 들어가 있는 데이터가 날짜 형식을 가지고 있는지 여부를 나타내는 정보를 포함하는 것일 수 있다. 예를 들어, 데이터가 2018인 경우, 연도를 의미할 수 있으므로 참 값으로 나타낼 수 있으며, 20170102는 연도, 월, 일에 대한 정보를 의미할 수 잇으므로 참 값으로 나타낼 수 있다. 한편, 20121134는 날짜 형식이 될 수 없으므로, 거짓 값으로 나타낼 수 있다.
다른 예에서, 날짜 여부는 '17-01-02', '2017-01-02' 등 연도와 일자, 날짜가 소정 기호와 함께 표시되는 경우에도 참 또는 거짓 값을 통해 현재 데이터가 날짜 형식을 가지고 있는지 여부를 나타내거나 또는 해당 정보를 포함할 수 있다.
숫자 여부는 컬럼에 들어가 있는 값이 숫자인지 여부를 나타내는 정보를 포함하는 것일 수 있다. 예를 들어, 현재 데이터가 2018인 경우 해당 데이터가 숫자를 의미할 수 있으므로 참 값으로 나타낼 수 있으며, '이공일팔', 'Two' 등 국문이나 영문명으로 표시되어 있으나 숫자를 의미할 수 있으므로 참 값으로 나타낼 수 있다.
유니크 건수는 컬럼에 저장된 데이터들 중 중복을 제거 시 남은 데이터의 수에 대한 정보 또는 중복 제거 후 남은 데이터의 수가 2개인지 여부를 참 또는 거짓 값으로 나타내는 정보를 포함할 수 있다. 예를 들어, 현재 데이터의 컬럼이 성별이고, 모든 중복 제거 후 남은 데이터의 수가 2(남자 또는 여자)이면, 참 값으로 나타낼 수 있다. 한편, 컬럼이 주민등록번호인 경우, 모든 중복 제거 후 남은 데이터 수는 현재 컬럼에 저장된 데이터의 수가 될 수도 있다. 이 경우, 유니크 건수는 컬럼에 저장된 데이터의 수와 중복 제거 후 남은 데이터 수가 일치하지 않는 경우, 주민등록번호는 중복될 수 없기 때문에 거짓 값으로 나타낼 수 있다.
글자 200자 이상 여부는 데이터의 유형이 문자 또는 문자열인 데이터 중 컬럼에 저장된 데이터의 최대 자리수가 200자 이상인지 여부에 대한 정보를 포함할 수 있다. 일 예로, 자기소개서에 대한 데이터베이스의 경우, 그 내용이 200자를 초과할 수 있기 때문에 참 값으로 나타낼 수 있으며, 이름, 주소 등의 문자 데이터는 거짓 값으로 나타낼 수 있다.
자릿수 변동 여부는 컬럼 안의 데이터에 대하여 자릿수가 변동된 데이터가 잇는지 여부에 대한 정보를 포함할 수 있다. 예를 들면, 컬럼에 포함된 첫 번째 데이터가 'ABC'이고, 두 번째 데이터가 'AB'이면 자릿수가 변동한 것으로 참 값으로 나타낼 수 있다. 다른 예에서, 컬럼이 전화번호에 대한 정보를 포함하는 경우, 해당 컬럼은 '000-0000-0000'의 형식으로 대쉬 기호를 포함하여 13자리의 정보가 저장될 수 있으나, 어느 하나의 데이터가 '00-0000-0000'의 형식으로 12자리 정보가 저장된 경우, 자릿수 변동이 된 것으로 참 값으로 나타낼 수 있다.
도메인 판별부(120)는 상기된 바와 같은 다양한 분류 기준에 기초하여 제 1 데이터에 대한 도메인을 제 1 도메인으로 판별할 수 있다. 좀 더 상세한 예를 들면, 도메인 판별부(120)는 제 1 분류 기준이 데이터 타입이고, 제 2 분류 기준이 데이터 국문명인 경우, 데이터 타입이 숫자 타입이고, 데이터 국문명이 금액을 의미하는 형태소를 포함하면, 데이터를 금액 도메인으로 판별할 수 있다. 즉, 도메인 판별부(120)는 컬럼명이 금액, 세금, 가격, 단가, 비용, 요금, 잔액, 총액, 상환액, 수수료, 수입금, 원금 등 제 2 분류 기준에 따라 선정된 금액을 의미하는 형태소를 포함하고, 데이터의 유형이 숫자 유형이면, 해당 데이터에 대한 도메인 또는 해당 컬럼에 대한 도메인을 금액으로 결정할 수 있다.
도메인 판별부(120)는 탐지 대상 데이터베이스(30)의 데이터에 대한 다양한 도메인을 판별할 수 있다. 판별되는 도메인의 예시로는 금액, 수, 율, 코드, ID, 명칭, 내용, 날짜, 플래그, 번호 및 연락처 등이 있을 수 있으나 이에 한정되는 것은 아니며 다양한 도메인이 더 존재할 수 있다.
금액 도메인은 데이터의 유형이 숫자 유형인 데이터 중 매출액, 판매액, 원가 등 돈과 관련된 숫자를 의미할 수 있다. 좀 더 상세히 말하면, 금액 도메인은 돈의 액수를 표현하는 값으로써 국가별 화폐단위에 맞는 숫자 타입의 값으로 구성될 수 있다. 금액 도메인을 지속적으로 관리하면 금액 도메인에 저장되는 데이터를 항상 유효한 형태로 관리할 수 있으며 데이터 자체의 범위 유효성을 유지할 수 있다. 금액 도메인의 예시로는 금액, 세금, 가격, 단가, 비용, 요금, 잔액 또는 총액 등이 있을 수 있다.
수 도메인은 데이터의 유형이 숫자 유형인 데이터 중 고객수, 상품수, 관객수 등 금액이 아닌 숫자를 의미할 수 있다. 좀 더 상세히 말하면, 수 도메인은 건수, 규모, 횟수 등과 같이 숫자로 관리되는 항목을 의미할 수 있다. 수량 도메인을 지속적으로 관리하면 수 도메인에 저장되는 데이터에 대한 최대값과 최소값의 유효 범위를 유지할 수 있다. 수 도메인의 예시로는 건수, 매수, 회차, 개수, 거리, 규모, 길이, 무게, 속도, 횟수, 평형, 면적 또는 온도 등이 있을 수 있다.
율 도메인은 데이터의 유형이 숫자 유형인 데이터 중 달성율, 정확도, 원가율 등 비율을 포함하는 숫자를 의미할 수 있다. 좀 더 상세히 말하면, 율 도메인은 진척율, 증가율, 수익율, 변동율, 이자율, 가산율, 요율 등 매우 다양하게 정의되어 활용될 수 있으며, 이 때, 증가율, 수익율, 변동율 등은 계산식에 의해 산출될 수 있고, 이자율, 가산율, 요율 등은 다른 수치데이터의 산출에 적용되는 기준정보로 관리될 수 있다. 율 도메인의 예시로는 금리, 이율, 비율, 환율 또는 백분율 등이 있을 수 있다.
코드 도메인은 데이터의 유형이 숫자 또는 문자 유형인 데이터 중 사전에 정의된 항목으로 코드와 값을 포함할 수 있다. 예를 들면, 여자는 'F' 남자는 'M'으로 표현하는 경우, 'F', 'M'이 코드가 될 수 있고 여자와 남자가 값이 될 수 있다. 좀 더 상세히 말하면, 코드 도메인은 사용할 수 있는 데이터를 제한하거나 동일한 의미의 데이터를 동일 표현으로 관리하기 위해 간략한 코드값으로 대체된 데이터를 의미할 수 있고, 일반적으로 코드 도메인은 코드와 코드값으로 관리될 수 있다. 일 예로, 코드는 성별구분코드, 고객등급코드, 부서코드, 상품코드, 지역코드 등을 의미할 수 있고, 코드값은 성별구분코드의 'M', 'F' 등과 같이 해당 정보 항목에 데이터를 대표하거나 제한하기 위한 값을 의미할 수 있다. 코드 도메인은 표준화된 코드가 미리 정의되어 관리될 수 있다.
ID 도메인은 USER ID와 같이 사용자가 정의하는 고유한 값을 의미할 수 있다.
명칭 도메인은 소정 길이 이하의 문자열을 포함하며, 고객명, 상품명 등을 의미할 수 있다. 좀 더 상세히 말하면, 명칭 도메인은 다른 것과 식별하기 위하여 사물이나 인물, 단체 등에 붙이는 이름으로, 이름, 장소, 고객명, 영문고객명, URL, IP 등을 포함할 수 있다.
내용 도메인은 소정 길이 이상의 문자열을 포함하며, 게시물 내용 또는 자기소개서 내 등을 의미할 수 있다. 좀 더 상세히 말하면, 내용 도메인의 값은 사물 또는 행위에 대한 설명이나 참고가 될만한 내용들을 기술한 데이터를 의미할 수 있으며, 정의, 설명, 비고, 내용, 요약 등 예가 존재할 수 있다. 내용 도메인은 비정형 문자로 구성되는 특성을 가질 수 있다.
날짜 도메인은 연도, 연월, 연월일, 일자 등의 날짜를 의미할 수 있다. 좀 더 상세히 말하면, 날짜 도메인은 날짜로 관리되는 항목을 의미할 수 있으며, 접수일자, 등록일시, 결산년월, 전송시간 등 날짜 및 시간을 의미하는 데이터를 포함할 수 있다. 날짜 도메인의 데이터 타입은 DBMS에서 제공하는 날짜 데이터 타입을 사용하는 방법과 문자 타입을 사용할 수 있다. DBMS에서 제공하는 날짜 데이터 타입을 사용하는 경우에는 DBMS 자체에서 유효하지 않은 날짜 값을 체크하기 때문에 날짜 값의 오류가 거의 없으나, 문자 타입으로 정의하여 사용하는 경우에는 잘못된 날짜값이 입력될 수 있다.
플래그 도메인은 여부를 뜻하는 것으로, 0, 1, 'Y', 'N', '참', 거짓', 'True', False' 등 2개의 대향되는 값으로 구성될 수 있다. 좀 더 상세히 말하면, 플래그 도메인은 데이터의 표준화와 관리가 평이한 도메인 중에 하나로, 여부, 유무, 'Y', 'N' 또는 1, 0 등과 같이 2내지3개의 단순한 분류 값으로 구성될 수 있으며, 코드가 아닌 별개의 값으로 정의될 수 있다. 플래그 도메인에 저장되는 데이터는 항상 동일한 형태로 관리되어 정보 시스템 간의 정합성을 유지할 수 있다.
번호 도메인은 고객번호, 상품번호 등 순사적으로 증가하는 의미가 없는 숫자값을 의미할 수 있다. 좀 더 상세히 말하면, 번호 도메인은 문자 또는 숫자들의 조합에 의해 구성되며 대부분 내외부적인 번호 체 계에 따라 관리될 수 있다. 번호 도메인은 주민등록번호, 사업자등록번호, 우편번호, 법인번호, IP Address, 국제표준자료번호(ISBN/ISSN) 등과 같이 국내· 외 표준 번호 체계를 공통적으로 준수하는 데이터 또는, 사용자번호, 계좌번호, 허가번호, 승인번호, 등록번호, 상품번호 등과 같이 기업 내부적인 표준 번호 관리 체계에 따라 관리되는 데이터가 존재할 수 있다.
연락처 도메인은 주소, 이메일, 연락처와 같은 정보를 포함하는 데이터를 의미할 수 있다.
No 도메인 도메인 예시
1 금액 매출액, 판매액, 원가, 금액, 세금, 가격, 단가, 비용, 요금, 잔액, 총액
2 고객수, 상품수, 관객수, 건수, 매수, 회차, 개수, 거리, 규모, 길이, 무게, 속도, 횟수, 평형, 면적, 온도
3 달성율, 정확도, 원가율, 금리, 이율, 비율, 환율, 백분율
4 코드 성별코드, 약자코드, 등급코드
5 ID USER ID
6 명칭 고객명, 상품명, 주소, 장소
7 내용 자기소개서, 게시글, 내용, 비고, 설명, 정보, 요약
8 날짜 연, 월, 연월일, 연월, 시, 분, 초, 일, 반기, 분기
9 플래그 True, False
10 번호 고객번호, 상품번호, 게시번호
11 연락처 주소, 이메일, 연락처
표 2는 도메인 판별부(120)가 판별하는 도메인의 종류와 그 예시를 나타낸다. 다만, 도메인 판별부(120)를 통해 판별되는 도메인이 앞서 설명된 것들로 한정되는 것은 아니다. 예를 들면, 도메인 판별부(120)는 데이터를 식별하기 위한 키 도메인을 판별할 수 있으며, 분류되는 키 도메인은 데이터를 식별하기 위한 일차키(Primary Key), 데이터의 중복 방지를 위한 유일키(Unique Key), 데이터간의 참조관계를 식별하기 위한 외래키(Foreign Key) 등을 포함할 수 있다.
이와 같은 도메인 판별부(120)는 데이터 타입, 데이터 국문명 및 데이터 영문명을 포함하는 복수의 분류 기준 중 제 1 분류 기준 및 제 2 분류 기준에 기초하여 의사결정 트리 알고리즘을 통해 제 1 데이터의 도메인을 제 1 도메인으로 판별할 수 있으며, 복수의 분류 기준 중 제 2 분류 기준 및 제 3 분류 기준에 기초하여 의사결정 트리 알고리즘을 통해 제 2 데이터의 도메인을 제 2 도메인으로 판별하거나 또는, 복수의 분류 기준 중 제 1 분류 기준 및 제 3 분류 기준과 저장 결과에 기초하여 의사결정 트리 알고리즘을 통해 제 3 데이터의 도메인을 제 3 도메인으로 판별할 수 있다.
예를 들어, 도메인 판별부(120)는 다양한 분류 기준에 따라 어느 하나의 데이터에 대하여, 제 1 분류 기준이 데이터 타입이고, 제 2 분류 기준이 데이터 국문명인 경우, 데이터 타입이 숫자 타입이고, 데이터 국문명이 금액을 의미하는 형태소를 포함하면, 데이터를 금액 도메인으로 판별할 수 있고, 제 2 분류 기분이 데이터 타입이고, 제 3 분류 기분이 데이터 영문명인 경우, 데이터 타입이 숫자 타입이고, 데이터 영문명이 번호를 의미하는 약어, 코드 중 적어도 하나를 포함하면, 데이터를 번호 도메인으로 판별할 수 있다. 또한, 도메인 판별부(120)는 어느 하나의 데이터에 대하여 제 1 분류 기준이 데이터 타입이고, 제 3 분류 기준이 날짜 여부인 경우, 데이터 타입이 문자 또는 숫자 타입 중 어느 하나이고, 날짜 여부가 참 값을 가지는 경우, 데이터를 날짜 도메인으로 판별할 수도 있다. 이 때, 도메인 판별부(120)는 의사결정 트리 알고리즘을 통해 도메인을 판별할 수 있다.
다시 말해, 도메인 판별부(120)는 탐지 대상 데이터베이스(30) 내의 다양한 데이터 또는 컬럼에 대하여 다양한 분류 기준을 적용하고, 적용된 분류 기준에 기초하여 데이터 또는 컬럼에 대한 도메인을 판별할 수 있다.
도메인 판별부(120)는 제 1 데이터에 대하여 결정된 제 1 도메인을 데이터베이스(110)에 저장하고, 다른 데이터에 대한 도메인을 결정하는데 이용할 수 있다.
예를 들어, 도메인 판별부(120)는 제 2 분류 기준이 데이터 타입이고, 제 3 분류 기준이 200자 이상 여부인 경우, 데이터 타입이 문자열 타입이고, 200자 이상 여부가 참 값을 가지는 경우, 데이터를 내용 도메인으로 판별하고, 제 1 분류 기준이 데이터 타입이고, 제 2 분류 기준이 200자 이상 여부이고, 제 3 분류 기준이 데이터 국문명인 경우, 데이터 타입이 문자 타입 또는 문자열 타입이고, 제 200자 이상 여부가 거짓 값을 가지고, 국문 명이 이름을 의미하는 형태소를 포함하면, 데이터를 명칭 도메인으로 판별할 수 있다. 이후, 도메인 판별부(120)는 제 2 데이터의 도메인을 제 2 도메인으로 데이터베이스(110)에 저장할 수 있다.
다른 예에서, 도메인 판별부(120)는 다양한 분류 기준에 기초하여 어느 하나의 데이터에 대하여 데이터 타입이 문자 유형이고, 데이터 국문명이 '일'이고, 데이터 영문명이 'YMD'이고, 날짜 여부가 참 값을 갖는 경우, 해당 데이터에 대한 도메인을 날짜로 결정할 수 있다. 이후, 도메인 판별부(120)는 해당 데이터에 대하여 결정된 도메인과 그 분류 기준을 저장하고, 다른 데이터에 대하여 도메인을 판별하는데 이용할 수 있다. 좀 더 상세히 말하면, 도메인 판별부는 어느 하나의 데이터에 대한 도메인을 날짜 도메인으로 판별한 이후, 다른 데이터에 대하여 데이터의 유형이 문자이고, 데이터 국문명이 '시간'이고, 데이터 영문명이 'TIME'이고, 날짜 여부가 참 값을 가지는 경우, 분류 기준 및 데이터베이스(110)에 저장된 도메인 판별 결과에 기초하여 다른 데이터에 대한 도메인을 날짜 도메인으로 판별할 수 있다.
다시 말해, 데이터베이스(110)에 저장된 도메인 판별 결과 역시 하나의 분류 기준으로, 도메인 판별에 이용될 수 있다.
이하에서는 도메인 판별부(120)를 통해 도메인을 판별하는 과정을 도 3a 내지 도 3b을 통해 자세히 설명하고자 한다. 도 3a는 본원의 일 실시예에 따른 데이터의 도메인을 판별하는 과정을 나타내는 도면이고, 도3b는 탐지 대상 데이터베이스(30)에 대한 분류 기준과 도메인 판별 결과를 나타내는 예시를 나타낸다. 도 3a를 참조하면, 도메인 판별부(120)는 탐지 대상 데이터베이스(30)에 포함된 복수의 데이터에 대하여 다양한 분류 기준에 따라 단계 S301에서 데이터 국문명이 '금액'인 데이터 1791건을 금액 도메인으로 판별하고, 단계 S302에서 자릿수 변동 여부가 'N' 값을 가지는 데이터 1480건을 금액 도메인으로 판별하고, 단계 S303에서 데이터 타입이 숫자 유형인 데이터 737건을 금액 도메인으로 판별하고, 단계 S304에서 데이터 영문명이 'QTY'인 데이터 354건을 금액 도메인으로 판별할 수 있다.
한편, 도메인 판별부(120)는 단계 S305에서 데이터 국문명이 '금액'이 아닌 데이터에 대하여 데이터 타입이 숫자 타입이 아닌 데이터 743건을 명칭 도메인으로 판별하고, 단계 S306에서 글자 200자 이상 여부가 'Y' 값을 가지는 데이터 165건을 내용 도메인으로 판별하고, 단계 S307에서 글자 200자 이상 여부가 참 값을 가지는 데이터 578건을 명칭 도메인으로 판별할 수 있다. 한편, 도메인 판별부(120)는 단계 S308에서 날짜 여부가 참 값을 가지는 데이터 111건을 날짜 도메인으로 판별하고, 단계 S309에서 날짜 여부가 거짓 값을 가지는 데이터 467건을 명칭 데이터로 판별할 수 있다.
도메인 판별부(120)는 단계를 거치면서 다양한 분류 기준에 기초하여 많은 분류 기준을 만족시키는 데이터에 대하여 도메인을 판별함으로써, 판별 결과의 신뢰성을 높일 수 있다. 일 예로, 단계 S302는 단계 S301의 조건을 포함하고, 데이터 국문명이 '금액'이고, 자릿수 변동 여부가 'N' 값을 가지는 데이터를 금액 도메인으로 결정할 수 있으며, 단계 S303에서는 단계 S302 및 단계 S301의 조건을 포함하여, 데이터 국문명이 '금액'이고, 자릿수 변동 여부가 'N' 값을 가지고, 데이터의 유형이 숫자 유형인 데이터를 금액 도메인으로 결정할 수 있다. 금액 도메인을 판별하는 다양한 분류 기준을 만족할수록 도메인 판별부(120)의 판별 결과에 대한 정확도가 증가하는 효과를 가질 수 있다.
도 3b를 참조하면, 도메인 판별부(120)는 어느 하나의 데이터 또는 제1 데이터가 데이터 타입이 문자 타입이고, 데이터 국문명이 '일'이며, 소수점 여부가 'N' 값을 가지고, 데이터 영문명이 'YMD'이고, 날짜 여부가 'Y' 값을 가지고, 글자 200자 이상 여부가 'N' 값을 가지는 경우, 즉, 어느 하나의 데이터가 상기된 분류 기준을 만족하는 경우 도메인 판별부(120)는 해당 데이터를 날짜 도메인으로 판별할 수 있다.
도메인 판별부(120)는 분류 기준의 일부를 만족하는 경우에도 도메인을 판별할 수 있다. 일 예로, 데이터 타입이 숫자이고, 데이터 국문명이 '자'이고, 소수점 여부가 'Y' 값을 가질 지라도, 데이터베이스(110)에 축적된 분류 기준에 기초하여 데이터 영문명이 'YMD'이고, 날짜 여부가 'Y' 값을 가지는 경우, 해당 데이터의 도메인을 날짜 도메인으로 판별할 수 있다.
즉, 도메인 판별부(120)는 데이터베이스(110)에 저장된 도메인 판별 결과 및 빅데이터에 기초한 머신 러닝 알고리즘 또는 의사결정 트리 알고리즘 등에 기초하여 다양한 분류 기준의 만족 여부 또는 분류 기준의 조합에 대해서도, 도메인을 결정할 수 있다. 일 예로, 도 3b에 도시되지 않았으나, 도메인 판별부(120)는 데이터 타입이 문자 유형이고, 데이터 영문명이 'SEC'이고, 날짜 여부가 'Y' 값을 가지는 경우, 머신 러닝 알고리즘 또는 의사결정 트리 알고리즘을 통해, 해당 데이터에 대한 도메인을 날짜 도메인으로 판별할 수 있고, 이를 저장하여 다음 데이터의 분류 기준으로서 사용할 수 있다.
도메인 사용 알고리즘 분류 기준 예시
금액 의사결정 트리 알고리즘 데이터 타입, 데이터 국문명, 데이터 영문명
숫자 타입 데이터만 포함 가능
의사결정 트리 알고리즘 데이터 타입, 데이터 국문명
숫자 타입 데이터만 포함 가능
의사결정 트리 알고리즘
규칙기반 알고리즘
데이터 타입, 데이터 국문명, 데이터 영문명
숫자 타입 데이터만 포함 가능
코드 의사결정 트리 알고리즘
규칙기반 알고리즘
데이터 타입, 데이터 국문명, 데이터 영문명
자릿수가 변경될 수 없음
ID 의사결정 트리 알고리즘 데이터 타입, 데이터 국문명, 데이터 영문명
명칭 의사결정 트리 알고리즘
규칙기반 알고리즘
데이터 타입, 데이터 국문명, 데이터 영문명
데이터가 200자를 넘을 수 없음
내용 의사결정 트리 알고리즘
규칙기반 알고리즘
데이터 타입, 데이터 국문명, 데이터 영문명
데이터가 200자를 초과할 수 있음
날짜 의사결정 트리 알고리즘
규칙기반 알고리즘
데이터 타입, 데이터 국문명, 데이터 영문명
플래그 의사결정 트리 알고리즘
규칙기반 알고리즘
데이터 타입, 데이터 국문명, 데이터 영문명
번호 의사결정 트리 알고리즘
규칙기반 알고리즘
데이터 타입, 데이터 국문명, 데이터 영문명
자릿수가 변경될 수 없음
연락처 의사결정 트리 알고리즘 데이터 타입, 데이터 국문명, 데이터 영문명
표 3을 참조하면 도메인 판별에 사용되는 알고리즘 및 대표적인 분류 기준을 나타낸다. 도메인 판별부(120)는 도메인 판별에 대하여 판별의 기준이 되는 분류 기준을 데이터 타입, 데이터 국문명 및 데이터 영문명을 판별할 수 있으나, 이 밖에도 도메인의 특성에 기초하여 소수점 여부, 날짜 여부, 숫자 여부, 유니크 건수, 글자 200자 이상 여부, 및 자릿수 변동 여부 등 다양한 분류 기준에 따라 도메인을 판별할 수도 잇다.
도 4는 본원의 일 실시예에 따른 데이터의 도메인을 판별하는 과정을 나타내는 흐름도이다. 도 4를 참조하면, 단계 S401에서 도메인 판별 장치(10)는 표준 데이터 사전(20)에 기초하여 도메인 판별을 위한 분류 기준에 대한 데이터를 학습하고, 단계 S402에서 학습 결과를 데이터베이스(110)에 저장할 수 있다. 이후 단계 S403에서 도메인 판별 장치(10)는 학습 결과에 기초하여 탐지 대상 데이터베이스(30)에 포함된 데이터에 대하여 도메인 판별을 수행하고, 단계 S404에서 판별된 도메인 또는 판별에 이용된 분류 기준 등 도메인과 관련된 정보를 데이터베이스(110)에 저장할 수 있다. 단계 S405에서 도메인 판별 장치(10)는 복수의 분류 기준 및 데이터베이스에 저장된 저장 결과에 기초하여 의사 결정 트리 알고리즘을 통해 다른 데이터에 대한 도메인을 판별할 수 있다.
즉, 본원의 일 실시예에 따른 도매인 판별 장치(10)는 탐지 대상 데이터베이스(30)에 대하여 의사결정 트리 알고리즘에 기반한 인공지능을 통해 도메인 판별을 수행할 수 있으며, 도메인 판별의 횟수가 많아질수록 학습을 통해 도메인 판별에 대한 정확도가 증가하여, 데이터 품질관리의 신뢰도가 증가할 수 있다.
도 5는 본원의 일 실시예에 따른 데이터의 도메인을 판별하는 흐름을 나타내는 동작 흐름도이다. 도 5에 도시된 도메인 판별 방법은 도 1 내지 도 4를 통해 설명된 도메인 판별 장치(10)의 동작을 수행한다. 따라서 도 5에서 설명되지 않은 내용은 도 1 내지 도 4를 통해 설명된 도메인 판별 장치(10)의 설명에도 적용되므로 자세한 설명은 생략된다.
도 5를 참조하면, 도메인 판별 장치(10)는 단계 S501에서 데이터 타입, 데이터 국문명 및 데이터 영문명을 포함하는 복수의 분류 기준 중 제 1 분류 기준 및 제 2 분류 기준에 기초하여 의사결정 트리 알고리즘을 통해 제 1 데이터의 도메인을 제 1 도메인으로 판별하고, 단계 S502에서 제 1 데이터의 도메인을 제 1 도메인으로 저장한다.
단계 S503에서 도메인 판별 장치(10)는 데이터 타입, 데이터 국문명 및 데이터 영문명을 포함하는 복수의 분류 기준 중 제 2 분류 기준 및 제 3 분류 기준과 저장 결과에 기초하여 의사결정 트리 알고리즘을 통해 제 2 데이터의 도메인을 제 2 도메인으로 판별할 수 있다.
본원은 빅데이터를 적용한 시스템 내에서 인공지능 기반의 도메인 자동 판별을 수행함으로써, 빅 데이터에 대한 품질의 신뢰성을 향상시키기 위한 장치 및 방법을 제공할 수 있다. 이를 위해 본원은 데이터 품질 가이드라인에서 정의하고 있는 도메인에 대하여 자동으로 판별하기 위한 다양한 분류 기준을 통해 도메인을 판별할 수 있다.
본원은 표준 데이터 사전을 기반으로 인공지능을 통한 선행학습을 수행하고, 선행학습 결과를 기반으로 담지 대상 데이터베이스에 대한 도메인 판별을 수행할 수 있다. 도메인 판별 결과 역시 저장하여 학습함으로써, 도메인 판별의 정확도를 증가시킬 수 있으며, 새로운 도메인의 유형이 발견되는 경우에도 이를 학습하여 도메인 판별에 이용할 수 있다. 이러한 본원은 데이터 품질 관리를 위해 엔지니어가 수작업으로 진행하던 업무를 자동화 할 수 있으며, 자동화 함으로써, 투입인력을 최소화하고, 인력의 개입 없이 지속적인 데이터 품질 관리를 수행할 수 있다.
전술한 본원의 설명은 예시를 위한 것이며, 본원이 속하는 기술분야의 통상의 지식을 가진 자는 본원의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다.
본원의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본원의 범위에 포함되는 것으로 해석되어야 한다.
10: 도메인 판별 장치
110: 데이터베이스
120: 도메인 판별부
30: 탐지 대상 데이터베이스

Claims (12)

  1. 데이터의 도메인을 판별하는 방법에 있어서,
    데이터 타입, 데이터 국문명, 데이터 영문명 및 소수점 여부를 포함하는 복수의 분류 기준 중 제 1 분류 기준 및 제 2 분류 기준에 기초하여 의사결정 트리 알고리즘을 통해 제 1 데이터의 도메인을 제 1 도메인으로 판별하는 단계;
    상기 제 1 데이터의 도메인을 제 1 도메인으로 저장하는 단계; 및
    상기 데이터 타입, 상기 데이터 국문명 및 상기 데이터 영문명을 포함하는 복수의 분류 기준 중 상기 제 2 분류 기준 및 제 3 분류 기준과 상기 제1도메인을 포함하는 저장 결과에 기초하여 의사결정 트리 알고리즘을 통해 제 2 데이터의 도메인을 제 2 도메인으로 판별하는 단계를 포함하되,
    상기 데이터 타입은 상기 데이터의 컬럼의 타입(Type)에 따라 숫자 타입, 문자 타입 및 문자열 타입 중 어느 하나로 분류하고,
    상기 데이터 국문명은 상기 데이터의 컬럼이 국문인 경우, 상기 컬럼을 형태소 단위로 분리하고, 상기 분리된 형태소 중 어느 하나를 선정하며,
    상기 데이터 영문명은 상기 데이터의 컬럼이 영문인 경우, 상기 컬럼 중 소정 기호를 기준으로 일정 부분을 선정하고,
    상기 소수점 여부는, 상기 데이터의 컬럼이 숫자인 경우, 소수점을 포함하고 있는지 여부를 나타내며,
    상기 제 2 도메인을 판별하는 단계는, 저장된 상기 제 1 도메인을 더 고려하여 상기 의사결정 트리 알고리즘을 통해 이루어지는 것인, 도메인 판별 방법.
  2. 제 1 항에 있어서,
    상기 제 2 도메인으로 판별하는 단계 이후에,
    상기 데이터 타입, 상기 데이터 국문명, 상기 데이터 영문명 및 상기 소수점 여부를 포함하는 복수의 분류 기준 중 상기 제 1 분류 기준 및 상기 제 3 분류 기준과 상기 저장 결과에 기초하여 상기 의사결정 트리 알고리즘을 통해 제 3 데이터의 도메인을 제 3 도메인으로 판별하는 단계를 더 포함하는 것인, 도메인 판별 방법.
  3. 제 1 항에 있어서,
    상기 제 1 도메인으로 판별하는 단계는
    상기 데이터 타입에 기초하여 상기 의사결정 트리 알고리즘을 통해 상기 제 1 데이터의 도메인을 제 1 도메인으로 판별하는 것인, 도메인 판별 방법.
  4. 제 1 항에 있어서,
    상기 제 1 도메인으로 판별하는 단계는
    상기 데이터 국문명에 기초하여 상기 의사결정 트리 알고리즘을 통해 상기 제 1 데이터의 도메인을 제 1 도메인으로 판별하는 것인, 도메인 판별 방법.
  5. 제 1 항에 있어서,
    상기 제 1 도메인으로 판별하는 단계는
    상기 데이터 영문명에 기초하여 상기 의사결정 트리 알고리즘을 통해 상기 제 1 데이터의 도메인을 제 1 도메인으로 판별하는 것인, 도메인 판별 방법.
  6. 제 1 항에 있어서,
    상기 제 1 도메인으로 판별하는 단계는,
    상기 제 1 분류 기준이 상기 데이터 타입이고, 상기 제 2 분류 기준이 상기 데이터 국문명인 경우, 상기 데이터 타입이 숫자 타입이고, 상기 데이터 국문명이 금액을 의미하는 형태소를 포함하면, 상기 의사결정 트리 알고리즘을 통해 상기 제 1 데이터를 금액 도메인으로 판별하는 것인, 도메인 판별 방법.
  7. 제 1 항에 있어서,
    상기 제 2 도메인으로 판별하는 단계는,
    상기 제 2 분류 기분이 상기 데이터 타입이고, 상기 제 3 분류 기분이 데이터 영문명인 경우, 상기 데이터 타입이 숫자 타입이고, 상기 데이터 영문명이 번호를 의미하는 약어, 코드 중 적어도 하나를 포함하면, 상기 의사결정 트리 알고리즘을 통해 상기 제2 데이터를 번호 도메인으로 판별하는 것인, 도메인 판별 방법.
  8. 제 2 항에 있어서,
    상기 제 3 도메인으로 판별하는 단계는,
    상기 제 1 분류 기준이 데이터 타입이고, 상기 제 3 분류 기준이 날짜 여부인 경우, 상기 데이터 타입이 문자 또는 숫자 타입 중 어느 하나이고, 상기 날짜 여부가 참 값을 가지면, 상기 의사결정 트리 알고리즘을 통해 상기 제 3 데이터를 날짜 도메인으로 판별하는 것인, 도메인 판별 방법.
  9. 제 1 항에 있어서,
    상기 제 2 도메인으로 판별하는 단계는,
    상기 제 2 분류 기준이 데이터 타입이고, 상기 제 3 분류 기준이 200자 이상 여부인 경우, 상기 데이터 타입이 문자열 타입이고, 상기 200자 이상 여부가 참 값을 가지면, 상기 의사결정 트리 알고리즘을 통해 상기 제 2 데이터를 내용 도메인으로 판별하는 것인, 도메인 판별 방법.
  10. 제 1 항에 있어서,
    상기 제 2 도메인으로 판별하는 단계는,
    상기 제 1 분류 기준이 데이터 타입이고, 상기 제 2 분류 기준이 200자 이상 여부이고, 상기 제 3 분류 기준이 데이터 국문명인 경우, 상기 데이터 타입이 문자 타입 또는 문자열 타입이고, 제 200자 이상 여부가 거짓 값을 가지고, 상기 국문 명이 이름을 의미하는 형태소를 포함하면, 상기 의사결정 트리 알고리즘을 통해 상기 제 2 데이터를 명칭 도메인으로 판별하는 것인, 도메인 판별 방법.
  11. 제 1 항에 있어서,
    상기 제 2 도메인으로 판별하는 단계 이후에,
    상기 제 2 데이터의 도메인을 제 2 도메인으로 저장하는 단계를 더 포함하는 것인, 도메인 판별 방법.
  12. 데이터의 도메인을 판별하는 장치에 있어서,
    데이터 타입, 데이터 국문명, 데이터 영문명 및 소수점 여부를 포함하는 복수의 분류 기준 중 제 1 분류 기준 및 제 2 분류 기준에 기초하여 의사결정 트리 알고리즘을 통해 제 1 데이터의 도메인을 제 1 도메인으로 판별하는 도메인 판별부; 및
    상기 제 1 데이터의 도메인을 제 1 도메인으로 저장하는 데이터베이스를 포함하되,
    상기 도메인 판별부는 상기 데이터 타입, 상기 데이터 국문명 및 상기 데이터 영문명을 포함하는 복수의 분류 기준 중 상기 제 2 분류 기준 및 제 3 분류 기준과 상기 제1도메인을 포함하는 저장 결과에 기초하여 의사결정 트리 알고리즘을 통해 제 2 데이터의 도메인을 제 2 도메인으로 판별하되,
    상기 데이터 타입은 상기 데이터의 컬럼의 타입(Type)에 따라 숫자 타입, 문자 타입 및 문자열 타입 중 어느 하나로 분류하고,
    상기 데이터 국문명은 상기 데이터의 컬럼이 국문인 경우, 상기 컬럼을 형태소 단위로 분리하고, 상기 분리된 형태소 중 어느 하나를 선정하며,
    상기 데이터 영문명은 상기 데이터의 컬럼이 영문인 경우, 상기 컬럼 중 소정 기호를 기준으로 일정 부분을 선정하고,
    상기 소수점 여부는, 상기 데이터의 컬럼이 숫자인 경우, 소수점을 포함하고 있는지 여부를 나타내며,
    상기 제 2 도메인은, 저장된 상기 제 1 도메인을 더 고려하여 상기 의사결정 트리 알고리즘을 통해 판별되는 것인, 도메인 판별 장치.
KR1020170024634A 2017-02-24 2017-02-24 데이터의 도메인을 판별하는 장치 및 그 방법 KR101930034B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020170024634A KR101930034B1 (ko) 2017-02-24 2017-02-24 데이터의 도메인을 판별하는 장치 및 그 방법
PCT/KR2018/000580 WO2018155816A1 (ko) 2017-02-24 2018-01-12 데이터의 도메인을 판별하는 장치 및 그 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170024634A KR101930034B1 (ko) 2017-02-24 2017-02-24 데이터의 도메인을 판별하는 장치 및 그 방법

Publications (2)

Publication Number Publication Date
KR20180097892A KR20180097892A (ko) 2018-09-03
KR101930034B1 true KR101930034B1 (ko) 2019-03-14

Family

ID=63253899

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170024634A KR101930034B1 (ko) 2017-02-24 2017-02-24 데이터의 도메인을 판별하는 장치 및 그 방법

Country Status (2)

Country Link
KR (1) KR101930034B1 (ko)
WO (1) WO2018155816A1 (ko)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10915792B2 (en) * 2018-09-06 2021-02-09 Nec Corporation Domain adaptation for instance detection and segmentation
CN109815085B (zh) * 2018-12-29 2021-10-22 北京城市网邻信息技术有限公司 告警数据的分类方法、装置和电子设备及存储介质
CN110795335A (zh) * 2019-09-24 2020-02-14 北京首钢自动化信息技术有限公司 一种为参数设定的参数域校验方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009244950A (ja) * 2008-03-28 2009-10-22 Internatl Business Mach Corp <Ibm> 情報分類システム、情報処理装置、情報分類方法およびプログラム
JP2010039593A (ja) * 2008-08-01 2010-02-18 Mitsubishi Electric Corp テーブル分類装置、テーブル分類方法及びテーブル分類プログラム
US20150161743A1 (en) * 2013-12-06 2015-06-11 Mastercard International Incorporated System and method for automatically classifying transaction information

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4902863B2 (ja) * 2007-01-26 2012-03-21 三菱電機株式会社 テーブル分類装置
JP2009217499A (ja) * 2008-03-10 2009-09-24 Fuji Xerox Co Ltd 文書分類プログラム及び文書分類装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009244950A (ja) * 2008-03-28 2009-10-22 Internatl Business Mach Corp <Ibm> 情報分類システム、情報処理装置、情報分類方法およびプログラム
JP2010039593A (ja) * 2008-08-01 2010-02-18 Mitsubishi Electric Corp テーブル分類装置、テーブル分類方法及びテーブル分類プログラム
US20150161743A1 (en) * 2013-12-06 2015-06-11 Mastercard International Incorporated System and method for automatically classifying transaction information

Also Published As

Publication number Publication date
KR20180097892A (ko) 2018-09-03
WO2018155816A1 (ko) 2018-08-30

Similar Documents

Publication Publication Date Title
JP6301516B2 (ja) ファジーなデータ操作
KR101965598B1 (ko) 이상탐지시스템 내의 데이터에 대한 이상을 탐지하는 장치 및 그 방법
US20170091320A1 (en) Natural language processing for entity resolution
US20050097150A1 (en) Data aggregation
JP2004504646A (ja) 社会的ネットワークの生成方法
KR101930034B1 (ko) 데이터의 도메인을 판별하는 장치 및 그 방법
Chi et al. A new attribute-linked residential property price dataset for England and Wales, 2011–2019
US11500876B2 (en) Method for duplicate determination in a graph
Mutemaringa et al. Record linkage for routinely collected health data in an African health information exchange
CN112214609B (zh) 一种基于知识图谱的审计方法和系统
Potin et al. Foppa: A database of french open public procurement award notices
KR102110350B1 (ko) 비표준화 데이터베이스를 위한 도메인 판별 장치 및 방법
CA3231515A1 (en) Records matching techniques for facilitating database search and fragmented record detection
CA3231516A1 (en) Fragmented record detection based on records matching techniques
CA3231513A1 (en) Records matching techniques for facilitating database search and fragmented record detection
AU2017201787B2 (en) Fuzzy data operations
Veldman Matching profiles from social network sites: Similarity calculations with social network support
CN117077674A (zh) 一种准确率高的企业高效去重名方法
Potin et al. FOPPA
Rezaei Ghahroodi et al. Address matching using machine learning methods: An application to register-based census

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant