KR20120077830A - 자동화된 정보 추출 서비스를 제공하는 방법 및 그 단말기와 서버 - Google Patents

자동화된 정보 추출 서비스를 제공하는 방법 및 그 단말기와 서버 Download PDF

Info

Publication number
KR20120077830A
KR20120077830A KR1020100139922A KR20100139922A KR20120077830A KR 20120077830 A KR20120077830 A KR 20120077830A KR 1020100139922 A KR1020100139922 A KR 1020100139922A KR 20100139922 A KR20100139922 A KR 20100139922A KR 20120077830 A KR20120077830 A KR 20120077830A
Authority
KR
South Korea
Prior art keywords
information
query
query statement
user
terminal
Prior art date
Application number
KR1020100139922A
Other languages
English (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 KR1020100139922A priority Critical patent/KR20120077830A/ko
Publication of KR20120077830A publication Critical patent/KR20120077830A/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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/80Information retrieval; Database structures therefor; File system structures therefor of semi-structured data, e.g. markup language structured data such as SGML, XML or HTML
    • G06F16/83Querying
    • G06F16/835Query processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

본 발명은 자동화된 정보 추출 서비스를 제공하는 방법 및 그 단말기와 서버에 관한 것으로, 보다 상세하게는 온라인 서비스 운영에 필요한 여러 데이터베이스(Database-DB)들에 있는 원하는 정보를 사용자들이 쉽게 얻을 수 있도록 하기 위하여, 정보를 요청하는 사용자가 단말기를 이용하여 서버에 질의를 요청하면, 상기 질의에 상응하는 쿼리문을 제공하고, 사용자가 상기 쿼리문을 실행하여 데이터베이스로부터 필요한 정보를 추출할 수 있는 자동화된 정보 추출 서비스를 제공하는 방법 및 그 단말기와 서버에 관한 것이다.
이를 위하여 서버에서 자동화된 정보 추출 서비스를 제공하는 방법은, 단말기로부터 수신한 사용자 정보를 이용하여 사용자 인증을 하는 단계와 사용자DB(Database)를 이용하여 상기 사용자 인증을 거친 사용자의 권한을 확인하는 단계와 상기 권한에 맞는 인터페이스(Interface) 정보를 상기 단말기로 전송하는 단계와 상기 단말기로부터 정보 추출을 위한 질의 요청을 수신하는 단계와 상기 질의 요청에 상응하는 쿼리(query)문을 생성하는 단계와 상기 생성한 쿼리문을 상기 단말기로 전송하는 단계와 상기 단말기로부터 상기 쿼리문의 실행 요청을 수신하는 단계와 상기 쿼리문을 실행하여 정보DB로부터 정보를 추출하는 단계 및 상기 추출된 정보를 상기 단말기로 전송하는 단계를 포함한다.
이에 따라, 질의 요청, 쿼리문 제공 및 쿼리문 실행에 따른 정보 추출 과정이 자동화되어 불필요한 절차에 따른 시간 소비와 비용을 줄일 수 있어 업무 효율이 높아진다.

Description

자동화된 정보 추출 서비스를 제공하는 방법 및 그 단말기와 서버{Method, device and server for providing automated information extraction service}
본 발명은 자동화된 정보 추출 서비스를 제공하는 방법 및 그 단말기와 서버에 관한 것으로, 보다 상세하게는 온라인 서비스 운영에 필요한 여러 데이터베이스(Database-DB)들에 있는 원하는 정보를 사용자들이 쉽게 얻을 수 있도록 하기 위하여, 정보를 요청하는 사용자가 단말기를 이용하여 서버에 질의를 요청하면, 상기 질의에 상응하는 쿼리문을 제공하고, 사용자가 상기 쿼리문을 실행하여 데이터베이스로부터 필요한 정보를 추출할 수 있는 자동화된 정보 추출 서비스를 제공하는 방법 및 그 단말기와 서버에 관한 것이다.
데이터베이스(DB-Database)는 여러 응용 시스템들의 통합된 정보들을 저장하여 운영할 수 있는 공용 데이터들의 묶음으로, 여러 사람에 의해 공유되어 사용될 목적으로 통합 관리되는 정보의 집합이다. 논리적으로 연관된 하나 이상의 자료의 모아 그 내용을 고도로 구조화함으로써 검색과 갱신의 효율화를 꾀하였다. 즉, 몇 개의 자료 파일을 조직적으로 통합하여 자료 항목의 중복을 없애고 자료를 구조화하여 기억시켜 놓은 자료의 집합체이다.
데이터베이스는 똑같은 자료를 중복하여 저장하지 않는 통합된 자료를 저장할 수 있어야 한다. 또한, 컴퓨터가 액세스하여 처리할 수 있는 저장장치에 수록된 자료로 어떤 조직의 기능을 수행하는 데 없어서는 안 되는 존재 목적이 뚜렷하고 유용성 있는 운영 자료이기 때문에 임시로 필요해서 모아 놓은 데이터나 단순한 입출력 자료가 아니다. 한 조직에서 가지는 데이터베이스는 그 조직 내의 모든 사람들이 소유하고 유지하며 이용하는 공동 자료로서 각 사용자는 같은 데이터라 할지라도 각자의 응용 목적에 따라 다르게 사용할 수 있다.
데이터베이스를 설계한 후에는 데이터베이스 관리 시스템(DBMS - Database Management System)을 사용해야 하고, 상기 데이터베이스 관리 시스템에서 자료의 검색과 관리, 데이터베이스 스키마 생성과 수정, 데이터베이스 객체 접근 조정 관리를 위해 고안된 컴퓨터 언어도 사용해야 한다. 상기 데이터베이스 관리 시스템을 위한 컴퓨터 언어로 많은 수의 데이터베이스 관련 프로그램들이 SQL(Structured Query Language-구조화 질의어)을 표준으로 채택하고 있다.
이러한 SQL과 같은 컴퓨터 언어를 통하여 데이터베이스를 관리하는 것은 훨씬 더 용이해졌지만, 데이터베이스로부터 정보를 필요로 하는 모든 사용자가 SQL을 알지 못하기 때문에 정보를 얻기 위해서는 SQL에 능통한 데이터베이스 관리 시스템의 담당자를 항상 통해야 하는 불편함이 있다.
그에 따라, SQL과 같은 컴퓨터 언어를 알지 못하는 사용자가 정보를 추출하기 위해서는, 별도의 데이터베이스 관리 시스템의 담당자를 통하여야 하는 등의 여러 단계의 업무 프로세스를 거쳐야 하기 때문에 이로 인하여 소요 시간이 증가하고 그에 따라 비용이 많이 드는 문제점이 있다.
또한, 데이터베이스로부터 정보를 추출함에 있어, 반복되거나 유사한 질의에 대해 동일한 추출 작업을 반복하는 불편함이 있었고, 특히 대용량 데이터 추출작업 있어서 과거의 정보 추출 결과를 저장하고 있지 않아서 대량의 full-scan 쿼리 실행으로 데이터베이스의 부하가 증가하였다.
또한, 사용자가 데이터베이스의 모든 정보에 대해서 모든 접근 권한을 가지고 있는 경우는 드물다. 정보 열람에 있어 보안이 요구되므로 데이터베이스에 대한 적절한 접근 권한을 부여하고, 그에 상응하면 정보를 추출할 수 있도록 해야 하기 때문이다. 하지만, 질의 요청을 하는 사용자는 본인에게 접근 권한이 있는 데이터베이스인지 판단하기가 용이하지 않고, 데이터베이스의 담당자로부터 권한이 없음을 통지받거나 접근 불가 메세지가 나오면 그때서야 접근 권한이 없음을 아는 경우가 많아서 불필요한 시간을 낭비하는 경우가 있다.
본 발명은 상술한 문제점을 해결하기 위하여 창출된 것으로, 사용자가 단말기를 통하여 서버에 질의 요청을 하면, 서버에서 상기 질의에 해당하는 쿼리문을 제공하고 사용자는 상기 제공된 쿼리문을 이용하여 원하는 정보를 쉽게 얻을 수 있는 자동화된 정보 추출 서비스를 제공하는 방법을 제공하는 데 목적이 있다.
또한 적어도 한번 요청된 질의 및 쿼리문을 별도로 데이터베이스화하여 저장 및 관리함으로써 검색 조건을 유동적으로 변경하며 원하는 정보를 쉽게 얻을 수 있도록 하여 데이터베이스의 부하을 줄이는 데 또 다른 목적이 있다.
상기의 목적을 달성하기 위한 본 발명에 따른 서버에서 자동화된 정보 추출 서비스를 제공하는 방법은, 단말기로부터 수신한 사용자 정보를 이용하여 사용자 인증을 하는 단계와 사용자DB(Database)를 이용하여 상기 사용자 인증을 거친 사용자의 권한을 확인하는 단계와 상기 권한에 맞는 인터페이스(Interface) 정보를 상기 단말기로 전송하는 단계와 상기 단말기로부터 정보 추출을 위한 질의 요청을 수신하는 단계와 상기 질의 요청에 상응하는 쿼리(query)문을 생성하는 단계와 상기 생성한 쿼리문을 상기 단말기로 전송하는 단계와 상기 단말기로부터 상기 쿼리문의 실행 요청을 수신하는 단계와 상기 쿼리문을 실행하여 정보DB로부터 정보를 추출하는 단계 및 상기 추출된 정보를 상기 단말기로 전송하는 단계를 포함한다.
또한, 본 발명은 상기의 방법을 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 매체도 포함한다.
상기의 목적을 달성하기 위한 본 발명에 따른 단말기에서 자동화된 정보 추출 서비스를 제공하는 방법은, 사용자 정보를 서버로 전송하고 사용자 인증을 요청하는 단계와 상기 사용자 인증이 완료된 경우 서버로부터 인터페이스 정보를 수신하는 단계와 상기 인터페이스 정보에 따른 인터페이스를 생성하는 단계와 상기 서버로 정보 추출을 위한 질의 요청을 하는 단계와 상기 질의 요청에 상응하는 쿼리문을 서버로부터 수신하는 단계와 상기 수신한 쿼리문의 실행을 요청하는 단계 및 상기 쿼리문의 실행 결과에 따른 추출된 정보를 수신하는 단계를 포함한다.
또한, 본 발명은 상기의 방법을 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 매체도 포함한다.
본 발명에 따른 자동화된 정보 추출 서비스를 제공하는 서버는, 단말기로부터 수신한 사용자 정보를 이용하여 사용자 인증을 하는 사용자인증부와 사용자DB를 이용하여 상기 사용자 인증을 거친 사용자의 권한을 확인하고, 상기 권한에 맞는 인터페이스 정보를 상기 단말기로 전송하는 권한확인부와 상기 단말기로부터 정보 추출을 위한 질의 요청을 수신하는 질의수신부와 상기 질의수신부에서 수신한 질의 요청에 상응하는 쿼리문을 생성하는 쿼리문생성부와 상기 생성한 쿼리문을 상기 단말기로 전송하는 쿼리문전송부와 상기 단말기로부터 상기 쿼리문의 실행 요청을 수신하는 실행요청수신부와 상기 쿼리문을 실행하여 정보DB로부터 정보를 추출하는 쿼리문실행부 및 상기 쿼리문실행부에서 추출한 정보를 상기 단말기로 전송하는 정보전송부를 포함한다.
본 발명에 따른 자동화된 정보 추출 서비스를 제공하는 단말기는, 사용자 정보를 서버로 전송하고 사용자 인증을 요청하는 인증요청부와 상기 사용자 인증이 완료된 경우에 상기 서버로부터 수신한 인터페이스 정보에 따라 인터페이스를 생성하는 인터페이스생성부와 상기 서버로 정보 추출을 위한 질의 요청을 하는 질의요청부와 상기 질의 요청에 상응하는 쿼리문을 서버로부터 수신하는 쿼리문수신부와 상기 수신한 쿼리문의 실행을 요청하는 실행요청부 및 상기 쿼리문의 실행 결과에 따른 추출된 정보를 수신하는 정보수신부를 포함한다.
본 발명에 따른 자동화된 정보 추출 서비스를 제공하는 방법 및 그 단말기와 서버에 의하면,
첫째, 질의 요청, 쿼리문 제공 및 쿼리문 실행에 따른 정보 추출 과정이 자동화되어 불필요한 절차에 따른 시간 소비와 비용을 줄일 수 있어 업무 효율이 높아진다.
둘째, 질의 요청을 한 사용자는 별도의 데이터베이스 담당자를 거치지 않더라도 제공받은 쿼리문으로 조건을 바꿔가면서 원하는 정보를 손쉽게 취득할 수 있다.
셋째, 자주 요청되는 질의와 쿼리문을 별도의 데이터베이스에 저장하여 관리함으로써 반복된 요청이나 불필요한 비용 및 데이터베이스의 부하를 줄일 수 있다.
넷째, 질의 요청에 따른 쿼리문도 별도로 저장함으로써 질의 이력 관리가 용이하다.
다섯째, 사용자가 질의를 요청하기 전에 권한 여부를 먼저 확인함으로써 보안이 강화되고, 시간 및 비용 낭비를 줄일 수 있다.
도 1은 자동화된 정보 추출 서비스를 제공하는 시스템의 기능블록도이고,
도 2는 인증이 완료된 후 단말기의 사용자가 보게 되는 웹 브라우저의 실시 예이고,
도 3a와 도 3b는 단말기에서 질의 요청을 하는 실시 예이고,
도 4는 DB 담당자가 질의 요청에 해당하는 쿼리를 등록하는 실시 예이고,
도 5a와 도 5b는 쿼리문수신부에서 쿼리문을 수신하여 사용자가 볼 수 있도록 사용자 인터페이스에 출력하는 실시 예이고,
도 6은 서버에서 자동화된 정보 추출 서비스를 제공하는 방법의 흐름도이고,
도 7은 단말기에서 자동화된 정보 추출 서비스를 제공하는 방법의 흐름도이다.
이하 첨부된 도면을 참조하면서 본 발명에 따른 바람직한 실시 예를 상세히 설명하기로 한다. 이에 앞서, 본 명세서 및 청구범위에 사용된 용어나 단어는 통상적이거나 사전적인 의미로 한정해서 해석되어서는 아니 되며, 발명자는 그 자신의 발명을 가장 최선의 방법으로 설명하기 위해 용어의 개념을 적절하게 정의할 수 있다는 원칙에 입각하여, 본 발명의 기술적 사상에 부합하는 의미와 개념으로 해석되어야만 한다.
따라서, 본 명세서에 기재된 실시 예와 도면에 도시된 구성은 본 발명의 가장 바람직한 일 실시 예에 불과할 뿐이고 본 발명의 기술적 사상을 모두 대변하는 것은 아니므로, 본 출원시점에 있어서 이들을 대체할 수 있는 다양한 균등물과 변형 예들이 있을 수 있음을 이해하여야 한다.
도 1은 자동화된 정보 추출 서비스를 제공하는 시스템의 기능블록도로, 상기 도 1을 참조하여 자동화된 정보 추출 서비스를 제공하는 시스템을 설명한다.
다만, 그에 앞서 데이터베이스(Database, 이하 'DB'라고 한다.)에 정보를 요청하는 방법, 즉 쿼리를 하는 방법을 살펴보면, 첫 번째 방법은 메뉴에서 매개변수를 선택하는 방법이다. DB 시스템이 사용자가 선택할 수 있는 매개변수 목록을 제시하면 사용자가 목록 중에서 선택하여 쿼리를 하면 되는 것으로, 가장 쉬운 방법이지만 유연하지 못하다는 단점이 있다.
DB에 정보를 요청하는 두 번째 방법으로 예제에 의한 쿼리(QBE-Query By Example)를 이용하는 방법이 있다. DB 시스템은 비어있는 레코드(프로그램에 의해 처리되기 위해 정렬된 데이터 항목의 집합)를 제시하고, 사용자가 쿼리를 정의하기 위해 필드 값을 채워 넣도록 한다.
DB에 정보를 요청하는 세 번째 방법으로 DB 시스템이 사용자에게 특별한 쿼리 언어도 쓰여진 정형화된 쿼리 문장의 형태로 정보를 요청하도록 하는 방법이다. 이 방법은 사용자가 특수한 언어를 배워야하므로 가장 복잡한 방법이지만, 가장 강력한 방법이기도 하다.
본 발명에서는 세 번째 방법을 실시 예로 들어 설명하도록 한다. 따라서 단말기(100)의 사용자가 질의 요청을 하면 그에 상응하는 쿼리문을 생성하고 등록하고, 상기 쿼리문을 통하여 DB에서 정보를 추출하는 것을 특징으로 한다.
또한, DB의 관리는 오라클(oracle), 인포믹스(Infomix), 사이베이스(Sybase), DB2와 같은 RDBMS(Relational DataBase Management System-관계형 데이터베이스 관리 시스템)이나 겜스톤(Gemston), 오리온(Orion), O2와 같은 OODBMS(Object-Oriented DataBase Management System-객체 지향 데이터베이스 관리 시스템)을 이용하여 본 발명의 목적에 맞게 구현할 수 있다.
첨부한 도 1에 도시되어 있듯이, 본 발명의 실시 예에 따른 자동화된 정보 추출 서비스를 제공하는 시스템은 단말기(100), 서버(200), 사용자DB(300), 정보DB(400), 캐싱DB(500)를 포함하고, 네트워크(전화망, 인터넷, 무선 통신망 등 다양한 형태의 모든 네트워크를 포함)를 통하여 단말기(100)가 서버(200)에 연결되어 있다. 도 1에는 단말기(100)를 하나만 도시하였지만, 다수의 단말기(100)가 서버(200)에 연결될 수 있다.
단말기(100)는 DB에서 정보 추출을 원하는 사용자가 서버(200)에 접속하여 정보를 요청하고 수신하기 위한 것으로 상기 자동화된 정보 추출 서비스를 제공받는 인터넷 사용자 측에 구비된 단말기를 의미한다.
이러한 단말기(100)는 네트워크를 통해 서버(200)와의 접속 상태를 유지하여 자동화된 정보 추출 서비스를 구현하는 장치이며, 예컨대 퍼스널 컴퓨터, 핸드헬드 컴퓨터(handheld computer), PDA(Personal Digital Assistant), 휴대폰, 스마트폰 등과 같이 소정의 메모리 수단을 구비하고 소정의 마이크로프로세서를 탑재함으로써 소정의 연산 능력을 갖춘 단말기를 통칭하는 개념이다.
상기 단말기(100)는 인증요청부(110), 인터페이스생성부(120), 질의요청부(130), 쿼리문수신부(140), 실행요청부(150), 정보수신부(160)를 포함한다.
서버(200)는 상기 단말기(100)의 질의 요청에 대한 쿼리(query)문을 제공하고, 상기 쿼리문의 실행에 따른 정보를 DB로부터 추출하여 상기 단말기(100)로 제공하며, 사용자인증부(210), 권한확인부(220), 질의수신부(230), 쿼리문생성부(240), 쿼리문전송부(250), 실행요청수신부(260), 쿼리문실행부(270), 정보전송부(280)를 포함한다.
본 발명에서 쿼리(query-질의)문이란 데이터베이스 관리 시스템(Database Management System, 이하 'DBMS'라고 한다.)에서 자료의 검색과 관리, 데이터베이스 스키마 생성과 수정, 데이터베이스 객체 접근 조정 관리를 위해 고안된 컴퓨터 언어에 의한 정보 추출을 위한 명령문으로, DB에 저장된 특정한 정보를 추출하여 제공받고자하는 단말기(100)의 요청을 컴퓨터 언어로 표현한 것을 의미한다. 상기 컴퓨터 언어는 SQL(Structured Query Language-구조화 질의어)를 포함한 다양한 DB언어가 될 수 있다.
상기 인증요청부(110)는 사용자 정보를 서버(200)로 전송하고 사용자 인증을 요청한다. 통신망을 통하여 컴퓨터에 접속하는 사용자가 등록되어 있는 정당한 사용자인지의 여부를 판단하는 것은 보안의 측면에서 중요하다. 특히, DB에 대한 정보를 열람하는 권한은 사용자마다 다르기 때문에 정보의 보안을 위하여 정보에 접근할 수 있는 권한에 차별에 둠으로써 정보를 효과적으로 관리하고 정보의 유출을 막고자 한다. 따라서 DB를 이용함에 있어서도 사용자 인증이 필요하다.
상기 인증요청부(110)는 아이디(ID)와 비밀번호를 이용한 로그인 형태로 사용자 인증을 요청한다. 이외 공인인증서를 이용하는 등의 다양한 사용자 인증 방법이 가능하다.
상기 인증요청부(110)에서 사용자 정보를 서버(200)로 전송하면, 상기 사용자인증부(210)에서 수신한 사용자 정보를 이용하여 사용자 인증을 한다. 상기 사용자 정보는 아이디, 비밀번호, 이름 , 주민등록번호, 회사 사번 등 개인을 식별할 수 있는 사용자에 대한 정보를 의미하고, 상기 사용자 정보를 통하여 사용자DB(300)에서 상기 사용자에 관한 정보를 포함한 필요한 정보를 추출할 수 있다.
상기 사용자DB(300)는 본 발명의 실시 예에 따른 자동화된 정보 추출 서비스를 제공하는 시스템을 통하여 정보 추출 서비스를 이용할 수 있는 사용자들에 대한 정보가 저장되어 있다. 예를 들어, 사용자에게 할당된 식별자(사용자의 아이디)에 대응하여 로그인(login)을 위한 비밀번호, 주민 등록 번호, 성명, 생년월일, 우편 주소, 전자 메일 주소, 연락처(이동 전화 번호 또는 유선 전화 번호 등) 등의 사용자 정보가 저장되어 있고, 각 사용자별로 DB에 접근할 수 있는 접근 권한에 대한 정보도 저장되어 있다.
상기 사용자인증부(210)는 사용자의 성명과 암호 등을 사용자DB(300)를 이용하여 일괄적으로 관리하고, 암호를 이용한 인증용 프로토콜을 사용하여 사용자가 허가를 받은 본인이라는 사실을 인증한다. 유료로 제공된 인증 프로그램을 이용할 수 있으며, 그 외 쿠키를 이용하거나 아파치에서 제공하는 다른 인증모듈 등을 이용할 수 있다.
상기 권한확인부(220)는 상기 사용자DB(300)를 이용하여 상기 사용자 인증을 거친 사용자의 권한을 확인하고, 상기 권한에 맞는 인터페이스 정보를 상기 단말기(100)로 전송한다.
사용자 인터페이스(User Interface-UI)는 사용자(사람)과 사물 또는 시스템, 특히 기계, 컴퓨터 프로그램 등 사이에서 의사소통을 할 수 있도록 일시적 또는 영구적인 접근을 목적으로 만들어진 물리적, 가상적 매체를 의미한다. 사용자 인터페이스는 사용자들이 컴퓨터와 상호 작용하는 시스템으로 물리적인 하드웨어와 논리적인 소프트웨어 요소를 포함한다. 또한 사용자 인터페이스는 사용자가 시스템을 조작할 수 있는 입력 수단과 시스템이 사용자가 이용한 것에 대한 결과를 표시하는 출력 수단을 포함한다.
본 발명에서 인터페이스라고 함은 사용자 인터페이스 중에서 인터넷과 웹 브라우저를 통해 웹 페이지를 열람하고 조작하는 웹 기반 인터페이스를 의미한다. 단말기(100)의 사용자가 서버(200)로 질의 요청을 하고, 질의 요청에 따른 쿼리문 및 추출된 정보를 전송받기 위해서는, 질의 요청을 입력받고 그에 따른 결과를 출력해주기 위한 인터페이스가 필요한데, 웹 브라우저가 상기 인터페이스가 될 수 있다.
단말기(100)의 사용자의 권한에 따라서 접근할 수 있는 DB의 종류도 다르고, 접근이 가능한 DB에 대해서도 질의 요청을 할 수 있는 범위가 제한되어 있다. 따라서 상기 권한확인부(220)에서는 사용자의 권한을 확인하여 그에 따른 인터페이스 정보를 단말기(100)로 전송한다. 상기 인터페이스 정보는 사용자별로 접하는 웹 브라우저의 형태가 달라지도록 하기 위한 사용자가 접근 가능한 메뉴, 사용자가 이전에 요청했던 질의 요청 내역 및 정보 추출 결과 등 사용자 맞춤 형태의 콘텐츠가 포함된 인터페이스를 제공하기 위한 정보를 의미한다.
상기 인터페이스생성부(120)는 상기 권한확인부(220)로부터 수신한 인터페이스 정보를 바탕으로 사용자에게 적합한 인터페이스를 생성한다. 기본적인 인터페이스 형태는 유사하므로 세부적인 메뉴 내용, 보여지는 컨텐츠 목록 등이 사용자별로 다르게 생성된다. 도 2는 인증이 완료된 후 단말기(100)의 사용자가 보게 되는 웹 브라우저의 실시 예를 도시한 것으로, 상기 인터페이스생성부(120)에서 생성한 인터페이스의 실시 예이다.
상기 질의요청부(130)는 상기 서버(200)로 정보 추출을 위한 질의 요청을 한다. 도 3a와 도 3b는 단말기에서 질의 요청을 하는 실시예를 도시한 것으로 도 3b에서와 같이 질의 요청을 원하는 제목, 내용 및 개시유효기간을 입력하면 상기 질의 요청 정보를 질의요청부(130)에서 서버(200)로 전송한다. 도 3a는 도 3b를 통해 질의 요청한 목록을 표시하고, 질의 요청한 건에 대한 진행 상태도 표시해준다.
한편, 사용자가 질의 요청을 할 때에 적어도 하나의 조건에 따른 질의 요청이 가능한데, 상기 조건은 DB에서 쿼리문 수행시 인자값이 된다. 예를 들어, 온라인 게임에서 접속자 현황 정보가 필요한 경우 일별 또는 월별 접속자 현황 정보가 필요할 수 있고, 지역별 접속자 현황 정보가 필요할 수도 있으며, 레벨별 접속자 현황 정보가 필요할 수도 있다. 이럴 때 질의 요청은 접속자 현황 정보가 되고, 조건은 일 또는 월, 지역, 레벨이 된다. 따라서 상기 질의요청부(140)에서 적어도 하나의 조건에 따른 질의 요청을 할 수 있고, 서버(200)에서 상기 질의 요청에 따른 쿼리문을 생성하여 등록하면, 상기 쿼리문도 상기 조건에 대응하는 인자값에 따라 정보를 추출할 수 있도록 생성이 된다.
상기 전송된 질의 요청 정보는 서버(200)의 질의수신부(230)에서 수신한다.
상기 쿼리문생성부(240)는 상기 질의수신부(230)에서 수신한 질의 요청에 상응하는 쿼리문을 생성한다. 쿼리문을 생성은 질의 요청에 따라 DB의 담당자가 쿼리문을 작성하여 등록할 수도 있고, 상기 캐싱DB(500)를 이용하여 동일한 질의 요청에 대해서는 저장되어 있는 쿼리문을 이용하여 쿼리문을 생성할 수도 있다.
상기 캐싱DB(500)는 사용자들이 요청하는 DB 질의 및 질의 관련 쿼리문을 별도로 저장하고 있는 DB이다. 똑같은 질의가 반복적으로 요청되는 경우에는 질의 요청이 있을 때마다 그에 따른 쿼리문을 생성한다면 시간 및 비용적인 측면에서 비효율적이다. 따라서 질의 및 쿼리문을 별도로 저장하고 쿼리문의 실행으로 인하여 추출된 정보도 별도로 저장할 수 있다.
따라서 상기 쿼리문생성부(240)는 쿼리문을 생성할 때에 이후 생성된 쿼리문을 실행하여 추출한 정보를 상기 캐싱DB(500)에 별도로 저장할 것인지 설정할 수 있다. 상기 캐싱DB(500)에 별도로 저장하는 것으로 설정된 경우, 하기에 설명할 쿼리문실행부(270)는 정보DB(400)외에 캐싱DB(500)를 포함하여 쿼리문을 실행하여 정보를 추출한다.
하지만, 이전에 요청된 적이 없어서 캐싱DB(500)에 저장된 질의가 아닌 경우에는 DB 담당자가 질의 요청에 해당하는 쿼리문을 등록하여야 한다. 도 4는 DB 담당자가 질의 요청에 해당하는 쿼리를 등록하는 실시 예를 도시한 것으로, 캐싱DB(500)를 이용하여 자동으로 커리문이 등록되는 것보다 더 유연하고 상세한 정보를 사용자에게 제공할 수 있다는 장점이 있다. DB 담당자는 도 4에서와 같이 쿼리 실행시 질의를 요청한 사용자가 전달하고 싶은 유의사항, 쿼리가 실행되는 DB 인스턴스, 쿼리가 실행될 때에 사용될 인자값, 상기 인자값에 대한 설명 내용 등을 쿼리문을 생성하면서 함께 등록할 수 있다. 그외 쿼리문 실행 예상 시간 및 결과를 캐싱하는지 여부도 등록하여 사용자가 볼 수 있도록 할 수 있다.
상기 쿼리문전송부(250)는 상기 쿼리문생성부(240)에서 생성한 쿼리문을 상기 단말기(100)로 전송하고, 단말기(100)의 쿼리문수신부(140)에서는 전송한 쿼리문을 수신한다.
도 5a는 상기 쿼리문수신부(140)에서 쿼리문을 수신하여 사용자가 볼 수 있도록 사용자 인터페이스에 출력하는 실시 예를 도시한 것으로, 질의 요청이 완료는 상태는 붉은 색으로 표시하고 쿼리문이 등록되면 파란색으로 표시하였다.
또한, 도 5b는 도 5a의 목록에서 쿼리문이 등록되어 파란색으로 표시된 목록을 선택한 경우 출력되는 상세 페이지로, 질의 요청 내용과 그에 따라 등록된 쿼리문을 인자값을 포함한 실행에 필요한 정보와 함께 보여준다.
상기 실행요청부(150)는 상기 쿼리문수신부(140)에서 수신한 쿼리문의 실행의 요청한다. 상기 쿼리문을 실행한다는 것은 DBMS에서 쿼리문을 이용하여 DB에서 필요한 정보를 추출하는 것을 의미한다. 상기 도 5b에서 하단에서 인자값을 입력하고 '실행'버튼을 누르면, 실행 요청 신호가 서버(200)로 전송된다.
상기 실행요청수신부(260)에서는 상기 단말기(100)의 실행요청부(150)로부터 쿼리문의 실행 요청을 수신하고, 등록된 인자값 및 쿼리문 등 정보를 추출하기 위해 필요한 정보를 쿼리문실행부(270)로 전송한다.
상기 쿼리문실행부(270)는 상기 실행요청수신부(260)에서 전송받은 정보를 기초로 등록된 쿼리문을 실행하여 정보DB(500)로부터 정보를 추출한다. 상기 정보DB(500)는 일반적인 사용자들이 필요로 하는 정보들이 저장되어 있고, 도 1에서는 하나만 도시하였지만 복수 개가 될 수 있다.
또한, 상기에 설명한 바와 같이, 상기 쿼리문실행부(270)는 쿼리문생성부(240)에서 캐싱DB에 별도로 저장하는 것으로 설정된 쿼리문에 대해서는 캐싱DB(500)에 대해서 먼저 쿼리문을 실행하고, 상기 캐싱DB(500)에 없는 것에 대해서만 정보DB(400)를 이용하여 정보를 추출한다.
예를 들어, 일별 정보나 월별 정보와 같이 일정한 패턴에 의해 시계열로 결과값을 얻는 형태의 경우 DB 부하를 줄일 수 있는 효과가 크므로, 캐싱DB(500)를 이용할 수 있다. 5월의 접속자 현황에 대한 정보를 추출한 적이 있는데, 5월, 6월, 7월의 접속자 현황에 대한 정보를 추출해야 하는 경우, 5월의 접속자 현황에 대해서는 이미 추출한 적이 있고, 캐싱DB(500)에 추출 내역을 별도로 저장하는 것으로 설정되어 있다면 5월 정보는 캐싱DB(500)에서 바로 추출이 가능하고, 6월과 7월에 대해서만 정보DB(400)를 통하여 정보를 추출하면 된다. 다만, 이때에도 시간이라는 인자값만 달라지는 것이고 쿼리문도 이미 생성되어 있으므로 쿼리문도 캐싱DB(500)를 참고하면 바로 알 수 있다.
상기 정보전송부(280)가 상기 쿼리문실행부(270)에서 추출한 정보를 상기 단말기(100)로 전송하고, 단말기(100)의 정보수신부(160)에서 상기 쿼리문의 실행 결과에 따른 추출된 정보를 수신한다.
상기 추출된 정보는 사용자 인터페이스에 바로 CSV(Comma Separated Value) 형태의 파일로 전송할 수 있다. CSV 파일이란 컴퓨터에서 각 항목의 값들이 콤마에 의해 분리되는 일련의 아스키 텍스트 라인들로 구성되며, 레코드간의 구분은 '줄 바꿈'으로 구분된다. 따라서 CSV 파일은 어떤 테이블로부터 데이터를 추출한 다음, 관계형 데이터베이스 형태를 띠는 테이블 위주의 응용 프로그램 데이터로 쉽게 이용할 수 있는 길을 제공한다. 마이크로소프트 액셀 같은 프로그램은 CSV 파일을 잘 읽어들일 수 있다.
또한, 상기 정보전송부(280)는 단말기(100)의 사용자 인터페이스에 웹 브라우저상의 화면으로 바로 출력되도록 할 수 있고, 질의를 요청한 사용자의 메일로 파일 형태로 첨부되도록 하여 정보를 전송할 수도 있다.
한편, 도 6은 서버에서 자동화된 정보 추출 서비스를 제공하는 방법의 흐름도로, 상기 도 6을 참조하여 서버에서 자동화된 정보 추출 서비스를 제공하는 방법을 설명한다.
단말기로부터 수신한 사용자 정보를 이용하여 사용자 인증을 하고(S10), 사용자DB를 이용하여 상기 사용자가 권한을 확인하여(S20), 상기 권한에 맞는 인터페이스 정보를 상기 단말기로 전송한다(S30). 단말기로부터 질의 요청을 수신하면(S40), 상기 수신한 질의가 캐싱DB에 등록된 질의인지 판단한다(S50). 캐싱DB에 등록된 질의라면 캐싱DB에 저장된 쿼리문을 단말기로 전송하고(S60-Y), 캐싱DB에 등록되지 않은 질의라면 DB 담당자가 쿼리문을 생성하여 단말기로 전송한다(S60-N). 단말기로부터 상기 전송한 쿼리문에 대해서 실행 요청을 수신하면 캐싱DB 또는 정보DB로부터 요청받은 정보를 추출하여(S70), 추출된 정보를 단말기로 전송한다(S80).
본 발명은 서버에서 자동화된 정보 추출 서비스를 제공하는 방법을 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 매체도 포함한다.
도 7은 단말기에서 자동화된 정보 추출 서비스를 제공하는 방법의 흐름도로, 상기 도 7을 참조하여 단말기에서 자동화된 정보 추출 서비스를 제공하는 방법을 설명한다.
사용자 정보를 서버로 전송하고 사용자 인증을 요청한다(S90). 상기 사용자 정보를 바탕으로 인증을 완료한 경우 서버는 사용자의 권한을 확인하여 권한에 맞는 인터페이스 정보를 단말기로 전송해주는데, 상기 수신한 인터페이스 정보를 기초로 사용자 인터페이스를 생성한다(S100). 상기 사용자 인터페이스를 이용하여 서버에 정보 추출을 위한 질의 요청을 하고(S110), 상기 질의 요청에 상응하는 쿼리문을 서버로부터 수신한다(S120). 수신한 쿼리문의 실행을 요청하면(S130), 쿼리문 실행 결과에 따른 추출된 정보를 수신할 수 있다(S140).
또한, 본 발명은 단말기에서 자동화된 정보 추출 서비스를 제공하는 방법을 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 매체도 포함한다.
이상과 같이, 본 발명은 비록 한정된 실시예와 도면에 의해 설명되었으나, 본 발명은 이것에 의해 한정되지 않으며 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 본 발명의 기술 사상과 아래에 기재될 청구범위의 균등 범위 내에서 다양한 수정 및 변형이 가능함은 물론이다.
100 단말기 110 인증요청부
120 인터페이스생성부 130 질의요청부
140 쿼리문수신부 150 실행요청부
160 정보수신부 200 서버
210 사용자인증부 220 권한확인부
230 질의수신부 240 쿼리문생성부
250 쿼리문전송부 260 실행요청수신부
270 쿼리문실행부 280 정보전송부
300 사용자DB 400 정보DB
500 캐싱DB

Claims (10)

  1. (a) 단말기로부터 수신한 사용자 정보를 이용하여 사용자 인증을 하는 단계;
    (b) 사용자DB(Database)를 이용하여 상기 사용자 인증을 거친 사용자의 권한을 확인하는 단계;
    (c) 상기 권한에 맞는 인터페이스(Interface) 정보를 상기 단말기로 전송하는 단계;
    (d) 상기 단말기로부터 정보 추출을 위한 질의 요청을 수신하는 단계;
    (e) 상기 질의 요청에 상응하는 쿼리(query)문을 생성하는 단계;
    (f) 상기 생성한 쿼리문을 상기 단말기로 전송하는 단계;
    (g) 상기 단말기로부터 상기 쿼리문의 실행 요청을 수신하는 단계;
    (h) 상기 쿼리문을 실행하여 정보DB로부터 정보를 추출하는 단계; 및
    (i) 상기 추출된 정보를 상기 단말기로 전송하는 단계;를 포함하는 서버에서 자동화된 정보 추출 서비스를 제공하는 방법.
  2. 제 1 항에 있어서,
    상기 (e) 단계는,
    (j)상기 쿼리문을 실행하여 추출한 정보를 캐싱DB에 별도로 저장할 것인지 설정하는 단계;를 더 포함하는 것을 특징으로 하는 서버에서 자동화된 정보 추출 서비스를 제공하는 방법.
  3. 제 2 항에 있어서,
    상기 (h) 단계는,
    상기 (j) 단계에서 쿼리문을 실행하여 추출한 정보를 상기 캐싱DB에 별도로 저장하는 것으로 설정한 경우에, 상기 캐싱DB를 포함하여 쿼리문을 실행하여 정보를 추출하는 것을 특징으로 하는 서버에서 자동화된 정보 추출 서비스를 제공하는 방법.
  4. 제 1 항에 있어서,
    상기 (d) 단계에서 질의 요청은, 적어도 하나의 조건에 따른 질의 요청인 것을 특징으로 하고,
    상기 (g) 단계에서 쿼리문의 실행 요청은, 상기 (d) 단계에서 질의 요청시 설정한 조건에 따른 쿼리문의 실행 요청인 것을 특징으로 하는 서버에서 자동화된 정보 추출 서비스를 제공하는 방법.
  5. 제 1 항에 있어서,
    상기 (i) 단계는,
    상기 추출된 정보를 CSV(Comma Separated Value) 형태의 파일로 전송하는 것을 특징으로 하는 서버에서 자동화된 정보 추출 서비스를 제공하는 방법.
  6. 사용자 정보를 서버로 전송하고 사용자 인증을 요청하는 단계;
    상기 사용자 인증이 완료된 경우 서버로부터 인터페이스 정보를 수신하는 단계;
    상기 인터페이스 정보에 따른 인터페이스를 생성하는 단계;
    상기 서버로 정보 추출을 위한 질의 요청을 하는 단계;
    상기 질의 요청에 상응하는 쿼리문을 서버로부터 수신하는 단계;
    상기 수신한 쿼리문의 실행을 요청하는 단계; 및
    상기 쿼리문의 실행 결과에 따른 추출된 정보를 수신하는 단계;를 포함하는 단말기에서 자동화된 정보 추출 서비스를 제공하는 방법.
  7. 단말기로부터 수신한 사용자 정보를 이용하여 사용자 인증을 하는 사용자인증부;
    사용자DB를 이용하여 상기 사용자 인증을 거친 사용자의 권한을 확인하고, 상기 권한에 맞는 인터페이스 정보를 상기 단말기로 전송하는 권한확인부;
    상기 단말기로부터 정보 추출을 위한 질의 요청을 수신하는 질의수신부;
    상기 질의수신부에서 수신한 질의 요청에 상응하는 쿼리문을 생성하는 쿼리문생성부;
    상기 생성한 쿼리문을 상기 단말기로 전송하는 쿼리문전송부;
    상기 단말기로부터 상기 쿼리문의 실행 요청을 수신하는 실행요청수신부;
    상기 쿼리문을 실행하여 정보DB로부터 정보를 추출하는 쿼리문실행부; 및
    상기 쿼리문실행부에서 추출한 정보를 상기 단말기로 전송하는 정보전송부;를 포함하는 자동화된 정보 추출 서비스를 제공하는 서버.
  8. 제 7 항에 있어서,
    상기 쿼리문생성부는,
    상기 쿼리문을 실행하여 추출한 정보를 캐싱DB에 별도로 저장할 것인지 설정하는 것을 특징으로 하는 자동화된 정보 추출 서비스를 제공하는 서버.
  9. 제 8 항에 있어서,
    상기 쿼리문실행부는,
    상기 쿼리문생성부에서 추출한 정보를 상기 캐싱DB에 별도로 저장하는 것으로 설정한 경우, 상기 캐싱DB를 포함하여 쿼리문을 실행하여 정보를 추출하는 것을 특징으로 하는 자동화된 정보 추출 서비스를 제공하는 서버.
  10. 사용자 정보를 서버로 전송하고 사용자 인증을 요청하는 인증요청부;
    상기 사용자 인증이 완료된 경우에 상기 서버로부터 수신한 인터페이스 정보에 따라 인터페이스를 생성하는 인터페이스생성부;
    상기 서버로 정보 추출을 위한 질의 요청을 하는 질의요청부;
    상기 질의 요청에 상응하는 쿼리문을 서버로부터 수신하는 쿼리문수신부;
    상기 수신한 쿼리문의 실행을 요청하는 실행요청부; 및
    상기 쿼리문의 실행 결과에 따른 추출된 정보를 수신하는 정보수신부;를 포함하는 자동화된 정보 추출 서비스를 제공하는 단말기.


KR1020100139922A 2010-12-31 2010-12-31 자동화된 정보 추출 서비스를 제공하는 방법 및 그 단말기와 서버 KR20120077830A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020100139922A KR20120077830A (ko) 2010-12-31 2010-12-31 자동화된 정보 추출 서비스를 제공하는 방법 및 그 단말기와 서버

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020100139922A KR20120077830A (ko) 2010-12-31 2010-12-31 자동화된 정보 추출 서비스를 제공하는 방법 및 그 단말기와 서버

Publications (1)

Publication Number Publication Date
KR20120077830A true KR20120077830A (ko) 2012-07-10

Family

ID=46711267

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020100139922A KR20120077830A (ko) 2010-12-31 2010-12-31 자동화된 정보 추출 서비스를 제공하는 방법 및 그 단말기와 서버

Country Status (1)

Country Link
KR (1) KR20120077830A (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109784088A (zh) * 2018-12-18 2019-05-21 深圳壹账通智能科技有限公司 用于身份验证的权限认证方法及装置
CN112416964A (zh) * 2020-11-17 2021-02-26 深圳依时货拉拉科技有限公司 一种数据处理的方法、装置、系统、计算机设备及计算机可读存储介质
KR20220017655A (ko) * 2020-08-05 2022-02-14 다큐브 주식회사 음성 인식을 이용한 정보 검색 시스템 및 방법과 이를 위한 컴퓨터 프로그램

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109784088A (zh) * 2018-12-18 2019-05-21 深圳壹账通智能科技有限公司 用于身份验证的权限认证方法及装置
KR20220017655A (ko) * 2020-08-05 2022-02-14 다큐브 주식회사 음성 인식을 이용한 정보 검색 시스템 및 방법과 이를 위한 컴퓨터 프로그램
CN112416964A (zh) * 2020-11-17 2021-02-26 深圳依时货拉拉科技有限公司 一种数据处理的方法、装置、系统、计算机设备及计算机可读存储介质

Similar Documents

Publication Publication Date Title
KR102514325B1 (ko) 모델 훈련 시스템 및 방법과, 저장 매체
CN103597494B (zh) 用于管理文档的数字使用权限的方法和设备
CN1633650B (zh) 用户认证方法及用户认证系统
JP2022000757A5 (ko)
CN101208702A (zh) 计算机执行的认证和授权体系结构
US20190089708A1 (en) Techniques for implementing a data storage device as a security device for managing access to resources
EP3938941B1 (en) User choice in data location and policy adherence
KR20180022507A (ko) 블록체인을 기반으로 하는 문서전달 서비스 제공 방법
US9769159B2 (en) Cookie optimization
CN106416125A (zh) 用于虚拟机实例的自动目录加入
CN111832001B (zh) 基于区块链的身份管理方法及身份管理系统
CN113574528A (zh) 提供针对did数据的遵守策略的存储
EP3471010A1 (en) Generic runtime protection for transactional data
CN106326766A (zh) 一种HBase数据读取控制方法
US9432344B2 (en) Secure storage and sharing of user objects
WO2022250913A1 (en) Bootstrapping trust in decentralized identifiers
KR20120077830A (ko) 자동화된 정보 추출 서비스를 제공하는 방법 및 그 단말기와 서버
CN112868211A (zh) 加密消息传递系统
CN105827597A (zh) 一种管理互联网账号与密码的方法
CN111159689A (zh) 一种支持多系统统一用户管理的方法及系统
CN113641976B (zh) 异地业务办理方法、装置、电子设备及存储介质
LU101756B1 (en) Verifiable credential with dynamic claim
JP6338909B2 (ja) コンテンツ制御システム
TWI768307B (zh) 開源軟體整合方法
US11870805B2 (en) Systems and methods that perform filtering, linking, and rendering

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E902 Notification of reason for refusal
E601 Decision to refuse application