KR102233380B1 - 질의 및 데이터 경로 관리장치 및 컴퓨터 프로그램 - Google Patents
질의 및 데이터 경로 관리장치 및 컴퓨터 프로그램 Download PDFInfo
- Publication number
- KR102233380B1 KR102233380B1 KR1020150154515A KR20150154515A KR102233380B1 KR 102233380 B1 KR102233380 B1 KR 102233380B1 KR 1020150154515 A KR1020150154515 A KR 1020150154515A KR 20150154515 A KR20150154515 A KR 20150154515A KR 102233380 B1 KR102233380 B1 KR 102233380B1
- Authority
- KR
- South Korea
- Prior art keywords
- path
- user
- query
- data analysis
- data
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/21—Design, administration or maintenance of databases
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/25—Integrating or interfacing systems involving database management systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/28—Databases characterised by their database models, e.g. relational or object models
- G06F16/284—Relational databases
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
본 실시예들은 사용자 질의장치가 질의를 전송하기 위한 질의 경로와 질의결과를 전달받기 위한 데이터 경로를 분리함으로써, 사용자별로 데이터에 접근할 수 있는 권한을 관리하면서도 사용자 질의결과를 고속대량으로 전달할 수 있는 장치 및 컴퓨터 프로그램을 제공한다.
Description
본 실시예가 속하는 기술 분야는 질의 및 데이터의 경로를 관리하는 장치 및 컴퓨터 프로그램에 관한 것이다.
이 부분에 기술된 내용은 단순히 본 실시예에 대한 배경 정보를 제공할 뿐 종래기술을 구성하는 것은 아니다.
무선 인터넷 환경과 모바일 기기의 증가로 인해 서비스 사업자가 수집하고 처리해야 하는 데이터의 양이 급증하고 있다. 이러한 대용량 데이터를 분석하고 처리하기 위한 기술 중에는 하둡이 있다. 하둡(Hadoop)은 대량의 자료를 처리할 수 있는 분산된 컴퓨터 클러스터에서 동작하는 자바 소프트웨어 프레임워크(Java Software Framework)이다.
하둡에서는 사용자가 자바(Java) 프로그래밍을 이용하여 저장된 데이터를 요청한다. 반면에 기존의 관계형 데이터베이스 관리 시스템(Relational Data Base Management System, RDBMS)에서는 사용자가 질의(Query)를 이용하여 저장된 데이터를 요청한다. 따라서 질의에 익숙한 사용자들이 대용량 데이터를 분석하기 위한 도구로써 하둡을 즉시 사용하기에는 어려운 문제점이 있다.
이러한 문제점을 해결하기 위해 에스큐엘 온 하둡(SQL on Hadoop)이 등장하였다. 여기서 에스큐엘(Structured Query Language, SQL)은 관계형 데이터베이스 관리 시스템의 데이터를 관리하기 위해 설계된 특수 목적의 프로그래밍 언어이다. 하둡에서 에스큐엘이 사용될 수 있더라도 사용자들이 대용량 데이터를 분석하기 위한 도구로써 하둡을 사용하기에는 다른 문제점이 있다.
하둡은 사용자별로 접근 권한을 관리하지 않는다. 반면에 기존의 관계형 데이터베이스 관리 시스템은 사용자별로 접근 권한을 관리한다. 따라서 하둡에서도 사용자별 접근 권한을 관리할 수 있도록 하는 방안이 요구된다.
이러한 문제점을 해결하기 위해 프록시서버(Proxy Server)가 사용될 수 있다. 여기서 프록시서버는 사용자 단말과 네트워크 간에 중계 기능을 하는 서버이다. 프록시서버를 사용하면 사용자별로 접근 정책을 적용할 수 있다. 하지만 프록시서버로 질의 및 대용량의 데이터가 집중되어 서버에 부하가 생길 수 있다.
이상에서 언급한 문제점들을 해결한 사용자 권한별로 질의 및 데이터의 경로를 관리하는 장치 및 컴퓨터 프로그램은 아직 구현되지 못한 실정이다.
본 발명의 발명자는 대용량 데이터를 분석하기 위한 도구로써 기존의 하둡 시스템이 갖는 문제점을 인식하여, 하둡 시스템에서 질의를 이용하고 사용자별로 데이터에 접근할 수 있는 권한을 관리하고자 한다.
본 발명의 실시예들은 사용자 질의장치가 질의를 전달하는 질의 경로와 사용자 질의장치가 질의결과를 전달받는 데이터 경로를 분리함으로써, 사용자별로 데이터에 접근할 수 있는 권한을 관리하면서도 사용자의 질의를 고속대량으로 처리하는 데 발명의 주된 목적이 있다.
본 발명의 명시되지 않은 또 다른 목적들은 하기의 상세한 설명 및 그 효과로부터 용이하게 추론할 수 있는 범위 내에서 추가적으로 고려될 수 있다.
본 실시예의 일 측면에 의하면, 사용자 질의(Query)장치 및 분산된 경로(Path) 연결장치와 각각 연결되며, 상기 사용자 질의장치와 상기 분산된 경로 연결장치 간의 경로를 관리하는 장치에 있어서, 상기 사용자 질의장치로부터 제1경로를 이용하여 수신된 질의를 분석하고 사용자의 계정이 상기 질의에 의한 데이터 접근이 가능한지 여부를 판단하는 사용자 권한분석기(User Authority Analyzer), 상기 분산된 경로 연결장치에 각각 연결된 분산된 데이터 분석장치 중에서 상기 질의의 처리를 위한 적어도 하나의 데이터 분석장치를 결정하는 자원 관리기(Resource Manager), 및 상기 사용자 질의장치와 상기 적어도 하나의 데이터 분석장치 간의 연결을 위한 제2경로에 관한 정보를 상기 사용자 질의장치로 전달하는 경로 재지정기(Path Redirector)를 포함하는 사용자 권한별 경로 관리장치를 제공한다.
본 실시예의 다른 측면에 의하면, 사용자 권한별 경로 관리장치 및 데이터 분석장치와 각각 연결되며, 사용자 질의장치와 상기 데이터 분석장치 간에 경로를 연결하는 장치에 있어서, 상기 데이터 분석장치의 자원상황정보를 상기 사용자 권한별 경로 관리장치로 보고하는 자원상황 보고기(Resource Status Reporter), 및 상기 사용자 질의장치를 상기 데이터 분석장치에 제2경로를 이용하여 연결하는 경로 연결기(Path Connector)를 포함하는 경로 연결장치를 제공한다.
본 실시예의 다른 측면에 의하면, 프로세서에 의해 실행 가능한 컴퓨터 프로그램 명령어들을 포함하는 유형의(Tangible) 컴퓨터 판독 가능한 기록매체에 기록된 컴퓨터 프로그램으로서, 상기 컴퓨터 프로그램 명령어들이 상기 프로세서에 의해 실행되는 경우에, 사용자 질의장치 및 분산된 경로 연결장치에 각각 연결하는 과정, 상기 사용자 질의장치로부터 제1경로를 이용하여 수신된 질의를 분석하고 사용자의 계정이 데이터에 접근 가능한지 여부를 판단하는 과정, 상기 사용자의 계정이 데이터에 접근 가능한 경우, 상기 분산된 경로 연결장치에 각각 연결된 분산된 데이터 분석장치 중에서 적어도 하나의 데이터 분석장치를 결정하는 과정, 및 상기 사용자의 계정이 데이터에 접근 가능한 경우, 상기 사용자 질의장치와 상기 적어도 하나의 데이터 분석장치 간의 연결을 위한 제2경로에 관한 정보를 상기 사용자 질의장치로 전달하는 과정을 포함한 동작들을 수행하는 컴퓨터 프로그램을 제공한다.
본 실시예의 다른 측면에 의하면, 프로세서에 의해 실행 가능한 컴퓨터 프로그램 명령어들을 포함하는 유형의(Tangible) 컴퓨터 판독 가능한 기록매체에 기록된 컴퓨터 프로그램으로서, 상기 컴퓨터 프로그램 명령어들이 상기 프로세서에 의해 실행되는 경우에, 사용자 권한별 경로 관리장치 및 데이터 분석장치에 각각 연결하는 과정, 상기 데이터 분석장치의 자원상황정보를 상기 사용자 권한별 경로 관리장치로 보고하는 과정, 및 상기 사용자 질의장치가 제2경로 연결을 요청하는 경우, 상기 사용자 질의장치를 상기 제2경로를 이용하여 상기 데이터 분석장치에 연결하는 과정을 포함한 동작들을 수행하는 컴퓨터 프로그램을 제공한다.
이상에서 설명한 바와 같이 본 발명의 실시예들에 의하면, 사용자 질의장치가 질의를 전송하기 위한 질의 경로와 질의결과를 전달받기 위한 데이터 경로를 분리함으로써, 사용자 권한을 확인하면서도 사용자의 질의결과를 고속대량으로 전달할 수 있는 효과가 있다.
여기에서 명시적으로 언급되지 않은 효과라 하더라도, 본 발명의 기술적 특징에 의해 기대되는 이하의 명세서에서 기재된 효과 및 그 잠정적인 효과는 본 발명의 명세서에 기재된 것과 같이 취급된다.
도 1은 본 발명의 실시예들에 따른 데이터 분석 시스템을 예시한 블록도이다.
도 2는 본 발명의 일 실시예에 따른 사용자 권한별 경로 관리장치를 예시한 블록도이다.
도 3은 본 발명의 다른 실시예에 따른 경로 연결장치를 예시한 블록도이다.
도 4는 본 발명의 일 실시예에 따른 사용자 권한별 경로 관리장치의 동작을 예시한 흐름도이다.
도 5는 본 발명의 다른 실시예에 따른 경로 연결장치의 동작을 예시한 흐름도이다.
도 6은 본 발명의 실시예들에 따른 데이터 분석 시스템의 동작을 예시한 흐름도이다.
도 2는 본 발명의 일 실시예에 따른 사용자 권한별 경로 관리장치를 예시한 블록도이다.
도 3은 본 발명의 다른 실시예에 따른 경로 연결장치를 예시한 블록도이다.
도 4는 본 발명의 일 실시예에 따른 사용자 권한별 경로 관리장치의 동작을 예시한 흐름도이다.
도 5는 본 발명의 다른 실시예에 따른 경로 연결장치의 동작을 예시한 흐름도이다.
도 6은 본 발명의 실시예들에 따른 데이터 분석 시스템의 동작을 예시한 흐름도이다.
이하, 본 발명을 설명함에 있어서 관련된 공지기능에 대하여 이 분야의 기술자에게 자명한 사항으로서 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략하고, 본 발명의 일부 실시예들을 예시적인 도면을 통해 상세하게 설명한다.
도 1은 본 발명의 실시예들에 따른 데이터 분석 시스템을 예시한 블록도이다. 도 1에 도시한 바와 같이, 본 실시예들에 따른 데이터 분석 시스템은 사용자 질의장치(110), 사용자 인증장치(120), 사용자 권한별 경로 관리장치(130), 분산된 경로 연결장치(140, 142, 144), 및 분산 시스템(150)을 전부 또는 일부 포함한다.
데이터 분석 시스템은 대용량 데이터를 분석하고 처리하는 시스템이다. 데이터 분석 시스템은 크게 사용자가 분산 시스템(150)에 접근할 수 있는 장치와 데이터를 분산 처리하는 분산 시스템(150)으로 나눌 수 있다. 사용자가 필요한 정보를 분산 시스템(150)에 요청하면, 분산 시스템(150)이 대용량 데이터를 여러 개의 장치에 분산하여 저장하고 처리한다. 그리고 분산 시스템(150)은 분석한 결과를 사용자에게 전송한다.
분산 시스템(150)은 특정한 기능을 수행하는 복수의 모듈들로 구성된 프레임워크로 구현될 수 있다. 분산 시스템(150)은 대용량 데이터를 저장하기 위한 모듈과 대용량 데이터를 처리하기 위한 모듈을 포함할 수 있다. 분산 시스템의 예로는 아파치 소프트웨어 재단(Apache Software Foundation, ASF)에서 배포하는 하둡 등이 있다. 대용량 데이터를 저장하기 위한 모듈의 예로는 하둡 분산 파일 시스템(Hadoop Distributed File System, HDFS)이 있고, 대용량 데이터를 처리하기 위한 모듈의 예로는 맵 리듀스(Map Reduce, MR)가 있으나 이에 한정되는 것은 아니다.
분산 시스템(150)은 분산 시스템(150)의 범용성을 높이기 위해서 자원을 관리할 수 있는 모듈을 포함할 수 있다. 자원을 관리할 수 있는 모듈의 예로는 얀(YARN)이 있으나 이에 한정되는 것은 아니다. 예시한 얀(YARN)을 이용하면 맵리듀스 이외에 테즈(Tez), 스파크(Spark) 등의 다양한 데이터 처리 모듈을 이용하여 대용량 데이터를 분산 처리할 수 있다.
분산 시스템(150)은 데이터베이스 모듈을 포함할 수 있다. 데이터베이스 모듈의 예로는 에이치베이스(HBase), 카산드라(Cassandra), 몽고디비(Mongo DB) 등이 있으나 이에 한정되는 것은 아니다.
분산 시스템(150)은 질의를 사용하기 위한 모듈을 포함할 수 있다. 질의를 사용하기 위한 모듈의 예로는 하이브(Hive), 임팔라(Impala), 프레스토(Presto), 드릴(Drill) 등이 있으나 이에 한정되는 것은 아니다.
분산 시스템(150)은 분산된 데이터 분석장치(160, 162, 164)를 포함한다. 데이터 분석장치(160, 162, 164)는 분산 시스템(150)이 대용량 데이터를 분산 처리를 하기 위한 장치로서, 컴퓨터 등으로 구현될 수 있다. 도 1에서는 설명의 편의를 위해, 분산된 데이터 분석장치(160, 162, 164)를 세개로 도시하였으나 데이터 분석장치의 개수는 하나이상을 의미한다.
분산된 데이터 분석장치(160, 162, 164) 각각은 클러스터 또는 노드가 될 수 있다. 여기서 클러스터는 특정 기능을 수행하기 위해서 상호 연결된 여러 대의 컴퓨터 집합이고, 노드는 클러스터를 구성하는 개별 컴퓨터이다.
분산된 데이터 분석장치(160, 162, 164)는 마스터 및 슬레이브 구조가 될 수 있다. 여기서 마스터 및 슬레이브 구조는 하나의 마스터 데이터 분석장치에 하나이상의 슬레이브 분석장치가 연결된 구조이다. 하나의 마스터 데이터 분석장치에 연결된 하나이상의 슬레이브 분석장치들이 대용량 데이터를 분산하여 저장하고 분산하여 처리한다. 도 1에서는 마스터 및 슬레이브 구조를 도시하지 않았으나, 분산된 데이터 분석장치(160, 162, 164) 각각은 마스터 데이터 분석장치가 될 수 있고, 슬레이브 데이터 분석장치가 될 수도 있다.
설명의 편의를 위해 하둡을 예로 들어 설명하면, 하둡 분산 파일 시스템(HDFS)은 마스터인 네임노드(Namenode)와 슬레이브인 데이터노드(Datanode)를 포함하고 데이터노드들이 파일을 분할하여 저장한다. 맵 리듀스(MR)는 마스터인 잡 트래커(Job Tracker)와 슬레이브인 태스크 트래커(Task Tracker)를 포함하고 태스크 트래커들이 작업을 분할하여 처리한다.
이러한 구조로 인하여 분산 시스템(150)은 기가바이트(Gigabyte), 테라바이트(Terabyte), 페타바이트(Petabyte) 등의 대용량 데이터를 저장하고 처리하는 것이 가능하다.
사용자 질의장치(110)는 사용자가 데이터가 있는 시스템으로 질의를 전송하고 질의결과를 전달받는 장치이다. 다시 말해, 사용자 질의장치(110)는 다른 컴퓨터에 접속할 수 있는 도구로써, 일종의 클라이언트(Client)라고 할 수 있다. 질의는 데이터베이스 또는 정보시스템에 정보를 요청하기 위한 명령이다. 이러한 질의의 대표적인 예로는 에스큐엘(SQL)이 있으나 이에 한정되는 것은 아니다.
사용자 질의장치(110)는 태블릿(Tablet), 랩탑(Lap Top), 개인용컴퓨터(Personal Computer, PC), 스마트폰(Smart Phone), 개인정보단말기(Personal Digital Assistant, PDA), 이동통신 단말기(Mobile Communication Terminal) 등으로 구현될 수 있으나 반드시 이에 한정되는 것은 아니다.
사용자 질의장치(110)는 비즈니스 인텔리전스 툴(Business Intelligence Tool), 웹 애플리케이션(Web Application), 응용프로그램(Application Program) 등을 이용하여 데이터 분석을 위한 질의를 전송할 수 있다.
사용자 인증장치(120)는 사용자의 신원을 확인하는 장치이다. 사용자 인증장치(120)는 사용자 질의장치(110)에 연결된다. 사용자 인증장치(120)는 사용자 질의장치(120)로부터 사용자에 관한 정보 및 사용자 질의장치(110)에 관한 정보를 이용하여 인증(Authentication) 절차를 수행한다. 사용자에 관한 정보의 예로는 사용자 계정, 및 패스워드 등이 있을 수 있고, 사용자 질의장치(110)에 관한 정보의 예로는 장치 고유의 식별정보 등이 있을 수 있다. 사용자 인증장치(120)는 싱글 사인 온(Single Sign On, SSO)을 이용하여 인증 절차를 수행할 수 있다. 싱글 사인 온(SSO)은 한 번의 로그인으로 각각의 시스템에 접속할 수 있게 하는 인증방식이다.
사용자 권한별 경로 관리장치(130)는 사용자가 데이터에 접근할 수 있는 권한이 있는지 여부를 확인하고, 사용자 질의장치(110)와 분산된 경로 연결장치(140, 142, 144) 간의 경로를 관리하는 장치이다. 사용자 권한별 경로 관리장치(130)는 사용자 질의장치(110)에 연결된다.
사용자 질의장치(110)는 제1경로(10)를 이용하여 사용자 권한별 경로 관리장치(130)로 질의를 전송하게 된다. 사용자 권한별 경로 관리장치(130)는 사용자의 질의를 분석하여 사용자 권한을 확인할 수 있다.
그러나 사용자 권한을 확인한 후 사용자 질의장치(110)가 질의결과를 다시 동일한 제1경로(10)로 수신하게 되면 분산 시스템을 이용하더라도 대용량 데이터의 전송 속도 저하가 발생할 수 있다.
본 실시예들에 따르면 사용자 질의장치(110)가 제1경로(10)를 이용하여 질의를 전달하고, 사용자 질의장치(110)가 제2경로(20)를 이용하여 데이터를 전달받을 수 있다. 다시 말해, 질의 경로와 데이터 경로를 분리함으로써 본 실시예들은 사용자의 질의결과를 고속대량으로 전달할 수 있는 효과를 발생시킨다.
제1경로(10)는 질의 전달을 위한 경로일 수 있고, 제2경로(20)는 데이터 전달을 위한 경로일 수 있다.
제1경로(10)는 사용자 질의장치(110)와 사용자 권한별 경로 관리장치(130) 간의 연결을 위한 경로이고, 제2경로(20)는 사용자 질의장치(110)와 데이터 분석장치 간의 연결을 위한 경로이다. 제2경로(20)는 사용자 질의장치(110)와 데이터 분석장치 간에 직접 연결될 수도 있고, 경로 연결장치를 중계하여 연결될 수도 있다. 설명의 편의를 위해 도 1에서는 제2경로가 경로 연결장치를 중계하여 연결되었으나 이에 한정되는 것은 아니다.
분산된 경로 연결장치(140, 142, 144)는 분산된 데이터 분석장치(160, 162, 164)에 연결된다. 도 1에서는 설명의 편의를 위해 경로 연결장치1(140)과 데이터 분석장치1(160)을 연결하고, 경로 연결장치2(142)과 데이터 분석장치2(162)를 연결하고, 경로 연결장치M(M은 자연수, 144)과 데이터 분석장치N(N은 자연수, 160)을 연결하였으나 반드시 하나의 경로 연결장치와 하나의 데이터분석장치 간에 연결되는 것은 아니고, 하나이상의 경로 연결장치와 하나이상의 데이터분석장치가 상호 연결될 수도 있다.
설명의 편의를 위해 경로 연결장치1(140)과 경로 연결장치2(142)을 예로 들어 설명하면, 경로 연결장치1(140)은 사용자 질의장치(110)와 데이터 분석장치1(160)을 연결할 수 있고, 경로 연결장치2(142)는 사용자 질의장치(110)와 데이터 분석장치2(162)를 연결할 수 있다. 이는 예시일 뿐 분산된 경로 연결장치(140, 142, 144)가 사용자 질의장치(110)를 분산된 데이터 분석장치(160, 162, 164)에 연결하는 형태가 이에 한정되는 것은 아니다.
도 2는 본 발명의 일 실시예에 따른 사용자 권한별 경로 관리장치를 예시한 블록도이다. 도 2에 도시한 바와 같이, 본 실시예에 따른 사용자 권한별 경로 관리장치는 사용자 권한분석기(User Authority Analyzer, 210), 자원 관리기(Resource Manager, 220), 경로 재지정기(Path Redirector, 230), 및 질의 전달기(Query Transmitter, 240)를 전부 또는 일부 포함한다.
사용자 권한분석기(210)는 사용자가 데이터에 접근할 수 있는 권한이 있는지 여부를 확인하는 유닛(Unit)이다. 사용자 권한분석기(210)는 제1경로(10)를 이용하여 사용자 질의장치(110)에 연결된다. 사용자 권한분석기(210)는 사용자 질의장치(110)로부터 제1경로(10)를 이용하여 수신된 질의를 분석하고 사용자의 계정이 질의에 의한 데이터 접근이 가능한지 여부를 판단한다.
사용자 권한분석기(210)는 접근 제어 목록(Access Control List, ACL)을 이용하여 권한(Authorization)을 관리할 수 있다. 접근 제어 목록은 데이터에 대한 접근이 허가된 사용자 및 사용자에게 허가된 데이터에 관한 접근 권한들이 기록된 목록이다. 접근 제어 목록은 사용자에 관한 정보 및 데이터에 관한 정보를 포함할 수 있다. 사용자에 관한 정보의 예로는 그룹 등이 있을 수 있고, 데이터에 관한 정보의 예로는 읽기 및 쓰기 등의 권한이 있을 수 있다.
자원 관리기(220)는 분산 시스템(150)의 자원을 관리하고 여유있는 자원을 데이터 분석장치를 결정하는 유닛이다. 자원 관리기(220)는 분산된 경로 연결장치(140, 142, 144)에 각각 연결된다. 자원 관리기(220)는 분산된 경로 연결장치(140, 142, 144)를 이용하여 분산된 데이터 분석장치(160, 162, 164)의 자원상황정보를 수집한다. 이로 인하여 자원 관리기(220)는 분산된 데이터 분석장치(160, 162, 164)의 자원에 대한 경쟁을 모니터링할 수 있다.
자원 관리기(220)는 분산된 경로 연결장치(140, 142, 144)에 각각 연결된 분산된 데이터 분석장치(160, 162, 164) 중에서 질의의 처리를 위한 적어도 하나의 데이터 분석장치를 결정한다.
자원 관리기(220)는 분산된 데이터 분석장치(160, 162, 164)의 자원상황정보, 사용자의 질의유형, 사용자와 적어도 하나의 데이터 분석장치 간의 커넥션 풀(Connection Pool), 및 사용자의 로그 등을 근거하여 분산된 데이터 분석장치(160, 162, 164) 중에서 질의의 처리를 위한 적어도 하나의 데이터 분석장치를 결정할 수 있다. 예컨대, 결정된 적어도 하나의 데이터 분석장치는 데이터분석장치1(160)일 수 있으나 이에 한정되는 것은 아니다.
자원 관리기(220)는 분산된 데이터 분석장치(160, 162, 164)의 자원상황정보에 근거하여 분산된 데이터 분석장치(160, 162, 164) 중에서 질의의 고속처리가 가능한 적어도 하나의 데이터 분석장치를 결정할 수 있다. 여기서 자원상황정보는 물리적 자원(Physical Resource) 또는 커넥션 풀(Connection Pool) 등에 관한 정보이다.
자원 관리기(220)는 데이터분석장치의 물리적 자원 중 적어도 하나, 예를 들면 메모리 등에 관한 정보를 모니터링할 수 있다. 물리적 자원은 데이터 분석장치의 자원이다. 컴퓨터를 예로 들면 씨피유(CPU), 디스크(Disk), 메모리(Memory), 및 네트워크(Network) 등이 있을 수 있다. 자원 관리기(220)는 분산된 데이터 분석장치(160, 162, 164) 중에서 물리적 자원에 여유가 있는 데이터분석장치를 결정할 수 있다.
자원 관리기(220)는 데이터분석장치의 커넥션 풀을 모니터링할 수 있다. 커넥션 풀은 데이터베이스 연결들로 된 하나의 풀(Pool)이다. 데이터베이스 연결들을 예로 들면, 복수개의 제2경로가 있다. 자원 관리기(220)는 분산된 데이터 분석장치(160, 162, 164) 중에서 커넥션 풀에 여유가 있는 데이터분석장치를 결정할 수 있다.
자원 관리기(220)는 질의유형별에 근거하여 분산된 데이터 분석장치(160, 162, 164) 중에서 질의의 처리를 위한 적어도 하나의 데이터 분석장치를 결정할 수 있다. 자원 관리기(220)는 사용자 권한분석기(210)에 의해 분석된 질의를 다양한 유형으로 나눈다. 자원 관리기(220)는 질의유형을 이용하여 분산된 데이터 분석장치(160, 162, 164) 중에서 질의의 처리를 위한 데이터 분석장치를 결정할 수 있다.
자원 관리기(220)는 질의를 전송한 복수의 사용자 중에서 어느 사용자에게 분산된 데이터 분석장치(160, 162, 164) 중에서 적어도 하나의 데이터분석장치를 연결할지 여부를 결정할 수 있다. 자원 관리기(220)는 사용자 권한분석기(210)에 의해 판단된 사용자의 권한에 근거하여 데이터 분석장치(160, 162, 164) 중에서 질의의 처리를 위한 적어도 하나의 데이터 분석장치를 결정할 수 있다.
이러한 자원 관리로 인하여 사용자 권한별 경로 관리장치(130)는 사용자 권한을 확인하면서도 사용자의 질의결과를 고속대량으로 처리할 수 있는 데이터 분석장치를 선별할 수 있는 효과를 발생시킨다.
경로 재지정기(230)는 사용자 질의장치(110)가 질의결과를 전달받는 경로를 재지정하는 유닛이다. 경로 재지정기(230)는 사용자 질의장치(110)에 연결된다. 경로 재지정기(230)는 사용자 질의장치(110)와 적어도 하나의 데이터 분석장치 간의 연결을 위한 제2경로(20)에 관한 정보를 사용자 질의장치(110)로 전달한다.
여기서 제2경로(20)에 관한 정보는 결정된 적어도 하나의 데이터 분석장치의 접속정보를 의미한다. 접속정보의 예로는 통합 자원 식별자(Uniform Resource Identifier, URI)가 있다. 통합 자원 식별자는 인터넷에 있는 자원을 나타내는 유일한 주소이다. 통합 자원 식별자는 프로토콜, 호스트이름, 주소, 및 포트 등을 포함한다.
이러한 제2경로로 인하여 사용자 권한별 경로 관리장치(130)는 사용자 권한을 확인하면서도 사용자의 질의결과를 고속대량으로 전달할 수 있는 효과를 발생시킨다.
질의 전달기(240)는 사용자 질의장치(110)로부터 수신된 질의를 데이터 분석장치로 전달하기 위한 유닛이다. 분산된 데이터 분석장치 각각에 질의를 전달하는 것이 아니라 자원 관리기(220)에 의해 결정된 적어도 하나의 데이터 분석장치로 질의를 전달한다. 질의 전달기(240)는 경로 연결장치에 연결된다.
질의 전달기(240)는 사용자 질의장치(110)로부터 제1경로(10)를 이용하여 수신된 질의를 자원 관리기(220)에 의해 결정된 적어도 하나의 데이터 분석장치에 연결된 경로 연결장치로 제2경로(20)를 이용하여 전달한다. 예를 들면, 질의 전달기(240)는 사용자 질의장치(110)로부터 데이터 분석장치1(160)에 연결된 경로연결장치1(140)로 질의를 전달한다.
이러한 질의 전달로 인하여 분산 시스템(150) 또는 분산된 데이터 분석장치(160, 162, 164)에서 사용자의 질의를 활용할 수 있는 효과가 발생한다.
사용자 권한별 경로 관리장치(130)는 사용자의 계정을 관리할 수 있는 계정 관리기(Account Manager, 미도시)를 추가로 포함할 수 있다. 계정 관리기는 사용자의 자원에 대한 사용 정보를 기록하고 관리한다. 계정 관리기는 로그(Log)를 이용하여 사용자 계정을 관리할 수 있다.
계정 관리기는 자원 관리기(220)에 연결된다. 자원 관리기(220)는 계정 관리기의 로그를 이용하여 복수의 사용자 중에서 어느 사용자에게 데이터 분석장치를 연결할지 여부를 결정할 수 있다. 자원 관리기(220)는 사용자의 데이터 접근 권한 및 로그를 종합적으로 고려하여 사용자 질의장치(110)에 연결하기 위한 데이터 분석장치를 결정할 수 있다.
사용자의 데이터 접근 권한 및 로그를 종합적으로 고려함으로써, 사용자 권한별 경로 관리장치(130)는 사용자 별로 자원 관리사용자 권한을 확인하면서도 사용자의 질의결과를 고속대량으로 전달할 수 있는 효과를 발생시킨다.
도 3은 본 발명의 다른 실시예에 따른 경로 연결장치를 예시한 블록도이다. 도 3에 도시한 바와 같이, 본 실시예에 따른 경로 연결장치는 자원상황 보고기(Resource Status Reporter, 310), 경로 연결기(Path Connector, 320), 질의 전달기(Query Transmitter, 330), 및 질의결과 전달기(Query Result Transmitter, 340)를 전부 또는 일부 포함한다.
자원상황 보고기(310)는 사용자 권한별 경로 관리장치(130)로 데이터 분석장치의 자원상황정보를 보고하는 유닛이다. 자원상황 보고기(310)는 사용자 권한별 경로 관리장치(130)의 자원 관리기(220)에 연결된다. 여기서 자원상황정보는 물리적 자원(Physical Resource) 또는 커넥션 풀(Connection Pool) 등에 관한 정보이다.
자원상황 보고기(310)는 데이터분석장치의 물리적 자원 중 적어도 하나를 모니터링할 수 있다. 데이터 분석장치의 자원에는 씨피유(CPU), 디스크(Disk), 메모리(Memory), 및 네트워크(Network) 등이 있을 수 있다. 자원상황 보고기(310)는 데이터 분석장치의 자원상황정보를 사용자 권한별 경로 관리장치(130)로 보고한다.
자원상황 보고기(310)는 커넥션 풀을 모니터링할 수 있다. 자원상황 보고기(310)는 커넥션 풀에 관한 정보를 사용자 권한별 경로 관리장치(130)로 보고한다. 즉, 자원상황 보고기(310)는 복수의 제2경로에 관한 정보를 사용자 권한별 경로 관리장치(130)로 보고한다.
이러한 커넥션 풀로 인하여 경로 연결장치(140)는 사용자 질의장치(110)에 연결하기 위한 제2경로를 새로 생성할 필요가 없게 되는 효과를 발생시킨다. 게다가 커넥션은 재사용이 가능하므로 연결 속도를 향상시키는 효과를 발생시킨다. 한편, 경로 연결장치(140)는 커넥션의 개수 조절이 가능하여 연결을 요청하는 사용자가 증가하더라고 분산 시스템(150)의 안정성을 향상시키는 효과를 발생시킨다.
경로 연결기(320)는 사용자 질의장치(110)와 데이터 분석장치를 연결해주는 유닛이다. 경로 연결기(320)는 사용자 질의장치(110)를 데이터 분석장치에 제2경로(20)를 이용하여 연결한다. 여기서 제2경로(20)는 데이터 전달을 위한 경로이다. 질의의 개수에 맞게 제2경로(20)는 복수개가 가능하다.
도 1에서는 제2경로(20)는 사용자 질의장치(110)로부터 경로 연결장치로 연결되도록 도시하였으나 사용자 질의장치(110)로부터 데이터 분석장치로 연결될 수도 있다. 다시 말해, 경로 연결기(320)는 사용자 질의장치(110)를 제2경로(20)를 이용하여 데이터 분산장치에 직접 연결하거나 중계 연결할 수 있다.
질의 전달기(330)는 분산 시스템으로 전달하기 위한 유닛이다. 질의 전달기(330)는 사용자 권한별 경로 관리장치(130) 및 데이터 분석장치에 각각 연결된다. 질의 전달기(330)는 사용자 권한별 경로 관리장치(130)로부터 수신된 질의를 데이터 분석장치로 전달한다. 예컨대, 경로 연결장치1(140)은 데이터 분석장치1(160)로 질의를 전달할 수 있다.
이러한 질의 전달로 인하여 분산 시스템(150) 또는 분산된 데이터 분석장치(160, 162, 164)가 사용자의 질의를 활용할 수 있는 효과가 발생한다.
질의결과 전달기(340)는 사용자 질의장치(110)로 질의결과를 전달하는 유닛이다. 질의결과 전달기(340)는 사용자 질의장치(110) 및 데이터 분석장치에 각각 연결된다. 질의결과 전달기(340)는 데이터 분석장치로부터 수신된 질의결과를 제2경로(20)를 이용하여 사용자 질의장치로 전달할 수 있다.
여기서 질의결과는 질의에 맞게 추출된 데이터로서, 대용량 데이터가 될 수 있다. 질의결과는 데이터 분석장치에 저장된 원 데이터(raw data) 또는 분석된 데이터일 수 있다. 설명의 편의를 위해 데이터베이스가 에이치베이스(HBase)인 경우를 예로 들면, 질의결과는 로우(Row), 컬럼(Column), 및 타임스탬프(Timestamp) 등을 포함하는 테이블일 수 있다.
이러한 제2경로로 인하여 사용자 권한별 경로 관리장치(130)는 사용자 권한을 확인하면서도 사용자의 질의결과를 고속대량으로 전달할 수 있는 효과가 발생한다.
이하에서는 도 4 내지 도 6을 참조하여 본 발명의 실시예들에 따른 사용자 권한별 경로 관리장치 및 경로 연결장치의 동작을 설명한다. 도 4는 본 발명의 일 실시예에 따른 사용자 권한별 경로 관리장치의 동작을 예시한 흐름도이다.
과정 S410에서는 사용자 권한별 경로 관리장치(130)가 사용자 질의장치 및 분산된 경로 연결장치에 각각 연결한다. 과정 S420에서는 사용자 권한별 경로 관리장치(130)가 사용자 질의장치(110)로부터 제1경로를 이용하여 수신된 질의를 분석하고 사용자의 계정이 데이터에 접근 가능한지 여부를 판단한다.
사용자의 계정이 데이터에 접근 가능한 경우, 사용자 권한별 경로 관리장치(130)는 사용자 질의장치(110)에게 접근 권한 있음을 응답한다(S430). 사용자의 계정이 데이터에 접근 가능하지 않는 경우, 사용자 권한별 경로 관리장치(130)는 사용자 질의장치(110)에게 접근 권한 없음을 응답한다(S440).
사용자의 계정이 데이터에 접근 가능한 경우, 사용자 권한별 경로 관리장치(130)는 분산된 경로 연결장치에 각각 연결된 분산된 데이터 분석장치 중에서 질의의 처리를 위한 적어도 하나의 데이터 분석장치를 결정한다(S450). 사용자 권한별 경로 관리장치(130)는 분산된 데이터 분석장치의 자원상황정보, 사용자의 질의유형, 사용자와 데이터 분석장치 간의 커넥션 풀(Connection Pool), 및 사용자 로그 등을 근거하여 질의의 고속처리가 가능한지 여부를 판단할 수 있다. 예컨대, 사용자 권한별 경로 관리장치(130)는 사용자의 질의를 처리하기 위한 데이터 분석장치를 데이터 분석장치1(160)로 결정할 수 있다.
사용자의 계정이 데이터에 접근 가능한 경우, 사용자 권한별 경로 관리장치(130)는 사용자 질의장치(110)로부터 수신된 질의를 결정된 적어도 하나의 데이터 분석장치에 연결된 경로 연결장치로 전달한다(S460). 예컨대, 사용자 권한별 경로 관리장치(130)는 경로 연결장치1(140)로 질의를 전달한다.
사용자의 계정이 데이터에 접근 가능한 경우, 사용자 권한별 경로 관리장치(130)는 사용자 질의장치(110)와 결정된 적어도 하나의 데이터 분석장치 간의 연결을 위한 제2경로에 관한 정보를 사용자 질의장치(110)로 전달한다(S470).
도 5는 본 발명의 다른 실시예에 따른 경로 연결장치의 동작을 예시한 흐름도이다.
과정 S510에서는 경로 연결장치가 사용자 권한별 경로 관리장치 및 데이터 분석장치에 각각 연결한다. 과정 S520에서는 경로 연결장치가 데이터 분석장치의 자원상황정보를 사용자 권한별 경로 관리장치(130)로 보고한다.
설명의 편의를 위해 사용자의 질의를 처리하기 위한 데이터 분석장치가 데이터 분석장치1(160)로 결정된 경우를 예로 들어 설명한다. 사용자 질의장치(110)가 제2경로 연결을 요청하는 경우, 경로 연결장치1(140)은 제2경로를 이용하여 사용자 질의장치(110)를 데이터 분석장치1(160)에 연결한다(S540). 경로 연결장치1(140)은 데이터 분석장치1(160)로부터 수신된 질의결과를 사용자 질의장치(110)로 전달한다(S550). 사용자 질의장치(110)로 데이터 분석장치1(160)의 질의결과 전달이 완료되면, 경로 연결장치1(140)은 사용자 권한별 경로 관리장치(130)로 질의결과 전달 완료를 보고한다(S560).
도 6은 본 발명의 실시예들에 따른 데이터 분석 시스템의 동작을 예시한 흐름도이다.
데이터 분석 시스템의 동작은 사용자를 인증하는 과정, 사용자의 데이터 접근 권한 유무를 판단하는 과정, 데이터 분석장치의 자원상황을 관리하는 과정, 사용자의 질의를 데이터 분석장치로 전달하는 과정, 및 질의결과를 사용자 질의장치로 전달하는 과정을 포함한다.
사용자를 인증하는 과정에서는 사용자 질의장치(110) 및 사용자 인증장치(120)가 동작을 수행한다. 사용자 질의장치(110)는 사용자 인증장치(120)로 사용자 인증을 요청한다(S610). 사용자 인증장치(120)는 사용자 계정, 패스워드, 및 장치 고유의 식별정보 등을 이용하여 인증 절차를 수행할 수 있다. 사용자 인증장치(120)는 사용자 질의장치(110)로 인증 결과 전달한다(S612).
사용자의 데이터 접근 권한 유무를 판단하는 과정에서는 사용자 질의장치(110) 및 사용자 권한별 경로 관리장치(130)가 동작을 수행한다. 사용자 질의장치(110)는 사용자 권한별 경로 관리장치(130)로 제1경로를 이용하여 질의를 전송한다(S620). 사용자 권한별 경로 관리장치(130)는 수신된 질의를 분석하여 사용자의 계정이 데이터에 접근이 가능한지 여부를 판단한다(S420). 사용자 권한별 경로 관리장치(130)는 사용자 질의장치(110)로 접근 권한 유무를 응답한다(S622).
데이터 분석장치의 자원상황을 관리하는 과정은 사용자 권한별 경로 관리장치(130), 분산된 경로 연결장치(140, 142, 144), 및 분산된 데이터 분석장치(160, 162, 164)가 동작을 수행한다. 분산된 데이터 분석장치(160, 162, 164)는 분산된 경로 연결장치(140, 142, 144)로 데이터 분석장치의 자원상황정보를 보고한다(S512). 분산된 경로 연결장치(140, 142, 144)는 사용자 권한별 경로 관리장치(130)로 데이터 분석장치의 자원상황정보를 보고한다(S512). 사용자 권한별 경로 관리장치(130)는 분산된 데이터 분석장치의 자원상황정보 등에 근거하여 질의를 수행한 적어도 하나의 데이터 분석장치를 결정한다(S450).
이러한 자원 관리로 인하여 사용자 권한별 경로 관리장치(130)는 사용자 권한을 확인하면서도 사용자의 질의결과를 고속대량으로 처리할 수 있는 데이터 분석장치를 선별할 수 있는 효과를 발생시킨다.
사용자의 질의를 데이터 분석장치로 전달하는 과정은 사용자 질의장치(110), 사용자 권한별 경로 관리장치(130), 사용자 권한별 경로 관리장치(130)에 의해 결정된 데이터 분석장치1(160)에 연결된 경로 연결장치1(140), 및 사용자 권한별 경로 관리장치(130)에 의해 결정된 데이터 분석장치1(160)가 동작을 수행한다.
도 6에서는 데이터 분석장치1(160)을 사용자 권한별 경로 관리장치(130)에 의해 결정된 데이터 분석장치로, 경로 연결장치1(140)을 예시적으로 사용자 권한별 경로 관리장치(130)에 의해 결정된 데이터 분석장치에 연결된 경로연결장치로 예시하였으나 이에 한정되는 것은 아니다.
사용자 질의장치(110)는 사용자 권한별 경로 관리장치(130)로 제1경로를 이용하여 질의를 전송한다(S620). 사용자 권한별 경로 관리장치(130)는 경로 연결장치(140)로 질의를 전달한다(S460). 경로 연결장치(140)는 데이터 분석장치로 질의를 전달한다(S640).
이러한 질의 전달로 인하여 분산 시스템(150) 또는 분산된 데이터 분석장치(160, 162, 164)가 사용자의 질의를 활용할 수 있는 효과가 발생한다.
질의결과를 사용자 질의장치로 전달하는 과정에서는 사용자 질의장치(110), 사용자 권한별 경로 관리장치(130), 경로 연결장치, 데이터 분석장치가 동작을 수행한다.
사용자 권한별 경로 관리장치(130)는 제2경로에 관한 정보를 사용자 질의장치(110)로 전달한다(S470). 사용자 질의장치(110)는 경로 연결장치1(140)로 제2경로 연결을 요청한다(S630). 경로 연결장치1(140)은 사용자 질의장치(110)와 데이터 분석장치1(160) 간의 제2경로를 연결한다(S540). 경로 연결장치1(140)는 데이터 분석장치1(160)로 질의를 전달한다(S640). 데이터 분석장치1(160)는 경로 연결장치1(140)로 데이터 분석장치1(160)의 질의결과를 전송한다(S642). 경로 연결장치1(140)은 데이터 분석장치로부터 수신된 질의결과를 사용자 질의장치(110)로 전달한다(S550). 사용자 질의장치(110)로 데이터 분석장치1(160)의 질의결과 전달이 완료되면, 경로 연결장치1(140)은 사용자 권한별 경로 관리장치(130)로 질의결과 전달 완료를 보고한다(S560).
이러한 제2경로로 인하여 사용자 권한별 경로 관리장치(130)는 사용자 권한을 확인하면서도 사용자의 질의결과를 고속대량으로 전달할 수 있는 효과가 발생한다.
도 4 내지 도 6에서는 각각의 과정을 순차적으로 실행하는 것으로 기재하고 있으나 이는 예시적으로 설명한 것에 불과하고, 이 분야의 기술자라면 본 발명의 실시예의 본질적인 특성에서 벗어나지 않는 범위에서 도 4 및 도 6에 기재된 순서를 변경하여 실행하거나 또는 하나 이상의 과정을 병렬적으로 실행하거나 다른 과정을 추가하는 것으로 다양하게 수정 및 변형하여 적용 가능할 것이다.
본 실시예들에 따른 장치는 각종 기기 또는 유무선 통신망과 통신을 수행하기 위한 통신 모뎀 등의 통신장치, 프로그램을 실행하기 위한 데이터를 저장하는 메모리, 프로그램을 실행하여 연산 및 명령하기 위한 마이크로프로세서 등을 전부 또는 일부 구비한 다양한 장치를 의미할 수 있다. 여기서 장치는 하드웨어, 펌웨어, 소프트웨어 또는 이들의 조합에 의해 로직회로 내에서 구현될 수 있고, 범용 또는 특정 목적 컴퓨터를 이용하여 구현될 수도 있다. 장치는 고정배선형(Hardwired) 기기, 필드 프로그램 가능한 게이트 어레이(Field Programmable Gate Array, FPGA), 주문형 반도체(Application Specific Integrated Circuit, ASIC) 등을 이용하여 구현될 수 있다. 또한, 장치는 하나 이상의 프로세서 및 컨트롤러를 포함한 시스템온칩(System on Chip, SoC)으로 구현될 수 있다.
본 실시예들에 따른 장치의 동작은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능한 매체에 기록될 수 있다. 컴퓨터 판독 가능한 매체는 실행을 위해 프로세서에 명령어를 제공하는 데 참여한 임의의 매체를 나타낸다. 컴퓨터 판독 가능한 매체는 프로그램 명령, 데이터 파일, 데이터 구조 또는 이들의 조합을 포함할 수 있다. 예를 들면, 자기 매체, 광기록 매체, 메모리 등이 있으며, 전송되는 신호파(Signal Wave) 형태로도 구체화(Embody)될 수 있다. 컴퓨터 프로그램은 네트워크로 연결된 컴퓨터 시스템 상에 분산되어 분산 방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수도 있다. 본 실시예를 구현하기 위한 기능적인(Functioinal) 프로그램, 코드, 및 코드 세그먼트들은 본 실시예가 속하는 기술분야의 프로그래머들에 의해 용이하게 추론될 수 있을 것이다.
본 실시예들은 본 실시예의 기술 사상을 설명하기 위한 것이고, 이러한 실시예에 의하여 본 실시예의 기술 사상의 범위가 한정되는 것은 아니다. 본 실시예의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 실시예의 권리범위에 포함되는 것으로 해석되어야 할 것이다.
이상에서 설명한 바와 같이, 본 실시예는 사용자 질의장치가 질의를 전송하기 위한 질의 경로와 질의결과를 전달받기 위한 데이터 경로를 분리함으로써, 사용자별로 데이터에 접근할 수 있는 권한을 관리하면서도 사용자 질의결과를 고속대량으로 전달할 수 있는 효과가 있어 유용한 발명이다.
10: 제1경로 20: 제2경로
110: 사용자 질의장치 120: 사용자 인증장치
130: 사용자 권한별 경로 관리장치 140, 142, 144: 경로 연결장치
150: 분산 시스템 160, 162, 164: 데이터 분석장치
210: 사용자 권한분석기 220: 자원 관리기
230: 경로 재지정기 240, 330: 질의 전달기
310: 자원상황 보고기 320: 경로 연결기
340: 질의결과 전달기
110: 사용자 질의장치 120: 사용자 인증장치
130: 사용자 권한별 경로 관리장치 140, 142, 144: 경로 연결장치
150: 분산 시스템 160, 162, 164: 데이터 분석장치
210: 사용자 권한분석기 220: 자원 관리기
230: 경로 재지정기 240, 330: 질의 전달기
310: 자원상황 보고기 320: 경로 연결기
340: 질의결과 전달기
Claims (11)
- 사용자 질의(Query)장치 및 분산된 경로(Path) 연결장치에 연결되며, 상기 사용자 질의장치와 상기 분산된 경로 연결장치 간의 경로를 관리하는 장치에 있어서,
상기 사용자 질의장치로부터 제1경로를 이용하여 수신한 질의를 분석하고 사용자의 계정이 상기 질의에 의한 데이터 접근이 가능한지 여부를 판단하는 사용자 권한분석기(User Authority Analyzer);
상기 분산된 경로 연결장치에 각각 연결된 분산된 데이터 분석장치 중에서 상기 질의의 처리를 위한 적어도 하나의 데이터 분석장치를 결정하는 자원 관리기(Resource Manager); 및
상기 사용자 질의장치와 상기 적어도 하나의 데이터 분석장치 간의 연결을 위한 제2경로에 관한 정보를 상기 사용자 질의장치로 전달하는 경로 재지정기(Path Redirector)
를 포함하는 사용자 권한별 경로 관리장치. - 제 1 항에 있어서,
상기 제1경로는 질의 전달을 위한 경로이고, 상기 제2경로는 데이터 전달을 위한 경로인 것을 특징으로 하는 사용자 권한별 경로 관리장치. - 제 1 항에 있어서,
상기 자원 관리기는 상기 분산된 데이터 분석장치의 자원상황정보, 상기 사용자의 질의유형, 상기 사용자와 상기 적어도 하나의 데이터 분석장치 간의 커넥션 풀(Connection Pool), 및 상기 사용자의 로그 중에서 적어도 하나에 근거하여 상기 분산된 데이터 분석장치 중에서 상기 질의의 처리를 위한 상기 적어도 하나의 데이터 분석장치를 결정하는 것을 특징으로 하는 사용자 권한별 경로 관리장치. - 제 1 항에 있어서,
상기 사용자 질의장치로부터 상기 제1경로를 이용하여 수신된 질의를 상기 적어도 하나의 데이터 분석장치에 연결된 경로 연결장치로 전달하는 질의 전달기(Query Transmitter)
를 추가로 포함하는 사용자 권한별 경로 관리장치. - 사용자 권한별 경로 관리장치 및 데이터 분석장치에 연결되며, 사용자 질의장치와 상기 데이터 분석장치 간에 경로를 연결하는 장치에 있어서,
상기 데이터 분석장치의 자원상황정보를 상기 사용자 권한별 경로 관리장치로 보고하는 자원상황 보고기(Resource Status Reporter); 및
상기 사용자 질의장치를 상기 데이터 분석장치에 제2경로를 이용하여 연결하는 경로 연결기(Path Connector)
를 포함하는 경로 연결장치. - 제 5 항에 있어서,
상기 제2경로는 데이터 전달을 위한 경로인 것을 특징으로 하는 경로 연결장치. - 제 5 항에 있어서,
상기 경로 연결기는 상기 사용자 질의장치를 상기 제2경로를 이용하여 상기 데이터 분석장치에 직접 연결하거나 중계 연결하는 것을 특징으로 하는 경로 연결장치. - 제 5 항에 있어서,
상기 사용자 권한별 경로 관리장치로부터 수신된 질의를 상기 데이터 분석장치로 전달하는 질의 전달기(Query Transmitter)
를 추가로 포함하는 경로 연결장치. - 제 5 항에 있어서,
상기 데이터 분석장치로부터 수신된 질의결과를 상기 제2경로를 이용하여 상기 사용자 질의장치로 전달하는 질의결과 전달기(Query Result Transmitter)
를 추가로 포함하는 경로 연결장치. - 프로세서에 의해 실행 가능한 컴퓨터 프로그램 명령어들을 포함하는 유형의(Tangible) 컴퓨터 판독 가능한 기록매체에 기록된 컴퓨터 프로그램으로서, 상기 컴퓨터 프로그램 명령어들이 상기 프로세서에 의해 실행되는 경우에,
사용자 질의장치로부터 제1경로를 이용하여 수신한 질의를 분석하고 사용자의 계정이 데이터에 접근 가능한지 여부를 판단하는 과정;
상기 사용자의 계정이 데이터에 접근 가능한 경우, 분산된 경로 연결장치에 각각 연결된 분산된 데이터 분석장치 중에서 상기 질의의 처리를 위한 적어도 하나의 데이터 분석장치를 결정하는 과정; 및
상기 사용자의 계정이 데이터에 접근 가능한 경우, 상기 사용자 질의장치와 상기 적어도 하나의 데이터 분석장치 간의 연결을 위한 제2경로에 관한 정보를 상기 사용자 질의장치로 전달하는 과정
을 포함한 동작들을 수행하는 컴퓨터 프로그램. - 프로세서에 의해 실행 가능한 컴퓨터 프로그램 명령어들을 포함하는 유형의(Tangible) 컴퓨터 판독 가능한 기록매체에 기록된 컴퓨터 프로그램으로서, 상기 컴퓨터 프로그램 명령어들이 상기 프로세서에 의해 실행되는 경우에,
분산된 데이터 분석장치의 자원상황정보를 사용자 권한별 경로 관리장치로 보고하는 과정; 및
사용자 질의장치가 제2경로 연결을 요청하는 경우, 상기 사용자 질의장치를 상기 제2경로를 이용하여 적어도 하나의 데이터 분석장치에 연결하는 과정
을 포함한 동작들을 수행하되,
상기 적어도 하나의 데이터 분석장치는 상기 분산된 데이터 분석장치 중에서 상기 사용자 질의장치의 질의의 처리하도록 상기 사용자 권한별 경로 관리장치에 의해 결정된 것이고,
상기 제2경로는 상기 사용자 질의장치와 상기 적어도 하나의 데이터 분석장치 간의 연결을 위한 것인 컴퓨터 프로그램.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020150154515A KR102233380B1 (ko) | 2015-11-04 | 2015-11-04 | 질의 및 데이터 경로 관리장치 및 컴퓨터 프로그램 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020150154515A KR102233380B1 (ko) | 2015-11-04 | 2015-11-04 | 질의 및 데이터 경로 관리장치 및 컴퓨터 프로그램 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20170052266A KR20170052266A (ko) | 2017-05-12 |
KR102233380B1 true KR102233380B1 (ko) | 2021-03-26 |
Family
ID=58740546
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020150154515A KR102233380B1 (ko) | 2015-11-04 | 2015-11-04 | 질의 및 데이터 경로 관리장치 및 컴퓨터 프로그램 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102233380B1 (ko) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101104300B1 (ko) | 2011-05-11 | 2012-01-11 | 주식회사 신시웨이 | 개인정보 데이터베이스의 접근을 위한 전용 툴을 포함한 접근 관리 시스템 및 방법 |
KR101345095B1 (ko) | 2012-06-19 | 2013-12-26 | 충남대학교산학협력단 | 클러스터 환경 기반의 bgp 라우팅 정보 분석 방법 및 시스템 |
US20140244701A1 (en) | 2013-02-25 | 2014-08-28 | Emc Corporation | Data analytics platform over parallel databases and distributed file systems |
KR101495562B1 (ko) * | 2013-10-29 | 2015-02-25 | 에스케이 텔레콤주식회사 | 데이터 분석 서비스를 제공하기 위한 장치 및 그 방법 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20050121778A (ko) * | 2004-06-23 | 2005-12-28 | 육상수 | 데이터베이스 시스템의 감사, 통제 방법 및 시스템 |
KR101227187B1 (ko) * | 2010-08-16 | 2013-01-28 | 소프트캠프(주) | 보안영역 데이터의 반출 제어시스템과 그 제어방법 |
KR101295898B1 (ko) * | 2011-12-21 | 2013-08-12 | 주식회사 다음커뮤니케이션 | 질의 언어 기반 실시간 데이터 처리 장치 및 처리 방법 |
KR101287096B1 (ko) * | 2011-12-27 | 2013-07-16 | 서강대학교산학협력단 | 다수 사용자가 존재하는 환경에서 개인의 위치 정보를 보호하는 장치 및 방법 |
KR20130113000A (ko) * | 2012-04-05 | 2013-10-15 | 한국전자통신연구원 | 언어 처리 장치 및 그 방법 |
KR101450239B1 (ko) * | 2012-12-12 | 2014-10-14 | 한국과학기술원 | 대용량 xml 데이터에 대한 다수의 가지 패턴 질의의 동시 병렬처리시스템 및 그 방법 |
-
2015
- 2015-11-04 KR KR1020150154515A patent/KR102233380B1/ko active IP Right Grant
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101104300B1 (ko) | 2011-05-11 | 2012-01-11 | 주식회사 신시웨이 | 개인정보 데이터베이스의 접근을 위한 전용 툴을 포함한 접근 관리 시스템 및 방법 |
KR101345095B1 (ko) | 2012-06-19 | 2013-12-26 | 충남대학교산학협력단 | 클러스터 환경 기반의 bgp 라우팅 정보 분석 방법 및 시스템 |
US20140244701A1 (en) | 2013-02-25 | 2014-08-28 | Emc Corporation | Data analytics platform over parallel databases and distributed file systems |
KR101495562B1 (ko) * | 2013-10-29 | 2015-02-25 | 에스케이 텔레콤주식회사 | 데이터 분석 서비스를 제공하기 위한 장치 및 그 방법 |
Also Published As
Publication number | Publication date |
---|---|
KR20170052266A (ko) | 2017-05-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11082426B2 (en) | Identifying accounts having shared credentials | |
US10509684B2 (en) | Blockchain integration for scalable distributed computations | |
CN110543464B (zh) | 一种应用于智慧园区的大数据平台及操作方法 | |
Awaysheh et al. | Next-generation big data federation access control: A reference model | |
US10735426B2 (en) | Secure asynchronous retrieval of data behind a firewall | |
EP3588295B1 (en) | Self-managed intelligent elastic cloud stack | |
US7962635B2 (en) | Systems and methods for single session management in load balanced application server clusters | |
US8255409B2 (en) | Systems and methods for generating a change log for files in a managed network | |
US10296440B2 (en) | Multi-tenant aware debugging methods and systems | |
CN107948203A (zh) | 一种容器登录方法、应用服务器、系统及存储介质 | |
US9270703B1 (en) | Enhanced control-plane security for network-accessible services | |
US20130254761A1 (en) | Granular application sessions tagging | |
CN105183820A (zh) | 一种支持多租户的大数据平台及租户访问方法 | |
US20170279720A1 (en) | Real-Time Logs | |
CN108920111B (zh) | 数据共享方法及分布式数据共享系统 | |
US20220337578A1 (en) | Integrated authentication and authorization for cloud data lakes | |
US11048543B2 (en) | Computer system and resource access control method for securely controlling access using roles with a plurality of users | |
US20150095973A1 (en) | Cloud database lockdown | |
US9237156B2 (en) | Systems and methods for administrating access in an on-demand computing environment | |
CN109298937A (zh) | 文件解析方法及网络设备 | |
CN115037743B (zh) | 云数据库操作中的租户用户管理 | |
CN110457307B (zh) | 元数据管理系统、用户集群创建方法、装置、设备和介质 | |
Xiong et al. | Design and implementation of microservices gateway based on spring cloud zuul | |
US20140007197A1 (en) | Delegation within a computing environment | |
WO2023236637A1 (zh) | 数据管理方法及装置 |
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 |