KR101737575B1 - Method and device for verifying data based on sql sentences generated automatically - Google Patents
Method and device for verifying data based on sql sentences generated automatically Download PDFInfo
- Publication number
- KR101737575B1 KR101737575B1 KR1020150185130A KR20150185130A KR101737575B1 KR 101737575 B1 KR101737575 B1 KR 101737575B1 KR 1020150185130 A KR1020150185130 A KR 1020150185130A KR 20150185130 A KR20150185130 A KR 20150185130A KR 101737575 B1 KR101737575 B1 KR 101737575B1
- Authority
- KR
- South Korea
- Prior art keywords
- data
- server
- identification information
- location identification
- target
- Prior art date
- Legal status (The legal status 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 status listed.)
- Active
Links
Images
Classifications
-
- G06F17/30289—
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/008—Reliability or availability analysis
-
- G06F17/271—
-
- G06F17/303—
-
- G06F17/30371—
Landscapes
- Engineering & Computer Science (AREA)
- Quality & Reliability (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
본 발명의 일 실시예에 따르는 자동 생성된 SQL(Structured Query Language) 구문 기반의 데이터 검증방법은 (a) 원천 서버에 저장된 데이터에 대한 원천위치 식별정보와 상기 데이터가 타겟 서버에 저장될 위치에 대한 타겟위치 식별정보를 추출하는 단계; (b) 상기 데이터를 타겟 서버로 이관시키기 위한 구문을 포함하는 이관로직에 상기 원천위치 식별정보와 타겟위치 식별정보를 적용하여 매핑로직을 생성하는 단계; 및 (c) 상기 원천 서버의 데이터가 상기 타겟 서버로 이관된 후, 상기 매핑로직을 참조하여 이관 전의 데이터와 이관 후의 데이터를 비교함으로써 상기 이관된 데이터를 검증하는 단계를 포함한다.An automatically generated SQL (Structured Query Language) syntax-based data validation method according to an embodiment of the present invention includes: (a) source location identification information for data stored in a source server; Extracting target location identification information; (b) applying the source location identification information and the target location identification information to a migration logic including a syntax for transferring the data to a target server to generate mapping logic; And (c) verifying the diverted data by comparing the pre-diverted data with the post-diverted data with reference to the mapping logic after the data of the source server is transferred to the target server.
Description
본 발명은 자동 생성된 SQL 구문 기반의 데이터 검증 방법 및 장치에 관한 것으로서, 보다 상세하게는, 데이터 검증 작업에 있어서의 효율성 증대와 인건비 절감을 도모하기 위한 자동 생성된 SQL 구문 기반의 데이터 검증 방법 및 장치에 관한 것이다.The present invention relates to a method and an apparatus for verifying data based on automatically generated SQL statements, and more particularly, to a method and apparatus for verifying data based on automatically generated SQL statements for increasing efficiency and reducing labor costs in data verification work, ≪ / RTI >
인터넷 기술의 발달로 인해 각 기업의 모든 업무 시스템들은 서버를 이용하여 구축되고 있다. 이러한 서버는 지속적인 업데이트와 관리가 필요한데, 그에 따라 원천 서버에서 새로운 타겟 서버로의 데이터 이관 작업이 요구된다. Due to the development of Internet technology, all business systems of each company are being built using servers. These servers need to be constantly updated and managed, which requires data migration from the origin server to the new target server.
이러한 데이터 이관 작업시, 원천 서버에 저장된 데이터의 테이블 값 및 컬럼(column) 값을 타겟 서버에 저장된 테이블 값 및 컬럼 값으로 전환시키기 위한 매핑로직 작성이 필요한데, 종래기술의 경우, 매핑로직을 개발자가 직접 SQL(Structured Query Language) 구문으로 작성하고 매핑로직 변경 이력을 수작업으로 관리하도록 구성되어 왔다. 그에 따라, SQL 작성시 시간적 낭비가 심하며, 개발자 별 매핑로직 변경이력을 수기 관리하게 되어 전체적인 이력관리가 불가능하게 되고 변경이력이나 데이터의 유실 문제도 발생하게 되어 많은 문제를 일으키고 있는 실정이다. In this case, it is necessary to create a mapping logic for converting the table value and the column value of the data stored in the source server into the table value and the column value stored in the target server. In the conventional technology, It has been configured to write directly in Structured Query Language (SQL) syntax and manually manage the history of mapping logic changes. As a result, time is wasted when writing SQL, and the history of mapping logic changes for each developer is handled by the developer, making it impossible to manage the entire history and causing problems such as change history and data loss.
또한, 타겟 서버로 전환된 데이터에 대해서, 원천 서버로부터 온전히 이행되었는지 검증하는 작업 수행이 요구된다. 이때, 종래기술의 경우, 기술검증 프로그램을 개발자가 직접 작성하고 데이터 이관이 완료된 시점에 별도의 시간을 배정하여 직접 검증 프로그램을 수행하고 수작업으로 집계하여 보고하는 방식으로 전환데이터 검증이 이루어진다. 이러한 경우, 개발자가 작성한 프로그램에 대한 의존도가 높아 지게 되므로, 개발자의 고객사 입장에서 데이터 전환 검증이 온전히 이루어진 것인지 판단할 수 없게 되는 문제점이 발생되고 있다.In addition, it is required to perform an operation to verify whether the data converted to the target server is fully implemented from the origin server. At this time, in the case of the related art, conversion data verification is performed in such a manner that a developer directly prepares a technical verification program, assigns a separate time at the completion of the data transfer, directly performs a verification program, and manually reports and compiles it. In this case, since the dependency on the program created by the developer becomes high, there arises a problem that the developer can not judge whether or not the data conversion verification is completed in the viewpoint of the customer.
본 발명은, 전술한 종래 기술의 문제점을 해결하기 위한 것으로서, 데이터 이관을 위한 SQL 구문을 자동으로 생성하고, 이를 기반으로 검증 대상이 되는 데이터를 자동 추출 및 비교하는 방식으로 검증과정을 자동화하기 위한 데이터 검증방법 및 데이터 검증장치를 제공하는 데에 목적이 있다. SUMMARY OF THE INVENTION The present invention has been made to solve the above problems of the related art, and it is an object of the present invention to automatically generate an SQL statement for data transfer and automatically extract and compare data to be verified on the basis thereof, A data verification method and a data verification apparatus are provided.
상술한 기술적 과제를 달성하기 위한 기술적 수단으로서, 본 발명의 일 실시예에 따르는 자동 생성된 SQL(Structured Query Language) 구문 기반의 데이터 검증방법은 (a) 원천 서버에 저장된 데이터에 대한 원천위치 식별정보와 상기 데이터가 타겟 서버에 저장될 위치에 대한 타겟위치 식별정보를 추출하는 단계; (b) 상기 데이터를 타겟 서버로 이관시키기 위한 구문을 포함하는 이관로직에 상기 원천위치 식별정보와 타겟위치 식별정보를 적용하여 매핑로직을 생성하는 단계; 및 (c) 상기 원천 서버의 데이터가 상기 타겟 서버로 이관된 후, 상기 매핑로직을 참조하여 이관 전의 데이터와 이관 후의 데이터를 비교함으로써 상기 이관된 데이터를 검증하는 단계를 포함한다.According to an aspect of the present invention, there is provided a method for validating an automatically generated Structured Query Language (SQL) syntax based on at least one of (a) source location identification information And extracting target location identification information for a location where the data is to be stored in a target server; (b) applying the source location identification information and the target location identification information to a migration logic including a syntax for transferring the data to a target server to generate mapping logic; And (c) verifying the diverted data by comparing the pre-diverted data with the post-diverted data with reference to the mapping logic after the data of the source server is transferred to the target server.
또한, 본 발명의 다른 실시예에 따르는, 자동 생성된 SQL(Structured Query Language) 구문 기반의 데이터 검증장치는, 자동 생성된 SQL 구문 기반의 데이터 검증방법을 수행하기 위한 프로그램이 저장된 메모리; 및 상기 메모리에 저장된 프로그램을 실행하기 위한 프로세서;를 포함하며, 상기 프로세서는, 상기 프로그램의 실행에 따라, 원천 서버에 저장된 데이터에 대한 원천위치 식별정보와 상기 데이터가 타겟 서버에 저장될 위치에 대한 타겟위치 식별정보를 추출하고, 상기 데이터를 상기 타겟 서버로 이관시키기 위한 구문을 포함하는 이관로직에 상기 원천위치 식별정보와 타겟위치 식별정보를 적용하여 매핑로직을 생성하며, 상기 원천 서버의 데이터가 상기 타겟 서버로 이관된 후, 상기 매핑로직을 참조하여 이관 전의 데이터와 이관 후의 데이터를 비교함으로써 상기 이관된 데이터를 검증한다.According to another aspect of the present invention, an automatically generated SQL (Structured Query Language) syntax-based data verification apparatus includes a memory for storing a program for performing a data verification method based on an automatically generated SQL statement; And a processor for executing a program stored in the memory, wherein, in accordance with the execution of the program, the processor is further configured to determine, based on the source location information for the data stored in the source server and the location Generating mapping logic by applying the source location identification information and the target location identification information to a migration logic including a syntax for extracting target location identification information and transferring the data to the target server, After the transfer to the target server, the transfer data is verified by comparing the pre-transfer data with the post-transfer data by referring to the mapping logic.
본 발명은 원천 서버로부터 타겟 서버로 이관된 데이터를 검증함에 있어 필요한 SQL 구문 생성 및 검증 정보 입력 작업들을 자동화시킴으로써, 작업자의 수작업에 의한 문제점들을 개선할 수 있어 효율성을 증대시킬 수 있으며, 인건비 절감을 통한 비용절감을 달성할 수 있다. 또한, 통상적으로 기업 서버의 데이터 이관은 소비자들에 대한 영향을 줄이기 위해 휴일이나 주말에 이루어지는 데, 방대한 양의 데이터를 이관하고 검증하기에는 부족한 시간이다. 이때, 검증할 수 있는 유휴저장공간의 존재여부를 확인하고, 개개의 데이터 마다 이관이 완료될 때마다 곧바로 검증을 수행함으로써, (즉, 이관과 검증을 병렬적으로 수행함으로써) 데이터 이관 및 검증에 소요되는 전체 시간을 획기적으로 단축할 수 있다. The present invention automates SQL statement generation and verification information input operations necessary for verifying data transferred from a source server to a target server, thereby improving problems caused by manual work by an operator, thereby increasing efficiency and reducing labor costs. Cost savings can be achieved. In addition, data transfer of corporate servers is usually done on holidays or weekends to reduce the impact on consumers, but it is not enough time to transfer and verify large amounts of data. At this time, it is possible to check whether there is an idle storage space that can be verified, and perform verification immediately upon completion of the transfer for each individual data (i.e., by performing escalation and verification in parallel) The total time required can be shortened remarkably.
도 1은 본 발명의 일 실시예에 따르는 시스템의 구조도이다.
도 2는 본 발명의 일 실시예에 따르는 자동 생성된 SQL 구문 기반의 데이터 검증장치의 구성요소에 대한 블록도이다.
도 3는 본 발명의 일 실시예에 따르는 자동 생성된 SQL 구문 기반의 데이터 검증방법을 설명하기 위한 순서도이다.
도 4는 도 3의 검증 과정(S140)을 구체적으로 설명하기 위한 순서도이다.1 is a structural diagram of a system according to an embodiment of the present invention.
FIG. 2 is a block diagram of the components of an automatically generated SQL statement-based data verification apparatus according to an embodiment of the present invention.
FIG. 3 is a flow chart for explaining a method of verifying data based on an automatically generated SQL statement according to an embodiment of the present invention.
FIG. 4 is a flowchart for explaining the verification process (S140) of FIG. 3 in detail.
아래에서는 첨부한 도면을 참조하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 본 발명의 실시예를 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings, which will be readily apparent to those skilled in the art. The present invention may, however, be embodied in many different forms and should not be construed as limited to the embodiments set forth herein. In order to clearly illustrate the present invention, parts not related to the description are omitted, and similar parts are denoted by like reference characters throughout the specification.
명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "전기적으로 연결"되어 있는 경우도 포함한다. 또한 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.Throughout the specification, when a part is referred to as being "connected" to another part, it includes not only "directly connected" but also "electrically connected" with another part in between . Also, when an element is referred to as "comprising ", it means that it can include other elements as well, without departing from the other elements unless specifically stated otherwise.
본 명세서에 있어서 '부(部)'란, 하드웨어에 의해 실현되는 유닛(unit), 소프트웨어에 의해 실현되는 유닛, 양방을 이용하여 실현되는 유닛을 포함한다. 또한, 1 개의 유닛이 2 개 이상의 하드웨어를 이용하여 실현되어도 되고, 2 개 이상의 유닛이 1 개의 하드웨어에 의해 실현되어도 된다. 한편, '~부'는 소프트웨어 또는 하드웨어에 한정되는 의미는 아니며, '~부'는 어드레싱 할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 재생시키도록 구성될 수도 있다. 따라서, 일 예로서 '~부'는 소프트웨어 구성요소들, 객체지향 소프트웨어 구성요소들, 클래스 구성요소들 및 태스크 구성요소들과 같은 구성요소들과, 프로세스들, 함수들, 속성들, 프로시저들, 서브루틴들, 프로그램 코드의 세그먼트들, 드라이버들, 펌웨어, 마이크로코드, 회로, 데이터, 데이터베이스, 데이터 구조들, 테이블들, 어레이들 및 변수들을 포함한다. 구성요소들과 '~부'들 안에서 제공되는 기능은 더 작은 수의 구성요소들 및 '~부'들로 결합되거나 추가적인 구성요소들과 '~부'들로 더 분리될 수 있다. 뿐만 아니라, 구성요소들 및 '~부'들은 디바이스 또는 보안 멀티미디어카드 내의 하나 또는 그 이상의 CPU들을 재생시키도록 구현될 수도 있다.In this specification, the term " part " includes a unit realized by hardware, a unit realized by software, and a unit realized by using both. Further, one unit may be implemented using two or more hardware, or two or more units may be implemented by one hardware. On the other hand, 'to' is not limited to software or hardware, 'to' may be configured to be an addressable storage medium, and may be configured to play one or more processors. Thus, by way of example, 'parts' may refer to components such as software components, object-oriented software components, class components and task components, and processes, functions, , Subroutines, segments of program code, drivers, firmware, microcode, circuitry, data, databases, data structures, tables, arrays, and variables. The functions provided in the components and components may be further combined with a smaller number of components and components or further components and components. In addition, the components and components may be implemented to play back one or more CPUs in a device or a secure multimedia card.
이하, 도 1을 참조하여, 본 발명의 일 실시예에 따르는 시스템에 대하여 구체적으로 설명한다. Hereinafter, a system according to an embodiment of the present invention will be described in detail with reference to FIG.
위 시스템은 원천 서버(100), 타겟 서버(200)를 포함한다. The above system includes a
원천 서버(100)는 데이터를 저장하는 서버이다. 예를 들어, 데이터는 신용카드 회사에서 관리하는 카드사용정보, 카드사용자정보 등에 관한 정보일 수 있으며, 그 외의 다양한 정보에 관한 것일 수 있다. 서버에 저장된 데이터는 각각의 데이터마다 위치 식별정보를 포함한다. 구체적으로, 데이터는 엑셀 등과 같은 테이블 내에 기재된 정보일 수 있으며, 이때, 데이터의 위치 식별정보는 테이블의 명칭, 테이블 내에 해당 데이터가 기재된 컬럼값이 될 수 있다. The
원천 서버(100)에 저장된 데이터는 타겟 서버(200)로 이관될 수 있다. 이때, 원천 서버(100)에서 추출할 데이터의 위치와 타겟 서버(200)에 데이터를 적재할 위치에 대한 위치 식별정보는 서로 매칭되고, 매칭이 완료된 후 데이터가 이관될 수 있다.The data stored in the
이때, 이관할 데이터의 위치를 매칭시키고 이관을 수행한 후 이관된 데이터를 검증하는 작업을 제 3 서버(300a)가 수행할 수 있다. 제 3 서버(300a)는 원천 서버(100)와 타겟 서버(200)와 물리적으로 독립되어 구성되는 장치이다. 한편, 검증작업은 타겟 서버(200)에 포함된 프로세서(300b)가 수행할 수도 있다. 즉, 검증 작업을 수행하기 위한 프로그램이 제 3 서버(300a)의 메모리에 저장되거나, 타겟 서버(200)의 메모리에 저장되는지 여부에 따라 작업 수행주체가 달라질 수도 있다.At this time, the
이하에서, 데이터 검증 작업을 수행하는 주체가 되는 서버를 편의상 "데이터 검증장치(300)"라 호칭하기로 한다. Hereinafter, a server that is the subject of performing the data verification operation will be referred to as "
한편, 데이터 검증장치(300)에 저장된 정보나 데이터 검증장치(300)가 수행하는 작업에 대한 정보는 데이터 검증장치(300)와 연결된 클라이언트 단말(또는 "사용자 단말")을 통해 사용자에게 제공될 수도 있다. 클라이언트 단말은 데이터 검증장치(300)와 유/무선으로 연결된 통신 단말을 의미하며, 컴퓨터, 스마트폰, 혹은 디스플레이 장치 등으로 구성될 수 있다. Information stored in the
이하, 도 2를 참고하여, 본 발명의 일 실시예에 따르는 자동 생성된 SQL 구문 기반의 데이터 검증장치(300)의 구성과 동작에 대해서 구체적으로 설명하도록 한다. Hereinafter, with reference to FIG. 2, the construction and operation of an automatically generated SQL statement-based
데이터 검증장치(300)는 자동 생성된 SQL 구문 기반의 데이터 검증방법을 수행하기 위한 프로그램(또는 애플리케이션)이 저장된 메모리와 위 프로그램을 실행하는 프로세서를 포함하여 구성될 수 있다. 여기서 프로세서는 메모리에 저장된 프로그램의 실행에 따라 다양한 기능을 수행할 수 있는데, 각 기능에 따라 프로세서에 포함되는 세부 모듈들을 데이터위치 식별정보 추출부(310), SQL 구문 자동 생성부(320), SQL 구문 변경이력 기록부(330), 이관 데이터 검증부(340), 유휴저장공간 확인부(350), 검증결과 관리 및 제공부(360)로 나타낼 수 있다. The
데이터위치 식별정보 추출부(310)는 원천 서버(100)에 저장된 데이터에 대한 원천위치 식별정보와 데이터가 타겟 서버(200)에 저장될 위치에 대한 타겟위치 식별정보를 추출한다. 원천위치 식별정보는 원천 서버(100) 내에 데이터가 저장된 테이블의 명칭 및 테이블 내에서 데이터가 기록되어 있는 컬럼값을 포함한다. 타겟위치 식별정보는 데이터를 타겟 서버(200)로 이관시킨 후 저장시킬 테이블의 명칭 및 테이블 내의 컬럼값을 포함한다. The data location identification
SQL 구문 자동 생성부(320)는 데이터를 타겟 서버(200)로 이관시키기 위한 구문을 포함하는 이관로직에 원천위치 식별정보와 타겟위치 식별정보를 적용하여 매핑로직을 생성한다. The automatic SQL
구체적으로, SQL 구문 자동 생성부(320)는 데이터 검증장치(300) 내에 저장된 이관로직을 자동 분석하여 추출 SQL 구문과 적재 SQL 구문을 자동으로 파싱한다. 이관로직이란 데이터 추출과 적재를 위한 문법에 맞춘 기본적인 SQL 구문만 포함된 상태의 로직을 의미하며, 이관로직은 엑셀(.exl)이나 텍스트문서(.txt) 등의 형식의 데이터일 수 있다. 이관로직에 포함된 추출 SQL 구문은 select 절, from 절, where 절을 포함한다. from 절은 추출할 데이터에 대한 테이블의 명칭이 기재되는 구문이며, select 절은 테이블의 컬럼값이 기재되는 구문이며, where 절은 이관 조건에 관한 내용이 기재되는 조건문이다. 예를 들어, 조건문에는 원천 서버(100)에 저장된 데이터의 개수와 타겟 서버(200)로 적재할 데이터의 개수에 대한 매핑관계에 대한 조건이 기재될 수 있다. 즉, 1:1 이관인 경우, 원천 서버(100)에 저장된 1개의 데이터가 타겟 서버(200) 내에 1개만 적재되기 위한 조건이 기재될 수 있다. 복합 이관인 경우, 원천 서버(100)에 저장된 데이터의 개수와 타겟 서버(200)에 저장될 데이터의 개수와의 관계가 1:N, N:1이 되기 위한 조건이 기재되거나 타겟 서버(200) 내에 새로운 저장위치를 신설하여 데이터를 저장하도록 하는 조건이 기재될 수도 있다. 적재 SQL 구문은 insert 절과 load 절을 포함할 수 있으며, insert 절은 데이터를 적재할 테이블의 명칭 및 테이블 내 컬럼값이 기재되는 구문이다. Specifically, the SQL syntax
SQL 구문 자동 생성부(320)는 이관로직을 분석한 결과를 토대로, 각 SQL 구문에 원천위치 식별정보와 타겟위치 식별정보 중 해당하는 정보를 입력하여 매핑로직을 생성한다. 추가적으로, SQL 구문 자동 생성부(320)는 생성된 매핑로직을 바로 저장하거나 데이터 이관서버와 연결된 클라이언트 단말 측으로 SQL 구문을 전송하여 사용자의 확인을 거친 후에 저장하도록 구현될 수도 있다. The automatic SQL
한편, 생성된 SQL 구문 기반의 매핑로직이 표준 SQL에 위배되는 경우 데이터 검증장치(300)와 통신연결된 클라이언트 단말 측으로 경고나 재입력 요청 알림을 제공할 수도 있다. On the other hand, if the mapping logic based on the generated SQL statement is in violation of the standard SQL, a warning or re-input request notification may be provided to the client terminal connected to the
SQL 구문 변경이력 기록부(330)는 원천위치 식별정보, 타겟위치 식별정보 및 이관로직 중 적어도 하나가 사용자에 의해 변경되어 매핑로직에 변경사항이 발생되는 경우, 변경정보를 기록 및 저장한다. 예를 들어, 원천위치 식별정보, 타겟위치 식별정보 및 이관로직에 대한 전자문서(엑셀 또는 텍스트문서)가 데이터 검증장치(300)에 미리 저장되어 있을 때, 클라이언트 단말측으로부터 새로운 전자문서를 수신한 경우, 새로운 전자문서와 기존에 저장되어 있는 전자문서를 비교하여 변경정보(즉, 변경 전의 데이터, 변경 후의 데이터, 변경날짜 및 시간, 변경한 사용자 등)를 추출하고 기록 및 저장함과 동시에, 변경정보를 곧바로 매핑로직에 반영하여 수정할 수 있다. 또는, 클라이언트 단말측으로부터 매핑로직에 관한 수정사항을 수신한 경우, 곧바로 수정사항이 반영된 매핑로직을 저장하고, 수정사항에 대한 이력을 변경정보로 저장할 수 있다. The SQL syntax change
SQL 구문 변경이력 기록부(330)는 저장된 변경정보를 가공하여 통계나 변경이력 리스트 형태로 저장할 수도 있다. 예를 들어, 최종변경시점에 대한 변경항목이 가장 상단에 배치되도록 시간 순으로 변경항목을 정렬한 리스트를 저장하거나, 변경정보를 표나 그래프 형태로 저장할 수도 있다.The SQL syntax change
이후, 클라이언트 단말 측으로부터 매핑로직의 변경이력에 대한 요청을 수신하는 경우, SQL 구문 변경이력 기록부(330)는 리스트, 표, 그래프 등 사용자가 요청한 항목에 맞는 데이터를 클라이언트 단말 측으로 제공할 수 있다. Thereafter, when receiving a request for a change history of the mapping logic from the client terminal, the SQL syntax change
한편, 이관 데이터 검증부(340)는 매핑로직의 SQL 구문을 기반으로 원천 서버(100)의 데이터가 타겟 서버(200)로 이관된 후, 매핑로직을 참조하여 이관 전의 데이터와 이관 후의 데이터를 비교함으로써 이관된 데이터를 검증한다. On the other hand, the
종래의 검증의 경우, 개발자가 검증을 수행하고, 단순히 결과만을 고객에게 통보하는 방식으로만 이루어져왔기 때문에 고객이 검증이 제대로 이루어졌는지 확인할 수 있는 길이 없었다. 따라서, 이관 데이터 검증부(340)는 데이터 이관장치와 연결된 클라이언트 단말을 통하여 검증 대상 데이터 지정을 요청한 후, 지정결과를 입력받고 지정된 데이터에 대하여 검증을 수행할 수 있다. 예를 들어, 이관 데이터 검증부(340)는 각 테이블 별로 체크 박스가 형성된 사용자 인터페이스를 제공하여 사용자가 이관을 원하는 테이블에 대해서만 지정할 수 있도록 할 수 있다. 특히, 복잡한 로직을 적용해야만 검증할 수 있는 데이터(또는 테이블)은 사용자의 선택에 의해 검증 대상에서 제외되도록 할 수 있다. 복잡한 로직이 필요한 데이터(또는 테이블)의 경우 개발자에 의해 수작업으로 보정 처리되거나 통합 코어(coa)의 변경/추가에 의한 요인이 수기로 계산되어 업로드될 수 있다. In the case of conventional validation, there was no way for the customer to verify that the validation had been done, since the developer only performed the verification and simply informed the result to the customer. Accordingly, the transfer
이관 데이터 검증부(340)가 검증을 수행하는 방식은 다음과 같다. 구체적으로, 이관 데이터 검증부(340)는 매핑로직에 포함된 원천위치 식별정보를 참조하여 원천 서버(100)에 저장된 데이터를 추출하고, 매핑로직에 포함된 타겟위치 식별정보를 참조하여 타겟 서버(200)로 이관된 데이터를 추출한다. 이어서, 이관 데이터 검증부(340)는 원천 서버(100)로부터 추출된 데이터와 타겟 서버(200)로부터 추출된 데이터를 비교하여 일치여부를 판단함으로써 검증을 완료한다. 그리고 이관 데이터 검증부(340)는 상술한 방식으로 이행된 데이터의 건수 검증, 합검증, 코드 검증 등을 수행할 수 있다. 즉, 종래에는 이관 전의 데이터와 이관 후의 데이터를 데이터 비교 모듈에 개발자가 수작업으로 기입하여 검증을 수행하였기 때문에 많은 리소스와 개발비용이 낭비되었었다. 그러나, 이관 데이터 검증부(340)는 SQL 구문으로 자동생성된 매핑로직을 참조하여, 이관 전 데이터의 위치와 이관 후 데이터의 위치를 자동 식별하고 추출하여, 자동으로 비교를 수행함으로써, 리소스와 개발비용을 절감시킬 수 있다.The manner in which the transfer
한편, 방대한 양의 데이터를 보관하고 있는 기업(예를 들어, 카드회사)이 데이터를 새로운 서버로 이관하고자 할 때, 방대한 양으로 인해 이관하는 데에 최소 15-16시간이 걸릴 정도로 상당히 오랜시간이 요구된다. 그로 인해, 기업의 데이터 이관은 소비자들에게 영향이 없는 주말에 주로 이루어지게 된다. 그런데, 전체 데이터 이관이 모두 이루어지고 난 후, 검증을 순차적으로 진행하게 되면 데이터 이관만큼 오랜 시간을 요구하게 되므로 기업의 업무 운행에 차질을 가져다 줄 수 있다. On the other hand, when a company that holds a vast amount of data (for example, a card company) wants to transfer data to a new server, it takes a very long time, at least 15-16 hours Is required. As a result, corporate data transfer is often done on weekends when it does not affect consumers. However, after all the data escapes are completed, if the verification is sequentially performed, it takes a long time as the data escapes, which can lead to a disruption to the business operation of the enterprise.
그에 따라, 유휴저장공간 확인부(350)는 데이터 검증장치(300) 내에 검증 결과 및 검증 데이터를 기록하고 저장할 미리 설정된 크기(Byte 단위) 이상의 유휴저장공간이 존재하는지 판단한다. 유휴저장공간 확인부(350)는 유휴저장공간이 존재하는 것으로 판단된 경우, 이를 이관 데이터 검증부(340)에 전달함으로써, 이관 종료된 데이터가 발생하자마자 유휴저장공간을 이용하여 실시간으로 검증이 바로 이루어지도록 할 수 있다.Accordingly, the idle storage
이때, 데이터 검증은 테이블을 단위로 이루어질 수 있다. 즉, 복수의 테이터를 포함하고 있는 테이블은 복수 개가 원천 서버(100)에 저장되어 있으며, 각각의 테이블 단위로 타겟 서버(200)로 이관된다. 따라서, 유휴저장공간이 확인되고, 이관이 종료된 테이블이 존재하는 것으로 확인된 경우, 이관 종료 테이블마다 검증을 수행할 수 잇다. At this time, data verification can be performed on a table basis. That is, a plurality of tables including a plurality of data are stored in the
한편, 데이터의 이관이 데이터 검증장치(300)의 자체 이관 모듈에 의해 수행되는 경우, 데이터(또는 테이블)의 이관 종료 여부를 쉽게 확인할 수 있으나, 외부 업체의 모듈(종래에 사용되고 있는 상용 툴)에 의해 수행되는 경우, 외부 업체의 서버로부터 데이터(또는 테이블)의 이관이 종료되었는지에 대한 상태값을 수신해야만 데이터 검증을 실시간으로 수행할 수 있다. 이를 위해서, 유휴저장공간 확인부(350)는 외부 업체의 서버(즉, 외부 서버)에 저장되는 메타정보 또는 로그정보에 포함된 각 테이블의 이관 종료 상태값을 확인함으로써 각 테이블의 이관 종료 여부를 확인할 수 있다. 바람직하게, 메타정보에 접근하여, 테이블 별 작업 ID를 매칭하여 각 테이블의 이관종료여부를 확인하는 것이 좋으나, 메타정보에 대한 접근이 허용되지 않는 경우, 이관 결과에 대한 로그정보를 확인함으로써 각 테이블의 이관 종료 여부를 확인할 수 있다. Meanwhile, when data transfer is performed by the self-transfer module of the
검증결과 관리 및 제공부(360)는 검증을 수행한 결과를 클라이언트 단말로 제공할 수 있다. 이때, 검증결과 관리 및 제공부(360)는 사용자가 검증대상을 미리 지정한 경우, 지정된 데이터에 대한 검증결과만 제공할 수 있다. 또한, 검증결과 관리 및 제공부(360)는 목록, 표 또는 그래프 형태로 검증결과를 가공 및 분석하여 사용자가 알기 쉽게 제공할 수 있다. 또한, 종료된 데이터에 대하여 바로 검증이 수행되는 경우, 실시간으로 검증되고 있는 데이터의 목록과 결과에 대해서 제공할 수도 있다. The verification result management and providing
이하, 도 3 및 도 4를 참조하여, 본 발명의 일 실시예에 따르는 자동 생성된 SQL 구문 기반의 데이터 검증방법에 대하여 구체적으로 설명하도록 한다. Hereinafter, with reference to FIG. 3 and FIG. 4, an automatically generated SQL statement-based data verification method according to an embodiment of the present invention will be described in detail.
상기 방법은 도 2를 통하여 설명한 데이터 검증장치(300)에 의하여 수행되는 것이므로, 아래에서 생략된 내용이 있다고 하더라도 도 2를 통하여 설명한 내용으로서 갈음하도록 한다. Since the above-described method is performed by the
먼저, 데이터 검증장치(300)는 원천 서버(100)에 저장된 데이터에 대한 원천위치 식별정보와 데이터가 타겟 서버(200)에 저장될 위치에 대한 타겟위치 식별정보를 추출한다(S110).First, the
이어서, 이관로직에 원천위치 식별정보와 타겟위치 식별정보를 적용하여 매핑로직을 생성한다(S120). 데이터 검증장치(300)는 이관로직을 자동분석하여 추출 SQL 구문과 적재 SQL 구문을 자동으로 파싱한 후, 적절한 식별정보를 적용함으로써 매핑로직을 생성할 수 있다. 생성된 매핑로직은 원천 서버(100)의 특정 위치에 저장된 특정 데이터를 타겟 서버(200) 내의 어느 위치에 이관시켜야 하는 지에 관한 정보가 포함되어 있다. Subsequently, mapping logic is generated by applying the source location identification information and the target location identification information to the migration logic (S120). The
데이터 검증장치(300)는 매핑로직을 참조하여 원천 서버(100)와 타겟 서버(200)간 허용된 접근권한에 따라 데이터를 이관한다(S130). 한편, S130 단계는 외부 업체의 모듈을 이용하는 경우, 외부 서버에 의해 수행될 수도 있다. The
이어서, 데이터 검증장치(300)는 매핑로직을 참조하여 이관된 데이터를 검증한다(S140). Subsequently, the
구체적으로 도 4를 참고하면, 클라이언트 단말을 이용하는 사용자로부터 검증대상 데이터 지정결과를 수신한다(S141). 그리고, 데이터 검증장치(300)는 데이터 검증장치(300) 내에 검증을 수행할 수 있는 유휴저장공간이 존재하는지 확인한다(S142). 이어서, 데이터 검증장치(300)는 매핑로직을 참조하여 원천서버(100)에 저장된 데이터와 타겟 서버(200)에 이관된 데이터를 추출한다(S143). 이때, 매핑로직 내의 원천위치 식별정보와 타겟위치 식별정보를 참조할 수 있다. 데이터 검증장치(300)는 추출된 데이터를 비교하여 일치하는지 확인함으로써 검증을 수행한다(S144). 그리고 검증결과를 표나 그래프 등으로 분석하여 사용자가 눈으로 쉽게 확인할 수 있도록 제공한다(S145). Specifically, referring to FIG. 4, a verification target data designation result is received from a user using a client terminal (S141). Then, the
본 발명의 일 실시예는 컴퓨터에 의해 실행되는 프로그램 모듈과 같은 컴퓨터에 의해 실행가능한 명령어를 포함하는 기록 매체의 형태로도 구현될 수 있다. 컴퓨터 판독 가능 매체는 컴퓨터에 의해 액세스될 수 있는 임의의 가용 매체일 수 있고, 휘발성 및 비휘발성 매체, 분리형 및 비분리형 매체를 모두 포함한다. 또한, 컴퓨터 판독가능 매체는 컴퓨터 저장 매체 및 통신 매체를 모두 포함할 수 있다. 컴퓨터 저장 매체는 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터와 같은 정보의 저장을 위한 임의의 방법 또는 기술로 구현된 휘발성 및 비휘발성, 분리형 및 비분리형 매체를 모두 포함한다. 통신 매체는 전형적으로 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈, 또는 반송파와 같은 변조된 데이터 신호의 기타 데이터, 또는 기타 전송 메커니즘을 포함하며, 임의의 정보 전달 매체를 포함한다. One embodiment of the present invention may also be embodied in the form of a recording medium including instructions executable by a computer, such as program modules, being executed by a computer. Computer readable media can be any available media that can be accessed by a computer and includes both volatile and nonvolatile media, removable and non-removable media. In addition, the computer-readable medium may include both computer storage media and communication media. Computer storage media includes both volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of information such as computer readable instructions, data structures, program modules or other data. Communication media typically includes any information delivery media, including computer readable instructions, data structures, program modules, or other data in a modulated data signal such as a carrier wave, or other transport mechanism.
본 발명의 방법 및 시스템은 특정 실시예와 관련하여 설명되었지만, 그것들의 구성 요소 또는 동작의 일부 또는 전부는 범용 하드웨어 아키텍쳐를 갖는 컴퓨터 시스템을 사용하여 구현될 수 있다.While the methods and systems of the present invention have been described in connection with specific embodiments, some or all of those elements or operations may be implemented using a computer system having a general purpose hardware architecture.
전술한 본 발명의 설명은 예시를 위한 것이며, 본 발명이 속하는 기술분야의 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다.It will be understood by those skilled in the art that the foregoing description of the present invention is for illustrative purposes only and that those of ordinary skill in the art can readily understand that various changes and modifications may be made without departing from the spirit or essential characteristics of the present invention. will be. It is therefore to be understood that the above-described embodiments are illustrative in all aspects and not restrictive. For example, each component described as a single entity may be distributed and implemented, and components described as being distributed may also be implemented in a combined form.
본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.The scope of the present invention is defined by the appended claims rather than the detailed description and all changes or modifications derived from the meaning and scope of the claims and their equivalents are to be construed as being included within the scope of the present invention do.
100: 원천 서버 200: 타겟 서버
300: 데이터 검증장치100: source server 200: target server
300: data verification device
Claims (16)
(a) 원천 서버에 저장된 데이터에 대한 원천위치 식별정보와 상기 데이터가 타겟 서버에 저장될 위치에 대한 타겟위치 식별정보를 추출하는 단계;
(b) 상기 데이터를 타겟 서버로 이관시키기 위한 기본 문법으로 구성된 이관로직으로부터 추출 SQL 구문 및 적재 SQL 구문을 식별하고, 상기 추출 SQL 구문 및 상기 적재 SQL 구문에 상기 원천위치 식별정보와 상기 타겟위치 식별정보를 적용하여 매핑로직을 생성하는 단계;
(c) 상기 원천 서버의 데이터가 상기 타겟 서버로 이관된 후, 상기 매핑로직을 참조하여 이관 전의 데이터와 이관 후의 데이터를 비교함으로써 상기 이관된 데이터를 검증하는 단계; 및
(d) 상기 원천위치 식별정보, 상기 타겟위치 식별정보 및 상기 이관로직에 대한 정보를 나타내는 전자문서를 사용자로부터 수신하는 경우, 기저장된 전자문서 및 상기 수신된 전자문서를 비교하여 변경정보를 추출하여 저장하고, 상기 변경정보에 기초하여 상기 매핑로직을 수정하는 단계를 포함하되,
상기 변경정보는 변경 전과 후의 원천위치 식별정보, 타겟위치 식별정보, 시간정보 및 사용자의 정보를 포함하는, 자동 생성된 SQL 구문 기반의 데이터 검증방법.A method for automatically generating a Structured Query Language (SQL) syntax-based data verification performed by a server,
(a) extracting source location identification information for data stored in a source server and target location identification information for a location where the data is to be stored in a target server;
(b) identifying an extracted SQL statement and a loaded SQL statement from an escape logic configured with a basic grammar for transferring the data to a target server, and storing the source location identification information and the target location identification Applying the information to generate mapping logic;
(c) verifying the transferred data by comparing the pre-transfer data with the post-transfer data by referring to the mapping logic after the data of the source server is transferred to the target server; And
(d) when receiving an electronic document representing the source location identification information, the target location identification information, and the ebb logic from the user, the previously stored electronic document and the received electronic document are compared with each other to extract change information And modifying the mapping logic based on the change information,
Wherein the change information includes source location identification information, target location identification information, time information, and user information before and after the change.
상기 원천위치 식별정보와 타겟위치 식별정보는,
상기 각 데이터가 저장되거나 저장될 위치를 나타내는 테이블의 명칭과 테이블 내의 컬럼값을 포함하는, 자동 생성된 SQL 구문 기반의 데이터 검증방법.The method according to claim 1,
Wherein the source location identification information and the target location identification information are &
Wherein the name of the table indicating the location where the data is to be stored or stored and the column value in the table.
상기 매핑로직은,
SQL 구문으로 작성된 것인, 자동 생성된 SQL 구문 기반의 데이터 검증방법.The method according to claim 1,
The mapping logic includes:
An automatically generated SQL statement-based data validation method written in SQL syntax.
상기 (c) 단계는,
상기 추출 SQL 구문에 포함된 원천위치 식별정보를 참조하여 추출할 데이터의 저장위치를 식별하고, 상기 적재 SQL 구문에 포함된 타겟위치 식별정보를 참조하여 추출한 데이터를 적재할 저장위치를 식별하며, 상기 추출 SQL 구문에 조건문이 포함되어 있는 경우 상기 조건문에 포함된 조건에 따라 상기 원천 서버의 데이터를 상기 타겟 서버로 이관시키는 단계를 포함하는, 자동 생성된 SQL 구문 기반의 데이터 검증방법.The method according to claim 1,
The step (c)
Identifies a storage location of data to be extracted by referring to the source location identification information included in the extracted SQL syntax, identifies a storage location where the extracted data is to be loaded with reference to the target location identification information included in the load SQL statement, And transferring the data of the source server to the target server according to conditions included in the conditional statement when the extracted SQL statement includes the conditional statement.
(e) 상기 (d) 단계 이후에, 상기 사용자로부터 매핑로직의 변경이력에 대한 요청을 수신하는 경우, 상기 저장된 변경정보에 기초하여, 변경항목이 시간 순으로 정렬된 리스트를 상기 사용자에게 제공하는 단계를 더 포함하는, 자동 생성된 SQL 구문 기반의 데이터 검증방법.The method according to claim 1,
(e) receiving a request for a change log of the mapping logic from the user after the step (d), providing the user with a list in which change items are arranged in chronological order based on the stored change information Further comprising the steps of: a) generating an automatically generated SQL statement based on the generated data;
상기 (c) 단계는,
사용자 단말로 검증 대상 데이터 지정을 요청한 후, 지정결과를 입력받고, 지정된 데이터에 대하여 검증을 수행하는 단계를 포함하는, 자동 생성된 SQL 구문 기반의 데이터 검증방법.The method according to claim 1,
The step (c)
The method comprising: requesting a user terminal to designate a verification target data; receiving a designation result; and performing verification on the designated data.
상기 방법은,
(f) 상기 (c) 단계 후, 상기 지정된 데이터에 대한 검증결과를 분석하여 상기 사용자 단말로 제공하는 단계를 포함하는, 자동 생성된 SQL 구문 기반의 데이터 검증방법.10. The method of claim 9,
The method comprises:
(f) analyzing the verification result of the designated data after the step (c) and providing the analyzed result to the user terminal.
상기 (c) 단계는,
(c-1) 상기 매핑로직에 포함된 원천위치 식별정보를 참조하여 상기 원천 서버에 저장된 데이터를 추출하고, 상기 매핑로직에 포함된 타겟위치 식별정보를 참조하여 상기 타겟 서버로 이관된 데이터를 추출하는 단계; 및
(c-2) 상기 원천 서버로부터 추출된 데이터와 상기 타겟 서버로부터 추출된 데이터를 비교하여 일치여부를 판단함으로써 검증을 수행하는 단계를 포함하는, 원천 서버에 저장된 자동 생성된 SQL 구문 기반의 데이터 검증방법.The method according to claim 1,
The step (c)
(c-1) extracting data stored in the source server with reference to source location identification information included in the mapping logic, extracting data transferred to the target server by referring to target location identification information included in the mapping logic, ; And
(c-2) comparing the data extracted from the source server with the data extracted from the target server and performing verification by determining whether or not the data matches the data extracted from the target server, wherein the automatically generated SQL statement-based data verification Way.
상기 (c) 단계는,
(c-3) 상기 데이터 검증방법을 수행하는 서버 내에 미리 설정된 크기(Byte 단위) 이상의 유휴저장공간이 존재하는지 판단하는 단계; 및
(c-4) 상기 유휴저장공간이 존재하는 것으로 판단된 경우, 데이터 이관이 시작 된 후, 이관 종료 데이터가 발생할 때마다, 상기 유휴저장공간을 이용하여 상기 이관 종료 데이터에 대한 검증을 수행하는 단계;를 포함하는, 자동 생성된 SQL 구문 기반의 데이터 검증방법.The method according to claim 1,
The step (c)
(c-3) determining whether there is an idle storage space of at least a predetermined size (in bytes) in the server performing the data verification method; And
(c-4) performing verification of the migration end data using the idle storage space each time migration end data is generated after the data migration starts, if it is determined that the idle storage space exists ; And an automatically generated SQL statement-based data verification method.
상기 원천 서버 내에 복수의 테이블이 저장되고, 각 테이블마다 복수의 데이터가 저장되어 있는 경우,
상기 (c-4) 단계는,
이관이 종료된 테이블이 발생될 때마다, 테이블 단위로 상기 이관 종료 데이터에 대한 검증을 수행하는 단계를 포함하는, 자동 생성된 SQL 구문 기반의 데이터 검증방법.13. The method of claim 12,
When a plurality of tables are stored in the source server and a plurality of data is stored for each table,
The step (c-4)
And performing verification of the migration end data on a table-by-table basis every time a table with the migration termination is generated.
상기 (c-4) 단계는,
상기 데이터의 이관이 외부 서버에 의해서 수행되는 경우, 상기 외부 서버에 저장되는 메타정보 또는 로그정보에 포함된 각 테이블의 이관 종료 상태값을 확인함으로써 각 테이블의 이관 종료 여부를 확인하고, 이관 종료가 확인된 테이블 내의 데이터에 대한 검증을 수행하는 단계를 포함하는, 자동 생성된 SQL 구문 기반의 데이터 검증방법.14. The method of claim 13,
The step (c-4)
If the transfer of the data is performed by an external server, checking whether transfer of each table is completed or not by confirming the transfer end status value of each table included in the meta information or log information stored in the external server, And verifying the data in the identified table. ≪ Desc / Clms Page number 21 >
상기 자동 생성된 SQL 구문 기반의 데이터 검증방법을 수행하는 서버는,
상기 타겟 서버이거나, 상기 원천 서버 및 타겟 서버와 물리적으로 독립된 제 3의 서버인, 자동 생성된 SQL 구문 기반의 데이터 검증방법.The method according to claim 1,
The server for performing the automatically generated SQL statement-
Wherein the third server is a third server physically independent of the target server or the source server and the target server.
자동 생성된 SQL 구문 기반의 데이터 검증방법을 수행하기 위한 프로그램이 저장된 메모리; 및
상기 메모리에 저장된 프로그램을 실행하기 위한 프로세서;를 포함하며,
상기 프로세서는, 상기 프로그램의 실행에 따라, 원천 서버에 저장된 데이터에 대한 원천위치 식별정보와 상기 데이터가 타겟 서버에 저장될 위치에 대한 타겟위치 식별정보를 추출하고,
상기 데이터를 상기 타겟 서버로 이관시키기 위한 기본 문법으로 구성된 이관로직으로부터 추출 SQL 구문 및 적재 SQL 구문을 식별하고, 상기 추출 SQL 구문 및 상기 적재 SQL 구문에 상기 원천위치 식별정보와 상기 타겟위치 식별정보를 적용하여 매핑로직을 생성하며,
상기 원천 서버의 데이터가 상기 타겟 서버로 이관된 후, 상기 매핑로직을 참조하여 이관 전의 데이터와 이관 후의 데이터를 비교함으로써 상기 이관된 데이터를 검증하고,
상기 원천위치 식별정보, 상기 타겟위치 식별정보 및 상기 이관로직에 대한 정보를 나타내는 전자문서를 사용자로부터 수신하는 경우, 기저장된 전자문서 및 상기 수신된 전자문서를 비교하여 변경정보를 추출하여 저장하고, 상기 변경정보에 기초하여 상기 매핑로직을 수정하되,
상기 변경정보는 변경 전과 후의 원천위치 식별정보, 타겟위치 식별정보, 시간정보 및 사용자의 정보를 포함하는, 자동 생성된 SQL 구문 기반의 데이터 검증장치.A data verification apparatus based on automatically generated Structured Query Language (SQL) syntax,
A memory for storing a program for performing an automatically generated SQL statement-based data verification method; And
And a processor for executing a program stored in the memory,
Wherein the processor extracts the source location identification information for the data stored in the source server and the target location identification information for the location where the data is to be stored in the target server,
Identifying the extracted SQL statement and the loaded SQL statement from the escape logic configured with a basic grammar for transferring the data to the target server, and storing the source location identification information and the target location identification information in the extracted SQL syntax and the loaded SQL syntax To generate mapping logic,
After the data of the source server is transferred to the target server, verifying the transferred data by comparing the pre-transfer data with the post-transfer data by referring to the mapping logic,
Stored electronic document and the received electronic document when the electronic document indicating the source location identification information, the target location identification information, and the escape logic is received from a user, extracts and stores the change information, Modifying the mapping logic based on the change information,
Wherein the change information includes source location identification information, target location identification information, time information, and user information before and after the change.
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| KR1020150167937 | 2015-11-27 | ||
| KR20150167937 | 2015-11-27 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| KR101737575B1 true KR101737575B1 (en) | 2017-05-29 |
Family
ID=59053549
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| KR1020150185130A Active KR101737575B1 (en) | 2015-11-27 | 2015-12-23 | Method and device for verifying data based on sql sentences generated automatically |
Country Status (1)
| Country | Link |
|---|---|
| KR (1) | KR101737575B1 (en) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR101975998B1 (en) * | 2018-11-22 | 2019-08-28 | (주)씨앤텍시스템즈 | Apparatus and Method for Data Migration Based on SQL sentences |
Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR101440186B1 (en) | 2012-03-16 | 2014-09-12 | 주식회사 엘지유플러스 | Real Time Data Migration System and Method therefor |
| KR101497067B1 (en) * | 2013-11-20 | 2015-03-09 | 대한민국(국가기록원) | Electric document transfer method and apparatus based digital forensic |
-
2015
- 2015-12-23 KR KR1020150185130A patent/KR101737575B1/en active Active
Patent Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR101440186B1 (en) | 2012-03-16 | 2014-09-12 | 주식회사 엘지유플러스 | Real Time Data Migration System and Method therefor |
| KR101497067B1 (en) * | 2013-11-20 | 2015-03-09 | 대한민국(국가기록원) | Electric document transfer method and apparatus based digital forensic |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR101975998B1 (en) * | 2018-11-22 | 2019-08-28 | (주)씨앤텍시스템즈 | Apparatus and Method for Data Migration Based on SQL sentences |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US20170236130A1 (en) | Emulating Manual System of Filing Using Electronic Document and Electronic File | |
| US20210026756A1 (en) | Deriving software application dependency trees for white-box testing | |
| CN108241720B (en) | Data processing method, device and computer readable storage medium | |
| US11914574B2 (en) | Generation of inconsistent testing data | |
| CN109284225A (en) | A kind of quality determining method and electronic equipment of multi-person synergy exploitation programming code | |
| US11922146B2 (en) | Systems and method for creating enterprise software | |
| CN109815141B (en) | A test method and device | |
| CN115658452B (en) | Buried point verification method, buried point verification device, readable storage medium, and electronic device | |
| CN109032631A (en) | Application program service packs acquisition methods, device, computer equipment and storage medium | |
| CN108270626A (en) | A kind of method, apparatus, equipment and the readable storage medium storing program for executing of upgrade server firmware | |
| CN104363112A (en) | Parameter management method and parameter management device | |
| CN106445815A (en) | Automated testing method and device | |
| CN111143434A (en) | Data intelligent verification method, device, equipment and storage medium | |
| KR101737578B1 (en) | Method and device for automatically tuning for sql sentences generated automatically | |
| CN113901773B (en) | Data accounting method, device, electronic equipment and storage medium | |
| CN114064467B (en) | Resource analysis method, device, electronic device and storage medium | |
| WO2023065823A1 (en) | Software development kit fixing method, terminal, server and device | |
| US10656922B2 (en) | Systems and methods for providing an application transformation tool | |
| KR101737575B1 (en) | Method and device for verifying data based on sql sentences generated automatically | |
| KR101737576B1 (en) | Method and device for transmitting data based on sql sentences generated automatically | |
| CN113672233B (en) | Server out-of-band management method, device and equipment based on Redfish | |
| CN112181407B (en) | Service realization processing method, device, system, electronic equipment and storage medium | |
| US11392371B2 (en) | Identification of a partial code to be refactored within a source code | |
| CN115080429A (en) | Test report generation method and device | |
| US9508062B2 (en) | Problem management record profiling |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| PA0109 | Patent application |
Patent event code: PA01091R01D Comment text: Patent Application Patent event date: 20151223 |
|
| PA0201 | Request for examination | ||
| PE0902 | Notice of grounds for rejection |
Comment text: Notification of reason for refusal Patent event date: 20161031 Patent event code: PE09021S01D |
|
| E701 | Decision to grant or registration of patent right | ||
| PE0701 | Decision of registration |
Patent event code: PE07011S01D Comment text: Decision to Grant Registration Patent event date: 20170414 |
|
| GRNT | Written decision to grant | ||
| PR0701 | Registration of establishment |
Comment text: Registration of Establishment Patent event date: 20170512 Patent event code: PR07011E01D |
|
| PR1002 | Payment of registration fee |
Payment date: 20170515 End annual number: 3 Start annual number: 1 |
|
| PG1601 | Publication of registration | ||
| PR1001 | Payment of annual fee |
Payment date: 20200331 Start annual number: 4 End annual number: 6 |