KR20120018009A - 표준화된 소스 적재 프로그램 생성 방법 및 그 시스템, 기록 매체, 및 상기 방법을 이용한 데이터 적재 방법 - Google Patents

표준화된 소스 적재 프로그램 생성 방법 및 그 시스템, 기록 매체, 및 상기 방법을 이용한 데이터 적재 방법 Download PDF

Info

Publication number
KR20120018009A
KR20120018009A KR1020100081051A KR20100081051A KR20120018009A KR 20120018009 A KR20120018009 A KR 20120018009A KR 1020100081051 A KR1020100081051 A KR 1020100081051A KR 20100081051 A KR20100081051 A KR 20100081051A KR 20120018009 A KR20120018009 A KR 20120018009A
Authority
KR
South Korea
Prior art keywords
data
loading
standardized
program
extracted
Prior art date
Application number
KR1020100081051A
Other languages
English (en)
Other versions
KR101120989B1 (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 KR1020100081051A priority Critical patent/KR101120989B1/ko
Publication of KR20120018009A publication Critical patent/KR20120018009A/ko
Application granted granted Critical
Publication of KR101120989B1 publication Critical patent/KR101120989B1/ko

Links

Images

Classifications

    • 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/25Integrating or interfacing systems involving database management systems
    • G06F16/254Extract, transform and load [ETL] procedures, e.g. ETL data flows in data warehouses

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Stored Programmes (AREA)

Abstract

본 발명에 따른 신규 소스 적재 프로그램 생성 방법은 원시 시스템에서 추출된 데이터에 대한 표준화된 매핑 정의서가 작성되는 단계; 및 처리 방식에 따라 표준화 작성되어 있는 프로토타입 템플릿에 상기 매핑 정의서가 이용되어 표준화된 소스 적재 프로그램이 생성되는 단계를 포함한다.

Description

표준화된 소스 적재 프로그램 생성 방법 및 그 시스템, 기록 매체, 및 상기 방법을 이용한 데이터 적재 방법{METHOD AND SYSTEM FOR GENERATING STANDARDIZED SOURCE ETL PROGRAM, RECORDING MEDIUM AND DATA-ETL-METHOD USING THE METHOD}
본 발명은 소스 적재 프로그램 생성 방법 및 그 시스템, 및 기록 매체에 관한 것으로, 보다 상세하게는 표준화된 소스 적재 프로그램 생성 방법 및 그 시스템, 및 기록 매체에 관한 것이다.
데이터웨어하우스(DW:DataWarehouse) 구축시 적재(ETL: Extraction, Transformation, Loading) 프로그램 과정은 전체 데이터웨어하우스 구축 과정에 70%~80%의 노력이 들어가는 노동집약적인 과정이다. 따라서, 데이터웨어하우스를 구축하는 경우 많은 인력이 투입된다.
기존의 적재 프로그램 방법은 그래픽 유저 인터페이스(GUI: Graphic User Interface) 화면상에서 마우스를 이용하여 적재에 필요한 다양한 기능의 컴포넌트를 드래그-드롭하여 프로그래밍하기 때문에 생산성이 현저히 떨어지는 문제점이 있다.
또한, 프로그래밍하는 방법에 있어서는 프로그래머의 개인 편차에 따라 표준화되지 않은 다양한 소스가 생성될 수 있어서 개발 완료 이후에 유지보수 비용이 많이 발생하는 문제점이 있다.
따라서, 본 발명이 해결하려는 과제는 보다 효율적인 생산성 및 경제성을 갖는 표준화된 소스 적재 프로그램 생성 방법 및 그 시스템, 및 이를 이용한 기록 매체를 제공하려는 것이다.
본 발명에 따른 신규 소스 적재 프로그램 생성 방법은 원시 시스템에서 추출된 데이터에 대한 표준화된 매핑 정의서가 작성되는 단계; 및 처리 방식에 따라 표준화 작성되어 있는 프로토타입 템플릿에 상기 매핑 정의서가 이용되어 표준화된 소스 적재 프로그램이 생성되는 단계를 포함할 수 있다.
또한, 상기 매핑 정의서가 작성되는 단계는 상기 매핑 정의서가 SQL문으로 작성되는 단계를 포함할 수 있다.
또한, 상기 처리 방식은 재사용 가능 클린징 방식, 데이터 품질 검증 방식, 오류 처리 방식 및 네이밍 방식 중 어느 하나를 포함할 수 있다.
또한, 상기 프로토타입 템플릿은 SQL문으로 표준화 작성될 수 있다.
또한, 상기 방법에 의해 생성된 신규 적재 프로그램을 이용하여 상기 원시 시스템에서 추출된 데이터를 데이터웨어하우스에 선택적으로 적재할 수 있다.
본 발명에 따른 적재 시스템은 데이터가 추출되는 원시 시스템; 상기 원시 시스템에서 추출된 데이터를 데이터웨어하우스에 적재하기 위한 표준화된 매핑 정의서 작성되고, 처리 방식에 따라 표준화된 프로토타입 템플릿에 상기 매핑 정의서가 이용되어 표준화된 소스 적재 프로그램이 생성되도록 프로그램화된 프로세서; 및 상기 소스 적재 프로그램을 이용하여 상기 원시 시스템에서 추출된 데이터를 선택적으로 적재하기 위한 데이터웨어하우스를 포함한다.
본 발명에 따른 표준화된 소스 적재 프로그램 생성 방법 및 그 시스템, 및 이를 이용한 기록 매체는 보다 효율적인 생산성 및 경제성을 갖도록 할 수 있다.
도 1은 본 발명에 따른 전체 시스템을 나타내는 도면이다.
도 2는 신규 소스 적재 프로그램의 SQL문을 나타내는 도면이다.
도 3a은 본 발명의 일 실시예에 따른 신규 소스 적재 프로그램 생성을 통한 데이터 적재 방법을 포함하는 전체 흐름도이다.
도 3b는 본 발명의 일 실시예에 따른 신규 소스 적재 프로그램 생성을 통한 데이터 적재 방법을 나타내는 흐름도이다.
도 4는 본 발명의 일 실시예에 따른 원천 시스템의 데이터베이스에서 추출된 데이터의 정보 및 데이터웨어하우스의 데이터베이스에 적재되는 매핑 정보를 나타내는 도면이다.
도 5는 본 발명의 일 실시예에 따른 데이터 적재를 위한 품질 검증을 위한 신규 소스 적재 프로그램의 검증 SQL문이 생성되는 예를 나타내는 도면이다.
도 6은 본 발명의 다른 실시예에 따른 데이터 적재를 위한 품질 검증을 위한 신규 소스 적재 프로그램의 검증 SQL문이 생성되는 예를 나타내는 도면이다.
본 명세서 또는 출원에 개시되어 있는 본 발명의 실시 예들에 대해서 특정한 구조적 내지 기능적 설명들은 단지 본 발명에 따른 실시 예를 설명하기 위한 목적으로 예시된 것으로, 본 발명에 따른 실시 예들은 다양한 형태로 실시될 수 있으며 본 명세서 또는 출원에 설명된 실시예들에 한정되는 것으로 해석되어서는 아니 된다.
본 발명에 따른 실시예는 다양한 변경을 가할 수 있고 여러가지 형태를 가질 수 있으므로 특정실시 예들을 도면에 예시하고 본 명세서 또는 출원에 상세하게 설명하고자 한다. 그러나, 이는 본 발명의 개념에 따른 실시 예를 특정한 개시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
제1 및/또는 제2 등의 용어는 다양한 구성 요소들을 설명하는데 사용될 수 있지만, 상기 구성 요소들은 상기용어들에 의해 한정되어서는 안된다. 상기 용어들은 하나의 구성 요소를 다른 구성 요소로부터 구별하는 목적으로만, 예컨대 본 발명의 개념에 따른 권리 범위로부터 이탈되지 않은 채, 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소는 제1 구성요소로도 명명될 수 있다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. 구성요소들 간의 관계를 설명하는 다른 표현들, 즉 "~사이에"와 "바로 ~사이에" 또는 "~에 이웃하는"과 "~에 직접 이웃하는" 등도 마찬가지로 해석되어야 한다.
본 명세서에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 설시된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가가능성을 미리 배제하지 는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 명세서에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
이하, 첨부한 도면을 참조하여 본 발명의 바람직한 실시 예를 설명함으로써, 본 발명을 상세히 설명한다. 각 도면에 제시된 동일한 참조부호는 동일한 부재를 나타낸다.
도 1은 본 발명에 따른 적재 시스템을 나타내는 도면이다. 도 1을 참고하면, 상기 적재 시스템(100)은 원시 시스템(110) 및 데이터웨어하우스(120)를 포함한다.
상기 원시시스템(110)의 데이터베이스(111)로부터 추출된 데이터(130)는 상기 데이터웨어하우스(120)로 전송되어 상기 데이터웨어하우스(120)의 데이터베이스(121)로 적재된다. 이때, 상기 추출된 데이터(130)는 변환 과정을 거친 후에 상기 데이터웨어하우스(120)로 전송될 수도 있다.
상기 원시시스템(110)의 데이터베이스(111)에는 로그 테이블이 포함될 수 있으며, 상기 데이터웨어하우스(120)의 데이터베이스(121)에는 임시 테이블, 보관 테이블 및 오류 테이블 등의 각종 테이블이 포함될 수 있다.
상기 임시 테이블은 데이터 적재 작업의 대상인 파일의 데이터를 적재하는 테이블이고, 보관 테이블은 상기 임시 테이블의 데이터 중에서 적재 작업이 수행되는 현재 날짜의 데이터를 다음 주기의 적재 작업을 위해 보관하는 테이블이며, 상기 오류 테이블은 상기 원시 시스템으로부터 추출되어 전송된 데이터의 오류 정보를 삽입/저장하는 테이블이다.
일반적인 적재 프로그램들은 상기 데이터웨어하우스(120)의 데이터베이스(121)에 상기 추출된 데이터(130)를 적재하는 경우, 매번 별도의 추가 절차를 통하여 소스(source)를 프로그래밍한 이후 적재를 한다. 따라서, 프로그래머에 따라 표준화되지 않은 다양한 소스들이 생성될 수 있어 오류가 발생할 경우 유지 보수 비용이 많이 들어갈 수 있다.
본 발명은 이러한 문제를 해결하기 위하여 적재 시스템(100)에서, 표준화된 샘플 프로토타입 프로그램 템플릿에 상기 추출된 데이터(130)에 대한 매핑 정의서 SQL문이 추가된 신규 소스 적재 프로그램을 자동 생성하도록 한다. 이에 대한 보다 구체적인 설명은 도 2에서 설명된다. 이때, 상기 SQL문은 매핑 정의서 메타 정보를 이용하여 생성된다.
상기 적재 시스템(100)의 프로세서(미도시)는 상기 신규 소스 적재 프로그램이 프로그램화되어, 상기 추출된 데이터(130)가 상기 데이터웨어하우스(120)의 데이터베이스(121)에 선택적으로 적재되도록 한다.
도 2는 신규 소스 적재 프로그램의 소스 스크립트를 나타내는 도면이다. 도 2를 참고하면, 상기 신규 소스 적재 프로그램의 소스 스크립트(200)는 표준화된 샘플 프로토타입 프로그램 템플릿(210) 및 상기 추출된 데이터(130)에 대한 매핑 정의서를 통해 생성된 SQL문(220)을 포함한다.
상기 표준화된 샘플 프로토타입 프로그램 템플릿(210)은 표준화된 고정 소스 템플릿에 해당하지만, 여러가지 처리 방식들에 따라 서로 다른 고정 소스 템플릿이 설정될 수 있다. 이때, 상기 여러가지 처리 방식들은 재사용 가능 클린징(cleansing) 방식, 데이터 품질 검증 방식, 오류 처리 방식 및 네이밍(naming) 방식 등을 포함한다.
상기 재사용 가능 클린징 방식은 가비지(gabage) 데이터가 입력되는 경우 이를 보정하는 방식이다. 보다 구체적으로, 성별 데이터(남:M(1), 여:W(0))를 예를 들면, 입력되는 데이터가 M(1) 또는 W(0)가 아니라 X(가비지)가 입력되는 경우에 상기 재사용 가능 클린징 방식을 이용하여 상기 X(가비지)를 M(1) 또는 W(0)으로 보정할 수 있도록 한다.
상기 데이터 품질 검증 방식은 입력되는 데이터의 품질을 검증하는 방식이다. 보다 구체적으로, 어떠한 신용카드에 관련한 정보(예컨대, 신용카드 번호, 신용카드 사용자 코드, 신용카드 유효기간 등)를 예를 들면, 이와 관련한 정보가 아닌 다른 정보가 입력되는 경우에 상기 데이터 품질 검증 방식을 이용하여 입력 정보가 유효한 정보인지를 검증할 수 있다.
상기 오류 처리 방식은 어떠한 원인으로 입력되는 데이터에 오류가 발생한 경우에 이를 해결하기 위한 일련의 방식이며, 상기 네이밍 방식은 업무의 네이밍을 정의하여 업무의 구별을 하기 위한 방식이다.
상기 재사용 가능 클린징(cleansing) 방식, 데이터 품질 검증 방식, 오류 처리 방식 및 네이밍(naming) 방식은 각각 서로 다른 고정 소스 템플릿이 설정된다.
도 3a는 본 발명의 일 실시예에 따른 신규 소스 적재 프로그램 생성을 통한 데이터 적재 방법을 포함하는 전체 흐름도이다. 도 3a의 신규 소스 적재 프로그램을 통한 데이터 적재 방법은 도 1의 적재 시스템(100)-예컨대, 적재 시스템(100) 내의 상기 데이터 적재 방법이 프로그램된 프로세서(미도시)-을 통해 수행될 수 있다.
도 3a를 참고하면, 원시 시스템(110)의 데이터베이스(111)로부터 데이터(130)가 추출된다(S10). 이때, 상기 추출된 데이터(130)는 변환 과정을 거친 후에 상기 데이터웨어하우스(120)로 전송될 수도 있다.
상기 표준화된 샘플 프로토타입 프로그램 템플릿(210)에 상기 추출된 데이터에 대한 매핑 정의서를 통해 생성된 SQL문을 이용하여 신규 소스 적재 프로그램을 생성한다(S20). 이때, 추출되는 데이터 각각에 따라 매핑 정의서와 일치하는 SQL문이 작성되며, 어떤 데이터가 추출되는지에 따라 상기 매핑정의서에 해당되는 SQL문이 작성되고, 이를 상기 샘플 프로토타입 프로그램 템플릿(210)에 적용하여 신규 소스 적재 프로그램을 생성할 수 있다.
상기 생성된 신규 소스 적재 프로그램을 통해서 상기 원시 시스템(110)의 데이터베이스(111)로부터 추출된 데이터(130)가 오류 데이터인지 여부를 판단한다(S30).
판단결과(S40), 상기 데이터(130)가 오류 데이터에 해당하면, 상기 데이터(130)를 수정하여(S60), 수정된 데이터가 오류 데이터인지 여부를 판단한다(S30).
판단결과(S40), 상기 데이터(130)가 오류 데이터에 해당하지 않는다면, 상기 추출된 데이터(130) 또는 수정된 데이터를 데이터웨어하우스(120)의 데이터베이스(121)에 적재한다(S50).
도 3b는 본 발명의 일 실시예에 따른 신규 소스 적재 프로그램 생성을 통한 데이터 적재 방법을 나타내는 흐름도이다. 도 3b를 참고하면, 원시 시스템에서 추출된 데이터에 대한 표준화된 매핑 정의서가 자동작성된다(S100).
다음으로, 처리 방식에 따라 표준화 작성되어 있는 프로토타입 템플릿에 상기 매핑 정의서가 삽입되어 표준화된 소스 적재 프로그램이 생성된다(S200).
이로써, 본 발명은 상기 표준화된 소스 적재 프로그램을 통해 데이터를 검증한 뒤, 적재할 수 있다.
도 4는 본 발명의 일 실시예에 따른 원천 시스템의 데이터베이스에서 추출된 데이터의 정보 및 데이터웨어하우스의 데이터베이스에 적재되는 정보를 나타내는 도면이다.
도 4를 참고하면, 원천 시스템의 데이터에 관한 영역(500) 및 데이터웨어하우스의 데이터에 관한 영역(400)이 도시된다. 이때, 도 4에 도시된 상기 원천 시스템의 데이터에 관한 영역(500) 및 데이터웨어하우스의 데이터에 관한 영역(400)은 A를 경유한 하나의 테이블로 표현될 수 있으나, 본 발명의 범위가 이에 한정되는 것은 아니다.
상기 원천 시스템의 데이터에 관한 영역(500)은 상기 추출되는 데이터에 관한 영역으로, 보다 구체적으로, 예컨대, 한글테이블명(515), 영문테이블명(516), 한글컬럼명(517), 영문컬럼명(518), 타입(519), 주키(520) 및 변환 로직(525)과 같은 정보를 포함한다.
상기 한글테이블명(515)에 관한 데이터는 상기 신규 소스 적재 프로그램에서 코멘트를 처리하는 경우에 사용되며, 상기 영문테이블명(516)은 상기 신규 소스 적재 프로그램을 자동 생성하는 경우 사용하게 될 SQL문의 테이블명에 해당한다.
상기 한글컬럼명(517)은 상기 신규 소스 적재 프로그램에서 코멘트를 처리하는 경우에 사용되며, 상기 영문컬럼명(518)은 상기 신규 소스 적재 프로그램을 자동 생성하는 경우 사용하게 될 SQL문의 컬럼명에 해당한다.
상기 타입(519)은 추출되는 데이터의 타입에 해당하고, 경우에 따라 적절히 특정 길이의 텍스트로 변환하는 경우에 사용된다.
상기 주키(520)는 데이터의 중복이 있는지 여부를 검증하기 위한 것으로, 예컨대, 주키(520)가 'y'인 경우에 데이터의 중복이 있는지 여부를 검증하고, 그 외에는 데이터의 중복이 있는지 여부를 검증하지 않을 수 있다.
상기 변환 로직(525)은 추출된 데이터가 데이터 변환 과정을 거치는 경우 이를 위한 것이다.
상기 데이터웨어하우스의 데이터에 관한 영역(400)은 추출된 데이터가 오류가 없는 경우에 이를 적재하고자 하는 영역으로, 보다 구체적으로, 예컨대, 사업 구분(411), 주기 구분(412), 컬럼 순서(413), 영역(414), 한글테이블명(415), 영문테이블명(416), 한글컬럼명(417), 영문컬럼명(418), 타입(419), 주키(420), 참조키(421), 참조테이블(422), 참조 컬럼(423), 디폴트로직(426), 인덱스타입(424) 및 변환 로직(425)과 같은 정보를 포함한다.
사업 구분(411)은 비즈니스 영역 구분에 관한 것으로 사업 구분시에 사용되며, 주기 구분(412)은 상기 신규 소스 적재 프로그램이 사용되는 주기(예컨대, 일별, 주별, 월별, 분기별, 년별 및/또는 수시 등)을 나타낸다.
상기 컬럼 순서(413)는 상기 신규 소스 적재 프로그램이 생성되는 경우 SQL문 내의 컬럼 순서에 해당하며, 일반적으로 위와 같은 물리적으로 생성된 테이블의 컬럼 순서와 동일할 수 있다.
상기 영역(414)은 상기 신규 소스 적재 프로그램의 소스가 위치한 영역을 나타내고, 상기 한글테이블명(415)은 상기 신규 소스 적재 프로그램에서 코멘트를 처리하는 경우에 사용되고, 상기 영문테이블명(416)은 상기 신규 소스 적재 프로그램을 자동 생성하는 경우 사용하게 될 SQL문의 테이블명에 해당한다.
상기 한글컬럼명(417)은 상기 신규 소스 적재 프로그램에서 코멘트를 처리하는 경우에 사용되며, 상기 영문컬럼명(418)은 상기 신규 소스 적재 프로그램을 자동 생성하는 경우 사용하게 될 SQL문의 컬럼명에 해당한다.
상기 타입(419)은 컬럼의 데이터 타입에 해당하고, 상기 신규 소스 적재 프로그램이 생성되는 경우에 사용될 수 있다.
상기 주키(420)는 데이터의 중복이 있는지 여부를 검증하기 위한 것으로, 예컨대, 주키(420)가 'y'인 경우에 데이터의 중복이 있는지 여부를 검증하고, 그 외에는 데이터의 중복이 있는지 여부를 검증하지 않을 수 있다.
상기 참조키(421)는 다른 테이블의 컬럼 값을 참조할지 여부를 확인하기 위한 것으로, 예컨대, 참조키(421)가 'y'인 경우에 다른 테이블의 컬럼 값을 참조하며, 그 외에는 다른 테이블의 컬럼 값을 참조하지 않을 수 있다.
상기 참조 테이블(422)은 상기 참조키(421)가 'y'인 경우에 참조되는 테이블의 명칭에 해당하며, 상기 참조 컬럼(423)은 상기 참조되는 테이블의 컬럼 명칭에 해당한다.
상기 디폴트 로직(426)은 신규 소스 적재 프로그램이 생성되는 경우에 디폴트로 생성되어야 하는 SQL 로직의 종류를 나타낸다.
상기 인덱스타입(424)은 신규 소스 적재 프로그램이 생성되는 경우에 각종 테이블(예컨대, 임시 테이블)에 대한 인덱스의 종류를 나타낸다.
상기 변환 로직(425)은 데이터웨어하우스에 데이터를 적재하는 경우 상기 데이터의 변환을 자동 프로그램하기 위한 변환 로직에 해당한다.
도 4와 같은 데이터에 관한 SQL문이 제작/작성될 수 있고, 상기 데이터에 관한 SQL문은 표준화된 샘플 프로토타입 프로그램 템플릿에 적용되어 신규 소스 적재 프로그램이 생성될 수 있다.
도 5는 본 발명의 일 실시예에 따른 데이터 적재를 위한 품질 검증을 위한 신규 소스 적재 프로그램의 검증 SQL문이 생성되는 예를 나타내는 도면이다.
영문컬럼명이 "-f"로 끝나는 경우 변환 로직의 따라 '1','0' 또는 'Y','N' 등의 값을 검증하여 그 외의 값이 적재되지 않도록 하는 검증 SQL문이 생성될 수 있다. 보다 구체적으로, 도 4의 한글컬럼명(417)의 컬럼5에서, 영문컬럼명이 "-f"로 끝나기 때문에 상기 검증 SQL문이 자동 생성될 수 있다. 또한, 영문컬럼명이 "-f"로 끝나지 않는 경우라도, 별도의 알고리즘을 통하여 “-f”로 끝나는 경우와 마찬가지로 취급하도록 하여 상기 검증 SQL문이 자동 생성되도록 할 수 있다.
도 5를 참고하면, 상기 검증 SQL문은 변환 로직에 따라 테이블 상의 특정 위치(예컨대, 10번째 행)가 'Y'인 경우 1로,'N'인 경우 0으로, 공백인 경우 0으로 변환하고, 그 외에는 -1로 변환하도록 하여, -1로 변환된 경우는 오류 데이터로 처리하도록 할 수 있다(530).
상기 오류 데이터로 처리된 데이터는 도 3a에서 설명된 바와 같이 수정이 필요하기 때문에 도 5와 같은 SQL문(540)을 통해 오류 테이블에 저장하도록 할 수 있다.
도 6은 본 발명의 다른 실시예에 따른 데이터 적재를 위한 품질 검증을 위한 신규 소스 적재 프로그램의 검증 SQL문이 생성되는 예를 나타내는 도면이다.
도 6은 주키가 'y'인 경우 데이터의 중복 검사를 하는 SQL문을 통해 데이터 중복 검사를 하여 데이터 적재를 위한 품질을 검증한다. 도 6과 같이 중복되는 데이터의 최종 자료를 임시테이블(tmp)에 저장하도록 SQL문이 구성될 수도 있고(610), 중복되는 데이터의 최종 자료 한 건만 남겨두고 그 외에는 모두 에러로 저장하도록 SQL문이 구성될 수도 있으며(620), 중복되는 데이터의 최종 자료 한 건만 남겨두고 나머지는 삭제하도록 SQL문이 구성될 수도 있다(630).
도 7은 도 1에 도시된 적재 시스템의 일 실시예 및 그 기능을 설명하기 위한 도면이다. 도 7에는 상기 적재 시스템(100)의 일 실시예로서 eS-VTL Manager(100')를 도시하고 있으며, 상기 eS-VTL Manager(100')의 기능을 설명하고 있다.
도 7을 참고하면, 상기 eS-VTL Manager(100')는 도 7에 설명된 바와 같이 원시 시스템에서 추출된 데이터를 데이터웨어하우스로 선택적으로 적재하는 기능과 기타 다른 기능도 수행할 수 있다.
상기 eS-VTL Manager(100')는 적재 영역에 타겟 적재 SQL 스크립트 및 배치 로드 SQL 스크립트를 자동 생성할 수 있고, 집계 영역에 집계 SQL 스크립트를 자동 생성할 수 있다.
상기 eS-VTL Manager(100')는 적재 영역에서 매핑 정의서 엑셀 문서, 타겟 적재 SQL 문서 및 배치 로드 SQL 문서를 관리할 수 있고, 집계 영역에서 집계에 대한 상세 설계 엑셀 문서 및 집계 SQL 문서를 관리할 수 있다.
상기 eS-VTL Manager(100')는 원천 데이터 및 타겟 데이터가 변경되는 경우 그에 따른 영향도를 분석할 수 있으며, 적재/집계에 대한 매핑 정의서를 관리할 수 있다.
상기 eS-VTL Manager(100')는 스크립트 실행자(Script Executor)를 관리하여 운용 데이터 베이스 이관 요청하여 스크립트 이관 승인을 얻어 운용 데이터 베이스 스크립트를 생성할 수 있다.
상기 eS-VTL Manager(100')는 사용자별 적재/집계 스크립트를 생성, 수정, 읽기, 실행 등에 대한 권한을 관리할 수 있다.
상기 eS-VTL Manager(100')는 기초 코드-예컨대, 샘파일 정보, 테이블 정보, 적재/집계 프로시져 정보, 프로시져 테이블 매핑 정보 및 샘파일 테이블 매핑 정보 등-를 관리할 수 있다.
상기 eS-VTL Manager(100')는 적재/집계 로그를 조회하거나, 샘파일 수신에 대해 조회할 수 있고, 적재/집계 현황 보고서, 적재현황 상세 보고서, 데이터 미수신 현황 상세 보고서 및 일자별 데이터 수신 건수 등에 대해 관리할 수 있다.
상기 eS-VTL Manager(100')는 작업 로그를 분석하여 원천 데이터 및 타겟 데이터 품질을 관리할 수 있다.
본 발명은 또한 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다.
컴퓨터가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광 데이터 저장장치 등이 있으며, 또한 본 발명에 따른 객체 정보 추정 방법을 수행하기 위한 프로그램 코드는 캐리어 웨이브(예를 들어, 인터넷을 통한 전송)의 형태로 전송될 수도 있다.
또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다. 그리고 본 발명을 구현하기 위한 기능적인(functional) 프로그램, 코드 및 코드 세그먼트들은 본 발명이 속하는 기술분야의 프로그래머들에 의해 용이하게 추론될 수 있다.
이상에서와 같이 도면과 명세서에서 최적 실시예가 개시되었다. 여기서 특정한 용어들이 사용되었으나, 이는 단지 본 발명을 설명하기 위한 목적에서 사용된 것이지 의미 한정이나 특허청구범위에 기재된 본 발명의 범위를 제한하기 위하여 사용된 것은 아니다. 그러므로 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 특허청구범위의 기술적 사상에 의해 정해져야 할 것이다.
100: 적재 시스템
110: 원시 시스템
111: 원시시스템의 데이터베이스
120: 데이터웨어하우스
121: 데이터웨어하우스의 데이터베이스
130: 추출 데이터

Claims (10)

  1. 원시 시스템에서 추출된 데이터에 대한 표준화된 매핑 정의서가 작성되는 단계; 및
    처리 방식에 따라 표준화 작성되어 있는 프로토타입 템플릿에 상기 매핑 정의서가 이용되어 표준화된 소스 적재 프로그램이 생성되는 단계를 포함하는 신규 소스 적재 프로그램 생성 방법.
  2. 제1항에 있어서, 상기 매핑 정의서가 작성되는 단계는
    상기 매핑 정의서가 SQL문으로 작성되는 단계를 포함하는 신규 소스 적재 프로그램 생성 방법.
  3. 제1항에 있어서,
    상기 처리 방식은 재사용 가능 클린징 방식, 데이터 품질 검증 방식, 오류 처리 방식 및 네이밍 방식 중 어느 하나를 포함하는 신규 소스 적재 프로그램 생성 방법.
  4. 제1항에 있어서,
    상기 프로토타입 템플릿은 SQL문으로 표준화 작성되어 있는 신규 소스 적재 프로그램 생성 방법.
  5. 제1항 내지 제4항 중 어느 한 항에 기재된 방법에 의해 생성된 신규 적재 프로그램을 이용하여 상기 원시 시스템에서 추출된 데이터를 데이터웨어하우스에 선택적으로 적재하는 데이터 적재 방법.
  6. 제1항 내지 제4항 중 어느 한 항에 기재된 방법을 실행하기 위한 컴퓨터 프로그램을 기록한 기록매체.
  7. 데이터가 추출되는 원시 시스템;
    상기 원시 시스템에서 추출된 데이터에 대한 표준화된 매핑 정의서가 작성되고, 처리 방식에 따라 표준화 작성된 프로토타입 템플릿에 상기 매핑 정의서가 이용되어 표준화된 소스 적재 프로그램이 생성되도록 프로그램화된 프로세서; 및
    상기 소스 적재 프로그램을 이용하여 상기 원시 시스템에서 추출된 데이터를 선택적으로 적재하기 위한 데이터 웨어 하우스를 포함하는 적재 시스템.
  8. 제7항에 있어서,
    상기 매핑 정의서는 SQL문으로 작성되는 적재 시스템.
  9. 제7항에 있어서,
    상기 처리 방식은 재사용 가능 클린징 방식, 데이터 품질 검증 방식, 오류 처리 방식 및 네이밍 방식 중 어느 하나를 포함하는 적재 시스템.
  10. 제7항에 있어서,
    상기 프로토타입 템플릿은 SQL문으로 표준화 작성된 적재 시스템.
KR1020100081051A 2010-08-20 2010-08-20 표준화된 소스 적재 프로그램 생성 방법 및 그 시스템, 기록 매체, 및 상기 방법을 이용한 데이터 적재 방법 KR101120989B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020100081051A KR101120989B1 (ko) 2010-08-20 2010-08-20 표준화된 소스 적재 프로그램 생성 방법 및 그 시스템, 기록 매체, 및 상기 방법을 이용한 데이터 적재 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020100081051A KR101120989B1 (ko) 2010-08-20 2010-08-20 표준화된 소스 적재 프로그램 생성 방법 및 그 시스템, 기록 매체, 및 상기 방법을 이용한 데이터 적재 방법

Publications (2)

Publication Number Publication Date
KR20120018009A true KR20120018009A (ko) 2012-02-29
KR101120989B1 KR101120989B1 (ko) 2012-03-05

Family

ID=45839819

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020100081051A KR101120989B1 (ko) 2010-08-20 2010-08-20 표준화된 소스 적재 프로그램 생성 방법 및 그 시스템, 기록 매체, 및 상기 방법을 이용한 데이터 적재 방법

Country Status (1)

Country Link
KR (1) KR101120989B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220101787A (ko) 2021-01-12 2022-07-19 주식회사 온코소프트 Etl 장치 및 그것의 제어방법

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101564639B1 (ko) 2013-05-03 2015-10-30 주식회사 엘지유플러스 데이터 처리 방법 및 장치
KR102464116B1 (ko) * 2022-03-18 2022-11-07 에쓰오씨소프트 주식회사 메타데이터에 기반하여 공공기관 빅데이터를 동적으로 수집하는 방법 및 장치

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220101787A (ko) 2021-01-12 2022-07-19 주식회사 온코소프트 Etl 장치 및 그것의 제어방법

Also Published As

Publication number Publication date
KR101120989B1 (ko) 2012-03-05

Similar Documents

Publication Publication Date Title
US9928283B2 (en) Tracing data through a transformation process using tracer codes
Mendling et al. Faulty EPCs in the SAP reference model
US20100211539A1 (en) System and method for building a data warehouse
US20130117232A1 (en) Snapshots of database models
US20150154097A1 (en) System and method for automated testing
Hermans et al. Bumblebee: a refactoring environment for spreadsheet formulas
CN104657274A (zh) 软件界面测试方法及装置
US9652478B2 (en) Method and apparatus for generating an electronic document schema from a relational model
KR101120989B1 (ko) 표준화된 소스 적재 프로그램 생성 방법 및 그 시스템, 기록 매체, 및 상기 방법을 이용한 데이터 적재 방법
JP4477531B2 (ja) データインポート方法およびデータインポート装置
US20130006683A1 (en) System and method of managing testing for a healthcare systems transition
US8069151B1 (en) System and method for detecting incongruous or incorrect media in a data recovery process
CN110633084B (zh) 基于单个样例的代码转换推导方法和装置
US10782942B1 (en) Rapid onboarding of data from diverse data sources into standardized objects with parser and unit test generation
JP6058498B2 (ja) コンパイル方法、プログラム及びコンパイル装置
US20230044288A1 (en) Computer implemented system and method of enrichment of data for digital product definition in a heterogenous environment
JP6588988B2 (ja) 業務プログラム生成支援システムおよび業務プログラム生成支援方法
JP6336922B2 (ja) 業務バリエーションに基づく業務影響箇所抽出方法および業務影響箇所抽出装置
KR101202189B1 (ko) 표준화된 소스 적재 프로그램을 이용한 데이터 품질 검증 방법 및 기록매체
CN115033280A (zh) 一种基于知识图谱的需求规格文档自动化生成方法及存储介质
Schlie et al. Reengineering variants of matlab/simulink software systems
CN114186233A (zh) 代码的反混淆方法、装置、电子设备及存储介质
Zahari et al. Data quality issues in data migration
US9003358B2 (en) Method of taking a computer architecture respresentation and generating manufacturing methods capable of manufacturing a computer systems contained in a specification
EP4081911A1 (en) Edge table representation of processes

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20150205

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20160216

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20180206

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20200206

Year of fee payment: 9