KR101716182B1 - Apparatus and method for management of database - Google Patents

Apparatus and method for management of database Download PDF

Info

Publication number
KR101716182B1
KR101716182B1 KR1020120039286A KR20120039286A KR101716182B1 KR 101716182 B1 KR101716182 B1 KR 101716182B1 KR 1020120039286 A KR1020120039286 A KR 1020120039286A KR 20120039286 A KR20120039286 A KR 20120039286A KR 101716182 B1 KR101716182 B1 KR 101716182B1
Authority
KR
South Korea
Prior art keywords
database
data
scheduling
time
present
Prior art date
Application number
KR1020120039286A
Other languages
Korean (ko)
Other versions
KR20130116678A (en
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 KR1020120039286A priority Critical patent/KR101716182B1/en
Publication of KR20130116678A publication Critical patent/KR20130116678A/en
Application granted granted Critical
Publication of KR101716182B1 publication Critical patent/KR101716182B1/en

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/23Updating
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/40Information retrieval; Database structures therefor; File system structures therefor of multimedia data, e.g. slideshows comprising image and additional audio data
    • G06F16/43Querying
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces

Abstract

본 발명은 하드웨어의 용량 초과를 줄이면서 데이터베이스를 효율적으로 이용할 수 있도록 하는 데이터베이스 관리 장치 및 방법에 관한 것이다. 데이터베이스 관리 방법은 데이터베이스 스케줄링 어플리케이션을 실행하는 단계, 데이터베이스 스케줄링 시간을 설정하는 단계, 데이터베이스 접근을 위한 데이터베이스의 활성화/비활성화 상태를 체크하는 단계, 데이터베이스가 활성화 상태인 경우, 데이터베이스 내의 데이터 삭제를 위한 질의 요청을 수행하는 단계 및 현재 시간이 설정된 데이터베이스 스케줄링 시간인 경우, 질의 요청에 의해 데이터베이스 내의 일부 데이터를 삭제하는 단계를 포함하는 것을 특징으로 한다.BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a database management apparatus and method for efficiently utilizing a database while reducing excess capacity of hardware. The database management method includes a step of executing a database scheduling application, a step of setting a database scheduling time, a step of checking an activation / deactivation state of a database for database access, a step of inquiring for deletion of data in the database, And deleting some data in the database in response to a query request when the current time is the set database scheduling time.

Description

데이터베이스 관리 장치 및 방법{Apparatus and method for management of database}[0001] Apparatus and method for managing database [0002]

본 발명은 하드웨어의 용량 초과를 줄이면서 데이터베이스를 효율적으로 이용할 수 있도록 하는 데이터베이스 관리 장치 및 방법에 관한 것이다.BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a database management apparatus and method for efficiently utilizing a database while reducing excess capacity of hardware.

데이터베이스 관리 시스템(database management system: DBMS)은 방대한 양의 데이터가 저장되어 있는 데이터베이스를 관리하기 위한 시스템으로서, 대량의 정보들이 쉴새 없이 생성되고 있는 현 시대에 있어서 없어서는 안될 중요한 요소로 인식되고 있다.A database management system (DBMS) is a system for managing a database in which a large amount of data is stored, and is recognized as an indispensable element in the current era in which a large amount of information is continuously generated.

이러한 데이터베이스 관리 시스템은 외부로부터 특정 질의(query)가 입력되는 경우, 입력된 질의에 따라 데이터베이스에 데이터를 선택, 갱신 하는 등의 기능을 수행한다.Such a database management system performs functions such as selecting and updating data in the database according to an inputted query when a specific query is inputted from the outside.

여기서, 질의란 데이터베이스의 테이블에 저장되어 있는 데이터에 대한 어떠한 요구, 즉 데이터에 대한 어떠한 조작을 하기 원하는지를 기술한 것을 의미하는 것으로서, 구조화 질의어(structured query language; SQL)와 같은 언어를 이용하여 표현된다.Here, the query refers to any request for data stored in the table of the database, that is, what kind of operation is desired to be performed on the data. The query is expressed using a language such as a structured query language (SQL) do.

이러한, SQL문 중 가장 대표적인 질의문은 선택(select)문이다. 이러한 선택문을 이용하여 테이블에 존재하는 데이터를 열람하거나, 데이터를 분석하여 데이터의 내용을 수정하거나, 여러 개의 테이블에 분산되어 저장되어 있는 데이터를 상호 참조하여 원하는 데이터를 열람할 수 있다.The most typical query statement among these SQL statements is a select statement. The selected data can be used to browse the data existing in the table, to analyze the data to modify the contents of the data, or to browse the desired data by cross-referencing the data stored in the plurality of tables.

데이터베이스는 SYSJOBSCHEDULES 테이블 구조를 가지고 있으나, 어떠한 업무를 자동화하기 위해서 작업(job)을 이용하게 되는데 이러한 작업을 지정된 시간에 수행해 주는 SQL 에이전트 서비스를 이용할 수 없다. 주기적으로 데이터베이스를 관리하기 위해서는 윈도우 스케줄러를 이용하여 SQL 서버 유틸리티 중 SQLCMD를 이용해야 한다. SQLCMD 명령을 통해 SQL 서버에 접속한 후 쿼리를 수행한다.The database has a SYSJOBSCHEDULES table structure, but it uses jobs to automate certain tasks. You can not use the SQL Agent service to perform these tasks at a specified time. To manage the database periodically, you need to use SQLCMD among the SQL server utilities using Windows Scheduler. Connect to SQL server through SQLCMD command and execute query.

그러나, MS의 프리버전 제품군을 이용한 SQL 서버를 사용할 경우, SQL 서버들 사이에서 메시지를 주고 받는 기능인 서비스 브로커(service broker)의 제한적인 이용으로 개발 시간이 많이 소요된다. 또한 데이터베이스에 데이터를 지속적으로 저장할 경우 시스템의 용량 초과 및 부하를 일으키게 된다.However, when using SQL server using MS's free version product, it takes a lot of development time due to limited use of service broker which is a function of exchanging messages between SQL servers. Also, storing data persistently in the database will cause the system to overload and overload.

본 발명이 해결하고자 하는 기술적인 과제는 하드웨어의 용량 초과를 줄이면서 데이터베이스를 효율적으로 이용할 수 있도록 하는 데이터베이스 관리 장치 및 방법을 제공하는데 있다.SUMMARY OF THE INVENTION It is an object of the present invention to provide a database management apparatus and method for efficiently using a database while reducing excess capacity of hardware.

본 발명이 이루고자 하는 기술적인 과제를 해결하기 위한 일 실시 예에 따른 데이터베이스 관리 방법은 데이터베이스 스케줄링 어플리케이션을 실행하는 단계; 상기 데이터베이스 스케줄링 시간을 설정하는 단계; 상기 데이터베이스 접근을 위한 데이터베이스의 활성화/비활성화 상태를 체크하는 단계; 상기 데이터베이스가 활성화 상태인 경우, 데이터베이스 내의 데이터 삭제를 위한 질의 요청을 수행하는 단계; 및 현재 시간이 상기 설정된 데이터베이스 스케줄링 시간인 경우, 상기 질의 요청에 의해 상기 데이터베이스 내의 일부 데이터를 삭제하는 단계;를 포함하는 것을 특징으로 한다.According to an aspect of the present invention, there is provided a database management method comprising: executing a database scheduling application; Setting the database scheduling time; Checking an activation / deactivation state of the database for the database access; Performing a query request for deleting data in a database when the database is in an active state; And deleting some data in the database by the query request when the current time is the set database scheduling time.

본 발명에 있어서, 상기 데이터베이스 스케줄링 어플리케이션을 실행하는 단계 후, 상기 데이터베이스를 구성하고 있는 복수의 테이블 중 데이터 삭제를 원하는 적어도 하나 이상의 테이블을 설정하는 단계;를 더 포함하는 것을 특징으로 한다.The method may further include setting at least one table to delete data among a plurality of tables constituting the database after executing the database scheduling application.

본 발명에 있어서, 상기 데이터베이스 내의 일부 데이터를 삭제하는 단계는, 상기 설정된 적어도 하나 이상의 테이블 내의 데이터를 삭제하는 단계인 것을 특징으로 한다.In the present invention, the step of deleting some data in the database is a step of deleting data in the set at least one table.

본 발명에 있어서, 상기 데이터베이스 내의 일부 데이터를 삭제하는 단계는, 시간상 오래된 데이터를 우선 순위로 하여 삭제하는 것을 특징으로 한다.In the present invention, the step of deleting some data in the database is characterized by deleting old data in time with priority.

본 발명에 있어서, 상기 테이블 내의 데이터를 삭제하는 단계 후, 상기 테이블의 상태가 업데이트 되었는지 확인하는 단계;를 더 포함하는 것을 특징으로 한다.In the present invention, the step of deleting data in the table may further include checking whether the state of the table is updated.

본 발명에 있어서, 상기 질의 요청을 수행하는 단계 전에, 사용자 인증을 수행하는 단계;를 더 포함하는 것을 특징으로 한다.The method may further include performing user authentication before performing the query request.

본 발명이 이루고자 하는 기술적인 과제를 해결하기 위한 일 실시 예에 따른 데이터베이스 관리 장치는 데이터베이스 스케줄링 시간을 설정하는 설정부; 상기 데이터베이스 접근을 위한 데이터베이스의 활성화/비활성화 상태를 체크하는 체크부; 상기 데이터베이스가 활성화 상태인 경우, 데이터베이스 내의 데이터 삭제를 위한 질의 요청을 수행하는 질의 요청부; 상기 설정된 데이터베이스 스케줄링 시간을 카운트 하는 타이머; 및 현재 시간이 상기 설정된 데이터베이스 스케줄링 시간인 경우, 상기 질의 요청에 의해 상기 데이터베이스 내의 일부 데이터를 삭제하는 삭제부;를 포함하는 것을 특징으로 한다.According to an aspect of the present invention, there is provided a database management apparatus comprising: a setting unit configured to set a database scheduling time; A check unit for checking the activation / deactivation state of the database for the database access; A query request unit for performing a query request for deleting data in the database when the database is in an active state; A timer for counting the set database scheduling time; And a deletion unit deleting some data in the database by the inquiry request when the current time is the set database scheduling time.

본 발명에 있어서, 상기 설정부는, 상기 데이터베이스를 구성하고 있는 복수의 테이블 중 데이터 삭제를 원하는 적어도 하나 이상의 테이블을 설정하는 것을 특징으로 한다.In the present invention, the setting unit may set at least one table that desires to delete data among a plurality of tables constituting the database.

본 발명에 있어서, 상기 체크부는, 상기 데이터베이스 내의 데이터 삭제 후 상기 테이블의 상태가 업데이트 되었는지 확인하는 것을 특징으로 한다.In the present invention, the checking unit may check whether the state of the table is updated after deletion of data in the database.

상술한 바와 같이 본 발명에 따르면, 데이터베이스 자동화 서비스를 제공하여 원활한 데이터 관리를 수행할 수 있다. 특히 하드웨어의 용량이 제한적이고 오래된 데이터를 저장할 필요가 없는 데이터베이스에 용이하다. 또한 정기적으로 데이터베이스 데이터를 시스템이 처리해주기 때문에 사용자가 알 필요가 없다.As described above, according to the present invention, a database automation service can be provided to perform smooth data management. Especially for databases that have limited hardware capacity and do not need to store stale data. Also, since the system processes the database data periodically, there is no need for the user to know.

더 나아가 이중화 서버에서 데이터베이스 스케줄링을 사용할 수 있다. 이중화 서버 중 한 서버가 종료되더라도 다른 서버에서 운용체제의 날짜 및 시간을 얻어와 데이터베이스 스케줄링을 할 수 있다.Furthermore, you can use database scheduling on a redundant server. Even if one of the redundant servers is shut down, another server can obtain the date and time of the operating system and schedule the database.

도 1은 본 발명에 따른 데이터베이스 관리 장치의 구성을 보이는 블록도 이다.
도 2는 본 발명에 따른 데이터베이스 관리 방법의 동작을 보이는 흐름도 이다.
도 3은 데이터베이스 스케줄러 구성 화면을 보이는 도면이다.
1 is a block diagram showing a configuration of a database management apparatus according to the present invention.
2 is a flow chart illustrating the operation of the database management method according to the present invention.
3 is a view showing a database scheduler configuration screen.

본 발명은 다양한 변환을 가할 수 있고 여러 가지 실시 예를 가질 수 있는 바, 특정 실시 예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변환, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 본 발명을 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. BRIEF DESCRIPTION OF THE DRAWINGS The present invention is capable of various modifications and various embodiments, and specific embodiments are illustrated in the drawings and described in detail in the detailed description. It is to be understood, however, that the invention is not to be limited to the specific embodiments, but includes all modifications, equivalents, and alternatives falling within the spirit and scope of the invention. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Hereinafter, the present invention will be described in detail with reference to the accompanying drawings.

제1, 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 구성요소들은 용어들에 의해 한정되어서는 안 된다. 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. The terms first, second, etc. may be used to describe various elements, but the elements should not be limited by terms. Terms are used only for the purpose of distinguishing one component from another.

본 출원에서 사용한 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terminology used in this application is used only to describe a specific embodiment and is not intended to limit the invention. The singular expressions include plural expressions unless the context clearly dictates otherwise. In the present application, the terms "comprises" or "having" and the like are used to specify that there is a feature, a number, a step, an operation, an element, a component or a combination thereof described in the specification, But do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, or combinations thereof.

본 발명은 기능적인 블록 구성들 및 다양한 처리 단계들로 나타내어질 수 있다. 이러한 기능 블록들은 특정 기능들을 실행하는 다양한 개수의 하드웨어 또는/및 소프트웨어 구성들로 구현될 수 있다. 예를 들어, 본 발명은 하나 이상의 마이크로프로세서들의 제어 또는 다른 제어 장치들에 의해서 다양한 기능들을 실행할 수 있는, 메모리, 프로세싱, 로직(logic), 룩업 테이블(look-up table) 등과 같은 직접 회로 구성들을 채용할 수 있다. 본 발명에의 구성 요소들이 소프트웨어 프로그래밍 또는 소프트웨어 요소들로 실행될 수 잇는 것과 유사하게, 본 발명은 데이터 구조, 프로세스들, 루틴들 또는 다른 프로그래밍 구성들의 조합으로 구현되는 다양한 알고리즘을 포함하여, C, C++, 자바(Java), 어셈블러(assembler) 등과 같은 프로그래밍 또는 스크립팅 언어로 구현될 수 있다. 기능적인 측면들은 하나 이상의 프로세서들에서 실행되는 알고리즘으로 구현될 수 있다. 또한, 본 발명은 전자적인 환경 설정, 신호 처리, 및/또는 데이터 처리 등을 위하여 종래 기술을 채용할 수 있다. 매커니즘, 요소, 수단, 구성과 같은 용어는 넓게 사용될 수 있으며, 기계적이고 물리적인 구성들로서 한정되는 것은 아니다. 상기 용어는 프로세서 등과 연계하여 소프트웨어의 일련의 처리들(routines)의 의미를 포함할 수 있다.The present invention may be represented by functional block configurations and various processing steps. These functional blocks may be implemented in a wide variety of hardware and / or software configurations that perform particular functions. For example, the present invention may include integrated circuit configurations, such as memory, processing, logic, look-up tables, etc., that may perform various functions by control of one or more microprocessors or other control devices Can be adopted. Similar to the components of the present invention that may be implemented with software programming or software components, the present invention may be implemented as a combination of C, C ++, and C ++, including various algorithms implemented with data structures, processes, routines, , Java (Java), assembler, and the like. Functional aspects may be implemented with algorithms running on one or more processors. Further, the present invention can employ conventional techniques for electronic environment setting, signal processing, and / or data processing. Terms such as mechanisms, elements, means, and configurations are widely used and are not limited to mechanical and physical configurations. The term may include the meaning of a series of routines of software in conjunction with a processor or the like.

이하, 본 발명의 실시 예를 첨부도면을 참조하여 상세히 설명하기로 하며, 첨부 도면을 참조하여 설명함에 있어, 동일하거나 대응하는 구성 요소는 동일한 도면번호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다.DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings. Referring to the accompanying drawings, the same or corresponding components are denoted by the same reference numerals, do.

도 1은 본 발명에 따른 데이터베이스 관리 장치의 구성을 보이는 블록도 이다.1 is a block diagram showing a configuration of a database management apparatus according to the present invention.

도 1을 참조하면, 데이터베이스 관리 장치는 설정부(110), 체크부(120), 인증부(130), 질의 요청부(140), 타이머(150), 삭제부(160) 및 데이터베이스(170)를 포함한다.1, the database management apparatus includes a setting unit 110, a check unit 120, an authentication unit 130, a query request unit 140, a timer 150, a deletion unit 160, .

데이터베이스에 저장된 데이터를 설정된 시간마다 삭제할 수 있는 어플리케이션으로서 데이터베이스 스케줄링 어플리케이션을 실행함으로써, 데이터베이스 관리가 시작된다.By executing the database scheduling application as an application capable of deleting data stored in the database at a set time, database management is started.

설정부(110)는 데이터베이스 스케줄링 어플리케이션이 실행되면, 현재 OS에서 현재 시간을 획득해 오고, 데이터베이스 스케줄링 시간을 설정한다. 즉, 현재 시간을 밀리 세컨드 단위로 정기적인 스케줄링 시간을 설정한다. 예를 들어, 데이터베이스 스케줄링 시간은 24시로 설정할 수 있다.When the database scheduling application is executed, the setting unit 110 obtains the current time from the current OS and sets the database scheduling time. That is, the current time is set to a periodic scheduling time in milliseconds. For example, the database scheduling time can be set to 24 hours.

데이터베이스 관리 장치에서는 모든 데이터를 테이블 형태로 데이터베이스(170)에 저장하는데, 여기서 테이블이란 데이터베이스(170)에서 데이터를 저장하는 기본 구조를 말한다.In the database management apparatus, all the data is stored in a database 170 in the form of a table, which is a basic structure for storing data in the database 170. [

설정부(110)는 설정한 데이터베이스 스케줄링 시간에 데이터를 삭제할 수 있는 적어도 하나 이상의 테이블을 설정한다. 데이터베이스(170)에는 복수개의 테이블이 존재하며, 이 중 데이터 삭제를 원하는 테이블을 적어도 하나 이상 설정할 수 있다.The setting unit 110 sets at least one table capable of deleting data at the set database scheduling time. There are a plurality of tables in the database 170, and at least one table for which data deletion is desired can be set.

체크부(120)는 데이터베이스 스케줄링 어플리케이션에서 데이터베이스(170)에 접근을 하기 위해, 데이터베이스(170)의 상태를 체크한다. 데이터베이스(170)의 상태가 Running이면 데이터베이스(170) 접근이 가능하고, 데이터베이스(170)의 상태가 Stop 또는 Pause이면 데이터베이스(170) 접근이 불가능하다. 여기서 데이터베이스(170)에 접근이 가능하다 함은 데이터베이스(170)로의 데이터 입출력이 가능한 상태를 나타내고, 데이터베이스(170)에 접근이 불가능하다 함은 데이터베이스(170)로의 데이터 입출력이 불가능한 상태를 나타낸다.The check unit 120 checks the state of the database 170 to access the database 170 in the database scheduling application. If the state of the database 170 is Running, the database 170 can be accessed. If the state of the database 170 is Stop or Pause, the database 170 can not be accessed. Here, the access to the database 170 indicates that the data input / output to the database 170 is possible, and the access to the database 170 indicates that the data input / output to the database 170 is impossible.

체크부(120)의 데이터베이스(170) 체크 결과, 데이터베이스(170)가 접근이 가능한 상태인 경우, 인증부(130)는 사용자 식별 정보로서의 ID 및 비밀번호를 수신하여 사용자를 인증한다.If it is determined that the database 170 can be accessed as a result of checking the database 170 of the check unit 120, the authentication unit 130 receives the ID and the password as the user identification information and authenticates the user.

질의 요청부(140)는 데이터베이스(170) 내의 데이터 삭제를 위한 질의 요청을 수행하는데, SQL Store Procedure를 호출하여, SQL Query File에 접근한다. 즉, 설정부(110)에서 설정한 적어도 하나 이상의 테이블에 대하여 데이터 삭제를 수행하겠다는 질의 요청을 수행한다.The query request unit 140 performs a query request for data deletion in the database 170, and calls the SQL Store Procedure to access the SQL Query File. That is, a query request to perform data deletion is performed on at least one table set by the setting unit 110.

타이머(150)는 OS에서 획득한 현재시간부터 설정된 데이터베이스 스케줄링 시간을 카운트 한다.The timer 150 counts the database scheduling time set from the current time acquired by the OS.

삭제부(160)는 타이머(150)의 시간 카운트에 의해, 현재 시간이 설정된 데이터베이스 스케줄링 시간인 경우, 질의 요청에 의해 데이터베이스(170) 내의 설정된 테이블의 데이터를 삭제한다. 여기서 삭제되는 데이터는 시간상으로 오래된 데이터를 우선순위로 하여 삭제할 수 있다. 삭제부(150)의 데이터 삭제는 설정된 데이터베이스 스케줄링 시간 마다 정기적으로 수행된다.The deletion unit 160 deletes the data of the table set in the database 170 by the inquiry request when the current time is the database scheduling time set by the time count of the timer 150. [ The data deleted here can be deleted with the old data as a priority in time. The data deletion of the deletion unit 150 is performed periodically at every predetermined database scheduling time.

데이터베이스(170) 내의 설정된 테이블의 데이터가 삭제되면, 체크부(120)는 테이블의 데이터 업데이트 상황을 체크하고 사용자에게 테이블 내의 데이터가 삭제되었음을 알리는 메시지를 발송한다.When the data of the set table in the database 170 is deleted, the check unit 120 checks the data update status of the table and sends a message to the user that the data in the table has been deleted.

도 3에는 데이터 베이스 스케줄링 시작 시간, 데이터베이스 스케줄링 워크 플로우 및 데이터베이스 스케줄링 예약 시간을 포함하여 데이터베이스 스케줄러 구성 화면이 도시되어 있다.FIG. 3 shows a database scheduler configuration screen including a database scheduling start time, a database scheduling workflow, and a database scheduling reservation time.

데이터베이스를 생성하고 테이블을 만들면, 이를 관리하기 위한 기능이 필요하게 된다. 테이블에 많은 양의 데이터가 기록될 때, 데이터베이스 스케줄링을 통하여 오래된 데이터를 자동적으로 체크하여 삭제해 주므로 시스템의 부하를 줄여줄 수 있다. 또한 데이터베이스를 사용하는 여러 분야에서 자동으로 백업 및 복원을 추가적으로 개발하여 사용할 수 있다.When you create a database and create a table, you need the ability to manage it. When a large amount of data is recorded in the table, the system load can be reduced because the old data is automatically checked and deleted through the database scheduling. You can also develop and use additional backups and restores automatically in many areas that use the database.

도 2는 본 발명에 따른 데이터베이스 관리 방법의 동작을 보이는 흐름도 이다.2 is a flow chart illustrating the operation of the database management method according to the present invention.

도 2를 참조하면, 데이터베이스에 저장된 데이터를 설정된 시간마다 삭제할 수 있는 어플리케이션으로서, 데이터베이스 스케줄링 어플리케이션을 실행하는 단계를 수행한다(S201).Referring to FIG. 2, a step of executing a database scheduling application is performed as an application capable of deleting data stored in a database at a set time (S201).

데이터베이스 스케줄링 어플리케이션이 실행되면, 데이터베이스(170) 내에 존재하는 복수개의 테이블 중 데이터 삭제를 원하는 테이블을 적어도 하나 이상 설정하는 단계(S203)를 수행한다.When the database scheduling application is executed, a step (S203) of setting at least one table among the plurality of tables existing in the database 170 to delete data is performed.

데이터 삭제를 원하는 적어도 하나 이상의 테이블 설정이 완료되면, OS로부터 현재 시간을 획득하는 단계(S205)를 수행한다.When at least one table setting for desiring to delete data is completed, a step of obtaining a current time from the OS (S205) is performed.

OS로부터 현재 시간이 획득되면, 현재 시간을 밀리 세컨드 단위로 정기적인 스케줄링 시간을 설정하는 단계(S207)를 수행한다. 여기서 스케줄링 시간은 설정된 테이블의 데이터 삭제 시간을 나타낸다.When the current time is obtained from the OS, step (S207) of setting a regular scheduling time in units of milliseconds is performed for the current time. Here, the scheduling time indicates the data deletion time of the set table.

이어서, 데이터베이스 스케줄링 어플리케이션에서 데이터베이스(170)에 접근을 하기 위해, 데이터베이스(170)의 상태를 체크하는 단계(S209)를 수행한다. 데이터베이스(170)의 상태가 Running이면 데이터베이스(170) 접근이 가능하고, 데이터베이스(170)의 상태가 Stop 또는 Pause이면 데이터베이스(170) 접근이 불가능하다.Then, in order to access the database 170 in the database scheduling application, a step of checking the status of the database 170 (S209) is performed. If the state of the database 170 is Running, the database 170 can be accessed. If the state of the database 170 is Stop or Pause, the database 170 can not be accessed.

데이터베이스(170)가 활성화 상태인지 판단하는 단계(S211)를 거쳐, 데이터베이스(170)가 활성화 상태인 경우, 사용자 식별 정보로서의 ID 및 비밀번호를 수신하여 사용자를 인증하는 단계(S213)를 수행한다.In a case where the database 170 is in the active state via the step S211 of determining whether the database 170 is in the activated state, the step S213 of receiving the ID and the password as the user identification information and authenticating the user is performed.

사용자 인증이 완료되면, 설정한 적어도 하나 이상의 테이블에 대하여 데이터 삭제를 수행하겠다는 질의 요청을 수행하는 단계(S215)를 수행한다.When the user authentication is completed, a step S215 of performing a query request to perform data deletion for the set at least one table is performed.

이후, 현재 시간이 설정된 데이터베이스 스케줄링 시간인가를 판단하는 단계(S217)를 거쳐, 현재 시간이 설정된 데이터베이스 스케줄링 시간이 아닌 경우, 시간을 카운트 하는 단계(S219)를 수행한다.Thereafter, in step S217, it is determined whether the current time is a set database scheduling time. If the current time is not the set database scheduling time, a step S219 is performed.

그러나, 현재 시간이 설정된 데이터베이스 스케줄링 시간인 경우, 질의 요청에 의해 데이터베이스(170) 내의 설정된 테이블의 데이터를 삭제하는 단계(S221)를 수행한다. 데이터 삭제는 설정된 데이터베이스 스케줄링 시간 마다 정기적으로 수행되고, 삭제되는 데이터는 시간상으로 오래된 데이터를 우선순위로 하여 삭제할 수 있다. However, if the current time is the set database scheduling time, a step S221 of deleting data of a table set in the database 170 by a query request is performed. The data deletion is performed periodically at a predetermined database scheduling time, and data to be deleted can be deleted in time with old data as a priority.

테이블의 데이터가 삭제된 후, 테이블의 데이터 업데이트 상황 즉, 테이블 내의 데이터가 삭제되었음을 확인하는 단계(S223)를 수행한다.After the data of the table is deleted, step S223 is performed to confirm that the data update state of the table, that is, the data in the table has been deleted.

한편, 본 발명은 컴퓨터로 읽을 수 있는 기록 매체에 컴퓨터가 읽을 수 있는 코드로 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록 매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록 장치를 포함한다.Meanwhile, the present invention can be embodied in computer readable code on a computer readable recording medium. A computer-readable recording medium includes all kinds of recording apparatuses in which data that can be read by a computer system is stored.

컴퓨터가 읽을 수 있는 기록 매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광 데이터 저장장치 등을 포함한다. 또한, 컴퓨터가 읽을 수 있는 기록 매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산 방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다. 그리고 본 발명을 구현하기 위한 기능적인(functional) 프로그램, 코드 및 코드 세그먼트들은 본 발명이 속하는 기술 분야의 프로그래머들에 의하여 용이하게 추론될 수 있다.Examples of the computer-readable recording medium include ROM, RAM, CD-ROM, magnetic tape, floppy disk, optical data storage, and the like. In addition, the computer-readable recording medium may be distributed over network-connected computer systems so that computer readable codes can be stored and executed in a distributed manner. In addition, functional programs, codes, and code segments for implementing the present invention can be easily deduced by programmers skilled in the art to which the present invention belongs.

이제까지 본 발명에 대하여 바람직한 실시 예를 중심으로 살펴보았다. 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 본 발명을 구현할 수 있음을 이해할 것이다. 그러므로 상기 개시된 실시 예들은 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다. 본 발명의 범위는 전술한 설명이 아니라 특허청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 발명에 포함된 것으로 해석되어야 한다.The present invention has been described above with reference to preferred embodiments. It will be understood by those skilled in the art that the present invention may be embodied in various other forms without departing from the spirit or essential characteristics thereof. Therefore, the above-described embodiments should be considered in an illustrative rather than a restrictive sense. The scope of the present invention is indicated by the appended claims rather than by the foregoing description, and all differences within the scope of equivalents thereof should be construed as being included in the present invention.

본 발명에서 인용하는 공개 문헌, 특허 출원, 특허 등을 포함하는 모든 문헌들은 각 인용 문헌이 개별적으로 및 구체적으로 병합하여 나타내는 것 또는 본 발명에서 전체적으로 병합하여 나타낸 것과 동일하게 본 발명에 병합될 수 있다.All documents, including publications, patent applications, patents, etc., cited in the present invention may be incorporated into the present invention in the same manner as each cited document is shown individually and specifically in conjunction with one another, .

110: 설정부
120: 체크부
130: 인증부
140: 질의 요청부
150: 타이머
160: 삭제부
170: 데이터베이스
110: Setting section
120:
130:
140:
150: Timer
160:
170: Database

Claims (9)

컴퓨텅 장치에서 수행되는 데이터베이스 관리 방법에 있어서,
상기 데이터베이스에 저장된 데이터를 설정된 시간마다 삭제할 수 있는 어플리케이션으로서 데이터베이스 스케줄링 어플리케이션을 실행하는 단계;
상기 데이터베이스 스케줄링 어플리케이션이 실행되면 상기 데이터베이스 내에 존재하는 복수개의 테이블 중 데이터 삭제를 원하는 테이블을 하나 이상 설정하는 단계;
상기 데이터 삭제를 원하는 하나 이상의 테이블 설정이 완료되면 OS로부터 현재 시간을 획득하는 단계;
상기 OS로부터 현재 시간이 획득되면 정기적인 스케줄링 시간을 설정하는 단계;
상기 데이터베이스 스케줄링 어플리케이션에서 상기 데이터베이스에 접근하기 위해 상기 데이터베이스의 활성화/비활성화 상태를 체크하는 단계;
상기 데이터베이스가 활성화 상태인 경우, 상기 데이터베이스 내의 데이터 삭제를 위한 질의 요청을 수행하는 단계;
현재 시간이 상기 설정된 데이터베이스 스케줄링 시간인 경우, 상기 질의 요청에 의해 상기 데이터베이스 내의 설정된 테이블의 데이터를 삭제하는 단계; 및
상기 데이터베이스 내의 설정된 테이블의 데이터를 상기 스케줄링 시간마다 정기적으로 수행하는 단계;를 포함하는 것을 특징으로 하는 데이터베이스 관리 방법.
A database management method performed in a computing device,
Executing a database scheduling application as an application capable of deleting data stored in the database at predetermined time intervals;
Setting at least one table for which data deletion is desired among a plurality of tables existing in the database when the database scheduling application is executed;
Acquiring a current time from the OS when at least one table setting for the data deletion is completed;
Setting a periodic scheduling time when a current time is obtained from the OS;
Checking an activation / deactivation state of the database to access the database in the database scheduling application;
Performing a query request for deleting data in the database when the database is in an active state;
If the current time is the preset database scheduling time, deleting data of a table set in the database by the inquiry request; And
And periodically performing data of a table set in the database at each scheduling time.
삭제delete 삭제delete 삭제delete 제 1항에 있어서,
상기 테이블 내의 데이터를 삭제하는 단계 후,
상기 테이블의 상태가 업데이트 되었는지 확인하는 단계;를 더 포함하는 것을 특징으로 하는 데이터베이스 관리 방법.
The method according to claim 1,
After the step of deleting data in the table,
Further comprising: checking whether the state of the table is updated.
삭제delete 삭제delete 삭제delete 삭제delete
KR1020120039286A 2012-04-16 2012-04-16 Apparatus and method for management of database KR101716182B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020120039286A KR101716182B1 (en) 2012-04-16 2012-04-16 Apparatus and method for management of database

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020120039286A KR101716182B1 (en) 2012-04-16 2012-04-16 Apparatus and method for management of database

Publications (2)

Publication Number Publication Date
KR20130116678A KR20130116678A (en) 2013-10-24
KR101716182B1 true KR101716182B1 (en) 2017-03-14

Family

ID=49635693

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020120039286A KR101716182B1 (en) 2012-04-16 2012-04-16 Apparatus and method for management of database

Country Status (1)

Country Link
KR (1) KR101716182B1 (en)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR0165510B1 (en) * 1996-01-22 1999-01-15 김광호 Table of database management system
JP4287990B2 (en) * 2000-07-07 2009-07-01 インターナショナル・ビジネス・マシーンズ・コーポレーション Network system, terminal management system, terminal management method, data processing method, recording medium, and Internet service providing method
US20090119669A1 (en) * 2007-11-06 2009-05-07 David Everton Norman User-specified configuration of scheduling services
KR101335038B1 (en) * 2011-08-26 2013-11-29 강원대학교산학협력단 Periodic and aperiodic task scheduling algorithm based on topological sort and residual time

Also Published As

Publication number Publication date
KR20130116678A (en) 2013-10-24

Similar Documents

Publication Publication Date Title
US10810051B1 (en) Autoscaling using file access or cache usage for cluster machines
US8818989B2 (en) Memory usage query governor
US20080313639A1 (en) Policy based scheduling of software applications
US9535750B1 (en) Resource tolerations and taints
JPH11353196A (en) Governor for time-scheduled process management
US8661067B2 (en) Predictive migrate and recall
US8583608B2 (en) Maximum allowable runtime query governor
CN108173840B (en) Intelligent logistics terminal integration system based on cloud platform
KR20070054942A (en) Method and system for collecting and restoring application states
CN110109741B (en) Method and device for managing circular tasks, electronic equipment and storage medium
EP2674868A1 (en) Database update notification method
US9325722B2 (en) Apparatus, method, and computer-readable medium
CN111459629A (en) Azkaban-based project operation method and device and terminal equipment
WO2013070814A2 (en) Managing capacity in a data center by suspending tenants
JP5987987B2 (en) Resource management system, resource management method, and program
KR101716182B1 (en) Apparatus and method for management of database
CN107632893B (en) Message queue processing method and device
JP2009037544A (en) Data base processing method, and implementation system and program therefor
CN112540886A (en) CPU load value detection method and device
CN110333883B (en) Method and device for updating persistent data
US10140155B2 (en) Dynamically provisioning, managing, and executing tasks
CN107209882B (en) Multi-stage de-registration for managed devices
CN114945909B (en) Optimized query scheduling for resource utilization optimization
CN112988365B (en) Thread management method, device, equipment and medium
US10552418B2 (en) Optimization of first set of ordered items and delayed non-duplicated work queue

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
FPAY Annual fee payment

Payment date: 20200225

Year of fee payment: 4