KR20190092901A - SparkSQL 기반의 데이터 페더레이션장치 - Google Patents
SparkSQL 기반의 데이터 페더레이션장치 Download PDFInfo
- Publication number
- KR20190092901A KR20190092901A KR1020180012185A KR20180012185A KR20190092901A KR 20190092901 A KR20190092901 A KR 20190092901A KR 1020180012185 A KR1020180012185 A KR 1020180012185A KR 20180012185 A KR20180012185 A KR 20180012185A KR 20190092901 A KR20190092901 A KR 20190092901A
- Authority
- KR
- South Korea
- Prior art keywords
- federation
- data
- client
- sparksql
- information
- 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/10—File systems; File servers
- G06F16/18—File system types
- G06F16/182—Distributed file 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/10—File systems; File servers
- G06F16/11—File system administration, e.g. details of archiving or snapshots
- G06F16/116—Details of conversion of file system types or formats
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
빅데이터를 보유한 분산 이기종 데이터베이스들을 SparkSQL 기반으로 데이터 페더레이션을 하여 단일 데이터베이스처럼 데이터를 자유롭게 구성할 수 있도록 한 SparkSQL 기반의 데이터 페더레이션장치에 관한 것으로서, 이기종 데이터 원본을 연결하는 커넥터 모듈, 제공된 API를 이용하여 스키마를 통합적으로 조회하는 클라이언트, 클라이언트에서 전송된 요청 정보를 파싱하여 데이터 조회를 요청하고, 데이터 조회 요청에 따른 결과 데이터를 상기 클라이언트로 전달하는 페더레이션 서버, 페더레이션 서버로부터 전송된 job에 대한 정보를 받아 SparkSQL을 활용하여 커넥터 모듈과 연동을 통해 job을 수행한 후 그 결과를 상기 페더레이션 서버에 전달하는 스파크 드라이버 데몬(Spark Driver Daemon) 및 페더레이션 서버와 연동하며, 클라이언트가 수행하려는 job에 대한 메타 정보를 전체 데이터의 정보가 저장된 메타스트림(MetaStream)으로부터 추출하여 저장하는 페더레이션 메타 스토어(Federation Meta Store)를 포함하여, SparkSQL 기반의 데이터 페더레이션장치를 구현한다.
Description
본 발명은 SparkSQL 기반의 데이터 페더레이션(Data Federation) 장치에 관한 것으로, 특히 빅데이터를 보유한 분산 이기종 데이터 원본을 SparkSQL 기반으로 데이터 페더레이션을 하여 단일 데이터베이스처럼 데이터를 자유롭게 구성할 수 있도록 한 SparkSQL 기반의 데이터 페더레이션장치에 관한 것이다.
빅데이터라고 하면 일반적인 데이터베이스 소프트웨어가 저장, 관리, 분석할 수 있는 범위를 초과하는 규모의 데이터로써, 전 세계적으로 생산되고 있는 데이터는 기하급수적으로 늘어나고, 데이터의 구조 또한 매우 다양화되어 수집과 통합에 더 정교한 기술이 요구되고 있다.
최근 정부 차원에서 공공 데이터들의 개방이 활성화되고 있다. 공공 데이터는 다양하게 생산되는 빅데이터 중에서도 가장 가치 있는 데이터 중 하나로 여겨지고 있다. 관련 기술자들은 정부가 운영하는 데이터 광장 등을 통하여 공공 데이터를 쉽게 접할 수 있게 되었고, 시맨틱웹과 같은 인터넷 기술과 스마트폰, 태블릿 피씨와 같은 모바일 기기의 발달과 함께 다가온 빅데이터는 그 형태와 크기, 접근 방식 등이 매우 다양해 졌다. 이러한 빅데이터를 분석 시스템이 활용할 수 있도록 수집하기 위해서는 제각각인 유형 및 접근정보를 통해 연결하고 필요한 데이터를 찾아서 수집 및 가공 등의 과정을 거쳐 목적에 따라 활용할 수 있다.
이렇게 빅데이터를 보유한 분산 이기종 데이터베이스들을 단일 데이터베이스처럼 활용하기 위해 사용되는 기술이 데이터 페더레이션(Data Federation)이다. 데이터 페더레이션을 이용하면 사용자가 소스 위치를 알 필요가 없으며, 단일 인터페이스로도 이기종 데이터베이스의 빅데이터를 사용할 수 있다.
데이터 페이레이션을 이용하여 분산 이기종 데이터베이스를 페더레이션하는 종래의 기술이 하기의 <특허문헌 1> 내지 <특허문헌 3> 에 개시되어 있다.
<특허문헌 1> 에 개시된 종래기술은 페더레이션을 포함하는 네트워크화된 컴퓨팅 환경에서 구현되며, 페더레이션은 미리 규정된 정책에 따라 인증문 및 허가문이 조직을 연결하도록 하는 방식으로 결합한 2 이상의 조직을 포함하고, 데이터 구조는 제1 페더레이션에 대한 또는 제1 페더레이션 내의 조직에 대해 적어도 하나 이상의 메타데이터의 그룹을 포함하는 필드를 포함한다. 이러한 구성을 통해 페더레이션 메타데이터가 공유된다.
또한, <특허문헌 2> 에 개시된 종래기술은 각각의 네트워크 도메인 내에서 수집된 메타 운용데이터를 정의된 코어 스키마(Core Schema)에 따라 지역 리소스를 저장하고, 메타 운용데이터 명세서를 생성하여 도메인 간에 교환한 후 페더레이션함으로써, 도메인 간, 혹은 국가 간, 대륙 간에 위치한 네트워크의 종단간(End-to-End) 토폴로지, 운용상태 등의 정보를 이용자에게 제공할 수 있게 된다.
또한, <특허문헌 3> 에 개시된 종래기술은 페더레이션 객체모델(FOM)에 기초하여 이루어진 XML 문서 형태의 시뮬레이션 객체모델(SOM)을 참조하여 페더레이트의 통신 인터페이스를 자동으로 생성하는 인터페이스 자동 생성부를 가진 데이터 분산처리 시스템 및 그 방법을 제공한다.
그러나 상기와 같은 일반적인 데이터 페더레이션 및 종래기술은 메모리 기반이 아니므로 데이터 추출 및 적재 작업에 시간이 많이 소요되어 성능이 떨어지고, 기존 데이터베이스 DML에 의존적이어서 사용자가 쉽게 데이터베이스에 접근하는 것이 어렵고, 특정 플랫폼(예를 들어, 하둡(Hadoop))에 의존적인 단점이 있다.
따라서 본 발명은 상기와 같은 종래기술에서 발생하는 제반 문제점을 해결하기 위해서 제안된 것으로서, 빅데이터를 보유한 분산 이기종 데이터 원본들을 SparkSQL 기반으로 데이터 페더레이션을 하여 단일 데이터베이스처럼 데이터를 자유롭게 구성할 수 있도록 한 SparkSQL 기반의 데이터 페더레이션장치를 제공하는 데 그 목적이 있다.
상기한 바와 같은 목적을 달성하기 위하여, 본 발명에 따른 SparkSQL 기반의 데이터 페더레이션장치는, 이기종 데이터 원본을 연결하는 커넥터 모듈; 제공된 API를 이용하여 스키마를 통합적으로 조회하는 클라이언트; 상기 클라이언트에서 전송된 요청 정보를 파싱하여 데이터 조회를 요청하고, 상기 데이터 조회 요청에 따른 결과 데이터를 상기 클라이언트로 전달하는 페더레이션 서버; 상기 페더레이션 서버로부터 전송된 Job에 대한 정보를 받아 SparkSQL을 활용하여 상기 커넥터 모듈과 연동을 통해 job을 수행한 후 그 결과를 상기 페더레이션 서버에 전달하는 스파크 드라이버 데몬(Spark Driver Daemon); 상기 페더레이션 서버와 연동하며, 클라이언트가 수행하려는 job에 대한 메타 정보를 전체 데이터의 정보가 저장된 메타스트림(MetaStream)으로부터 추출하여 저장하는 페더레이션 메타 스토어(Federation Meta Store)를 포함하는 것을 특징으로 한다.
상기에서 클라이언트는 사용자가 파일(Local/HDFS)에 대한 외부 테이블(External Table)을 생성할 때 사용할 수 있는 클라이언트 모듈(CMD)을 포함하는 것을 특징으로 한다.
상기에서 클라이언트와 페더레이션 서버와 스파크 드라이버 데몬과 페더레이션 메타 스토어는 소켓(Socket) 통신을 통해 상호 데이터를 송수신하는 것을 특징으로 한다.
상기에서 페더레이션 서버는 상기 클라이언트와 스파크 드라이버 데몬과의 연동을 담당하고, 상기 페더레이션 메타 스토어와의 연계를 담당하는 것을 특징으로 한다.
상기에서 페더레이션 서버는 상기 클라이언트에서 요청 정보가 발생하면 요청 정보를 파싱하여 소켓 통신을 통해 상기 스파크 드라이버 데몬에 전송하고, 상기 스파크 드라이버 데몬에서 job을 수행한 결과를 상기 클라이언트로 전송해주는 것을 특징으로 한다.
상기에서 스파크 드라이버 데몬은 SparkSQL을 수행하기 위한 템프 테이블 셋(Temp Table Set)을 만들기 위하여 job에 대한 정보를 파싱하여 스파크 컨텍스트(Spark Context)를 활용하여, 데이터세팅(DataSetting), RDD, 데이터프레임(DataFrame)을 각각 생성하는 것을 특징으로 한다.
상기에서 스파크 드라이버 데몬은 멀티 스레드(Multi Thread) 환경에서 각 작업의 액션을 수행하는 것을 특징으로 한다.
상기에서 페더레이션 메타 스토어는 상기 메타스트림에서 클라이언트가 수행하려는 job에 관련된 메타 정보만을 추출하여 클라이언트와 공유하며, 데이터 보안 정책에 대한 정보를 관장하는 것을 특징으로 한다.
본 발명에 따르면 인-메모리(In-Memory) 기반 플랫폼을 사용함으로써, 성능 향상을 도모할 수 있으며, 기존 데이터베이스 DML에 의존적이지 않고 ANSI SQL 등을 활용하여 사용자가 데이터베이스 접근에 용이함을 제공해주는 장점이 있다.
또한, 본 발명에 따르면 반드시 하둡(Hadoop)이 설치되지 않아도 동작 가능하며, 하둡 종류에 의존적이지 않고 리눅스(Linux) 플랫폼이면 어디에서나 동작 가능한 장점이 있다.
도 1은 본 발명에 따른 SparkSQL 기반의 데이터 페더레이션장치의 구조도,
도 2는 본 발명에서 논리적 패키지 다이어그램,
도 3a는 본 발명에 적용된 Execute Query 예시,
도 3b는 페더레이션 서버에서 스파크 드라이버 데몬으로의 통신 프로토콜,
도 3c는 스파크 드라이버 데몬에서 페더레이션 서버로의 통신 프로토콜,
도 4는 본 발명에서 클라이언트와 페더레이션 서버와 스파크 데몬 간의 통신 연결도,
도 5는 본 발명에서 데이터 페더레이션을 위한 통신 협력 예시도,
도 6은 SparkSQL에서 지원하는 키워드 테이블.
도 2는 본 발명에서 논리적 패키지 다이어그램,
도 3a는 본 발명에 적용된 Execute Query 예시,
도 3b는 페더레이션 서버에서 스파크 드라이버 데몬으로의 통신 프로토콜,
도 3c는 스파크 드라이버 데몬에서 페더레이션 서버로의 통신 프로토콜,
도 4는 본 발명에서 클라이언트와 페더레이션 서버와 스파크 데몬 간의 통신 연결도,
도 5는 본 발명에서 데이터 페더레이션을 위한 통신 협력 예시도,
도 6은 SparkSQL에서 지원하는 키워드 테이블.
이하 본 발명의 바람직한 실시 예에 따른 SparkSQL 기반의 데이터 페더레이션장치를 첨부된 도면을 참조하여 상세하게 설명한다.
도 1은 본 발명의 바람직한 실시 예에 따른 SparkSQL 기반의 데이터 페더레이션장치의 구조도로서, 이기종 데이터 원본(10), 커넥터 모듈(20), 클라이언트(JDBC)(30), 페더레이션 서버(Federation Server)(40), 스파크 드라이버 데몬(Spark Driver Daemon)(50), 메타스트림(MetaStream)(60), 페더레이션 메타 스토어(70)를 포함한다.
상기 이기종 데이터 원본(10)은 다양한 형식으로 빅데이터가 저장된 데이터베이스로서, DBMS, TeraStream Bass, Hive, File(Local or HDFS) 등을 의미한다.
상기 커넥터 모듈(20)은 이기종 데이터 원본(10)을 연결하는 커넥터 역할을 하는 것으로서, 대용량 데이터 추출과 가공 성능 향상을 위해 FACT와 Sort 엔진을 포함할 수 있다.
상기 클라이언트(30)는 제공된 API를 이용하여 스키마(Schema)를 통합적으로 조회하는 역할을 한다. 이러한 클라이언트(30)는 사용자가 파일(Local/HDFS)에 대한 외부 테이블(External Table)을 만들 때 사용할 수 있는 클라이언트 모듈(CMD)을 포함할 수 있다.
상기 페더레이션 서버(40)는 상기 클라이언트(30)에서 전송된 요청 정보를 파싱(parsing)하여 데이터 조회를 요청하고, 상기 데이터 조회 요청에 따른 결과 데이터를 상기 클라이언트(30)로 전달하는 역할을 한다. 이러한 페더레이션 서버(40)는 상기 클라이언트(30)와 스파크 드라이버 데몬(50)과의 연동을 담당하고, 상기 페더레이션 메타 스토어(70)와의 연계를 담당한다. 바람직하게 상기 페더레이션 서버(40)는 상기 클라이언트(30)에서 요청 정보가 발생하면 요청 정보를 파싱하여 소켓(Socket) 통신을 통해 상기 스파크 드라이버 데몬(50)에 전송하고, 상기 스파크 드라이버 데몬(50)에서 job을 수행한 결과를 상기 클라이언트(30)로 전송한다.
또한, 상기 스파크 드라이버 데몬(50)은 상기 페더레이션 서버(40)로부터 전송된 job에 대한 정보를 받아 SparkSQL을 활용하여 상기 커넥터 모듈(20)과 연동을 통해 job을 수행한 후, 그 결과를 상기 페더레이션 서버(40)에 전달하는 역할을 한다. 이러한 스파크 드라이버 데몬(50)은 SparkSQL을 수행하기 위한 템프 테이블 셋(Temp Table Set)을 만들기 위하여 job에 대한 정보를 파싱한 스파크 컨텍스트(Spark Context)를 활용하여, 데이터세팅(DataSetting), RDD, 데이터프레임(DataFrame)을 각각 생성한다. 바람직하게, 스파크 드라이버 데몬(50)은 멀티 스레드(Multi Thread) 환경에서 각 작업의 액션을 수행한다.
또한, 상기 페더레이션 메타 스토어(70)는 상기 페더레이션 서버(40)와 연동하며, 클라이언트(30)가 수행하려는 job에 대한 메타 정보를 전체 데이터의 정보가 저장된 메타스트림(MetaStream)(60)으로부터 추출하여 저장하는 역할을 한다. 이러한 페더레이션 메타 스토어(70)는 상기 메타스트림(60)에서 클라이언트(30)가 수행하려는 job에 관련된 메타 정보만을 추출하여 클라이언트(30)와 공유하며, 데이터 보안 정책에 대한 정보를 관장한다.
상기 클라이언트(30)와 페더레이션 서버(40)와 스파크 드라이버 데몬(50)과 페더레이션 메타 스토어(70)는 소켓(Socket) 통신을 통해 상호 데이터를 송수신하는 것이 바람직하다.
이와 같이 구성된 본 발명에 따른 SparkSQL 기반의 데이터 페더레이션장치의 동작을 구체적으로 설명하면 다음과 같다.
먼저, 이기종 데이터 원본(10)을 통해 job을 요청하기 위한 클라이언트(30)는 제공된 API를 이용하여 페더레이션 서버(40)와 연동하여 스키마(Schema)를 통합적으로 조회한다. 여기서 클라이언트(30)는 사용자가 파일(Local/HDFS)에 대한 외부 테이블(External Table)을 생성할 때 사용할 수 있는 클라이언트 모듈(CMD)을 이용하여 job을 요청하는 것이 바람직하다. job 요청을 위해, 소켓 통신을 이용한다. 즉, 요청 정보를 serialize 한 후 정해진 포맷으로 페더레이션 서버(40)에 전송한다. 도 3a는 클라이언트(30)에서 페더레이션 서버(40)로 job을 요청할 때, 통신 프로토콜 포맷의 예시이다. 여기서 클라이언트(30)는 개발자가 개발을 하기 위한 기본 API를 탑재하는 데, 개발 범위는 크게 Connect, State, Execute 등이 구분되며, Execute에서 사용 가능한 쿼리 종류는 External Table Create, Select, Join, Group By 등이다.
상기 페더레이션 서버(40)는 클라이언트(40)로부터 특정 job이 요청되면, 수신한 패킷을 de serialize 하는 과정을 거쳐 데이터를 수신한다. 이어, 상기 클라이언트(30)에서 전송된 요청 정보를 파싱(parsing)하여 소켓 통신을 통해 상기 스파크 드라이버 데몬(50)에 데이터 조회를 요청한다. 이때, 페더레이션 메다 스토어(70)와 연계하여 job에 대한 메타 데이터를 요청한다.
도 3b는 상기 페더레이션 서버(40)에서 스파크 드라이버 데몬(50)으로 데이터 조회를 요청할 때의 통신 프로토콜 예시이다.
상기 스파크 드라이버 데몬(50)은 상기 페더레이션 서버(40)로부터 전송된 job에 대한 정보를 받으면, SparkSQL을 활용하여 상기 커넥터 모듈(20)과 연동을 통해 job을 수행한다. SparkSQL에서 지원하는 keywords 및 Aggregation Functions, Sub Functions을 모두 지원할 수 있다. 도 6은 상기 SparkSQL에서 지원하는 키워드의 예시이다. 스파크 드라이버 데몬(50)은 SparkSQL을 수행하기 위한 템프 테이블 셋(Temp Table Set)을 만들기 위하여 job에 대한 정보를 파싱한 스파크 컨텍스트(Spark Context)를 활용하여, 데이터세팅(DataSetting), RDD, 데이터프레임(DataFrame)을 각각 생성한다. 이때, 스파크 드라이버 데몬(50)은 멀티 스레드(Multi Thread) 환경에서 각 작업의 액션을 수행한다.
상기 커넥터 모듈(20)은 이기종 데이터 원본(10)을 연결하는 커넥터 역할을 하는 것으로서, 대용량 데이터 추출과 가공 성능 향상을 위해 FACT와 Sort 엔진을 포함한다. 상기 이기종 데이터 원본(10)은 DBMS, TeraStream Bass, Hive, File(Local or HDFS) 등을 포함한다. 따라서 커넥터 모듈(20)은 Local File의 검색 및 데이터 추출을 위해, Hadoop 클러스터 환경에서 모든 노드들이 공유할 수 있는 read 권한이 허용된 공유 볼륨 형태를 지원한다. 아울러 HDFS File의 검색 및 데이터 추출을 위해, Hadoop 클러스터 환경에서 read 권한이 허용된 HDFS 데이터를 지원한다. 아울러 TeraStream BASS 메모리 상의 데이터를 지원하며, JDBC를 지원하는 모든 RDBM을 지원하며, Hadoop 클러스터 환경에서 read 권한이 허용된 Hive Metastore 연동 데이터를 지원한다.
상기 스파크 드라이버 데몬(50)에서 job을 수행하여 획득한 결과 데이터는 소켓 통신을 통해 상기 페더레이션 서버(40)에 전달된다. 도 3c는 스파크 드라이버 데몬(50)에서 페더레이션 서버(40)로 결과 데이터를 전송하는 통신 프로토콜의 예시이다.
상기 페더레이션 서버(40)는 상기 스파크 드라이버 데몬(50)에서 job을 수행한 결과를 소켓 통신을 통해 상기 클라이언트(30)로 전송한다.
도 4는 상기 클라이언트(30)와 페더레이션 서버(40) 및 스파크 드라이버 데몬(50)에서 상호 통신을 수행하는 절차를 나타낸 것이다.
클라이언트(30)에서 페더레이션 서버(40)와 접속하면(1: Connect()), 페더레이션 서버(40)에서 그에 대한 응답(2: Ack())을 한다. 응답을 수신한 클라이언트(30)는 조회 쿼리를 상기 페더레이션 서버(40)로 전송한다(3: Stat, Create()). 조회 쿼리 요처에 따라 페더레이션 서버(40)는 클라이언트(30)로 응답을 한다(4: Ack()). 응답을 수신한 클라이언트(30)는 요청 쿼리를 페더레이션 서버(40)로 전송한다(5: Select()). 이러한 요청에 따라 페더레이션 서버(40)는 스파크 드라이버 데몬(50)에 job 요청을 한다(6: Request()). job 요청에 따라 스파크 드라이버 데몬(50)은 job을 수행하고(7: select loop()), 그 결과를 페더레이션 서버(40)에 전달한다(8: Response()). 조회 요청 결과를 수신한 페더레이션 서버(40)는 클라이언트(30)로 결과를 전송한다(9: Result()). 조회 요청에 따른 결과를 수신한 클라이언트(30)는 페더레이션 서버(40)에 접속 해제를 요청하게 되고(10: Disconnect()), 이를 수신한 페더레이션 서버(40)는 클라이언트(30)에 응답(11: Ack())을 한다. 이러한 과정을 통해 조회 요청부터 결과 전달까지의 통신이 이루어진다.
도 2는 상기와 같은 클라이언트의 정보 조회 요청부터 결과 수신까지의 전체 논리적 패키지를 도시한 것이며, 도 5는 통신 협력 관계를 도시한 것이다.
한편, 페더레이션 메타 스토어(70)는 상기 페더레이션 서버(40)와 연동하며, 클라이언트(30)가 수행하려는 job에 대한 메타 정보를 전체 데이터의 정보가 저장된 메타스트림(MetaStream)(60)으로부터 추출하여 저장하고, 추출한 메타 정보를 클라이언트(30)와 공유한다. 바람직하게 페더레이션 메타 스토어(70)는 데이터 보안 정책에 대한 정보도 관장한다.
이러한 본 발명에 따르면 인-메모리(In-Memory) 기반 플랫폼을 사용함으로써, 성능 향상을 도모할 수 있으며, 기존 데이터베이스 DML에 의존적이지 않고 Ansi SQL 등을 활용하여 사용자가 데이터베이스 접근에 쉽도록 도모해준다.
아울러 반드시 하둡(Hadoop)이 설치되지 않아도 동작 가능하며, 하둡 종류에 의존적이지 않고 리눅스(Linux) 플랫폼이면 어디에서나 동작 가능하도록 편의성도 제공해준다.
이상 본 발명자에 의해서 이루어진 발명을 상기 실시 예에 따라 구체적으로 설명하였지만, 본 발명은 상기 실시 예에 한정되는 것은 아니고 그 요지를 이탈하지 않는 범위에서 여러 가지로 변경 가능한 것은 이 기술분야에서 통상의 지식을 가진 자에게 자명하다.
본 발명은 이기종 데이터 원본을 쉽게 활용할 수 있는 분산 처리 시스템 기술에 적용된다.
10: 이기종 데이터원본
20: 커넥터 모듈
30: 클라이언트
40: 페더레이션 서버
50: 스파크 드라이버 데몬
60: 메타스트림
70: 페더레이션 메다 스토어
20: 커넥터 모듈
30: 클라이언트
40: 페더레이션 서버
50: 스파크 드라이버 데몬
60: 메타스트림
70: 페더레이션 메다 스토어
Claims (8)
- SparkSQL 기반의 데이터 페더레이션장치로서,
이기종 데이터 원본을 연결하는 커넥터 모듈;
제공된 API를 이용하여 스키마를 통합적으로 조회하는 클라이언트;
상기 클라이언트에서 전송된 요청 정보를 파싱하여 데이터 조회를 요청하고, 상기 데이터 조회 요청에 따른 결과 데이터를 상기 클라이언트로 전달하는 페더레이션 서버;
상기 페더레이션 서버로부터 전송된 job에 대한 정보를 받아 SparkSQL을 활용하여 상기 커넥터 모듈과 연동을 통해 job을 수행한 후 그 결과를 상기 페더레이션 서버에 전달하는 스파크 드라이버 데몬(Spark Driver Daemon); 및
상기 페더레이션 서버와 연동하며, 클라이언트가 수행하려는 job에 대한 메타 정보를 전체 데이터의 정보가 저장된 메타스트림(MetaStream)으로부터 추출하여 저장하는 페더레이션 메타 스토어(Federation Meta Store)를 포함하는 것을 특징으로 하는 SparkSQL 기반의 데이터 페더레이션장치.
- 청구항 1에서, 상기 클라이언트는 사용자가 파일(Local/HDFS)에 대한 외부 테이블(External Table)을 생성할 때 사용할 수 있는 클라이언트 모듈(CMD)을 포함하는 것을 특징으로 하는 SparkSQL 기반의 데이터 페더레이션장치.
- 청구항 1에서, 상기 클라이언트와 페더레이션 서버와 스파크 드라이버 데몬 및 페더레이션 메타 스토어는 소켓(Socket) 통신을 통해 상호 데이터를 송수신하는 것을 특징으로 하는 SparkSQL 기반의 데이터 페더레이션장치.
- 청구항 1에서, 상기 페더레이션 서버는 상기 클라이언트와 스파크 드라이버 데몬과의 연동을 담당하고, 상기 페더레이션 메타 스토어와의 연계를 담당하는 것을 특징으로 하는 SparkSQL 기반의 데이터 페더레이션장치.
- 청구항 4에서, 상기 페더레이션 서버는 상기 클라이언트에서 요청 정보가 발생하면 요청 정보를 파싱하여 소켓 통신을 통해 상기 스파크 드라이버 데몬에 전송하고, 상기 스파크 드라이버 데몬에서 job을 수행한 결과를 상기 클라이언트로 전송해주는 것을 특징으로 하는 SparkSQL 기반의 데이터 페더레이션장치.
- 청구항 1에서, 상기 스파크 드라이버 데몬은 SparkSQL을 수행하기 위한 템프 테이블 셋(Temp Table Set)을 만들기 위하여 job에 대한 정보를 파싱한 스파크 컨텍스트(Spark Context)를 활용하여, 데이터세팅(DataSetting), RDD, 데이터프레임(DataFrame)을 각각 생성하는 것을 특징으로 하는 SparkSQL 기반의 데이터 페더레이션장치.
- 청구항 6에서, 상기 스파크 드라이버 데몬은 멀티 스레드(Multi Thread) 환경에서 각 작업의 액션을 수행하는 것을 특징으로 하는 SparkSQL 기반의 데이터 페더레이션장치.
- 청구항 1에서, 상기 페더레이션 메타 스토어는 상기 메타스트림에서 클라이언트가 수행하려는 job에 관련된 메타 정보만을 추출하여 클라이언트와 공유하며, 데이터 보안 정책에 대한 정보를 관장하는 것을 특징으로 하는 SparkSQL 기반의 데이터 페더레이션장치.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020180012185A KR20190092901A (ko) | 2018-01-31 | 2018-01-31 | SparkSQL 기반의 데이터 페더레이션장치 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020180012185A KR20190092901A (ko) | 2018-01-31 | 2018-01-31 | SparkSQL 기반의 데이터 페더레이션장치 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20190092901A true KR20190092901A (ko) | 2019-08-08 |
Family
ID=67613111
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020180012185A KR20190092901A (ko) | 2018-01-31 | 2018-01-31 | SparkSQL 기반의 데이터 페더레이션장치 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20190092901A (ko) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021143010A1 (zh) * | 2020-01-17 | 2021-07-22 | 平安科技(深圳)有限公司 | 一种分布式计算任务的响应方法及设备 |
CN113722337A (zh) * | 2021-11-03 | 2021-11-30 | 深圳市信润富联数字科技有限公司 | 业务数据确定方法、装置、设备及存储介质 |
KR20240111108A (ko) | 2023-01-09 | 2024-07-16 | 주식회사 이글루코퍼레이션 | 빅데이터를 이용한 스트리밍 데이터 제공 플랫폼 기반 스트리밍 데이터 제공 장치 및 방법 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20090074023A (ko) | 2006-10-05 | 2009-07-03 | 마이크로소프트 코포레이션 | 메타데이터를 획득하는 방법 및 컴퓨터 판독 가능 매체 |
KR101045346B1 (ko) | 2010-10-28 | 2011-06-30 | 엘아이지넥스원 주식회사 | 인터페이스 자동 생성부를 가진 데이터 분산처리 시스템 및 그 방법 |
KR101078617B1 (ko) | 2010-10-27 | 2011-11-01 | 한국과학기술정보연구원 | 네트워크 도메인 간 메타운용데이터 페더레이션 방법 그리고 이에 적합한 메타 운용데이터 페더레이션 시스템 |
-
2018
- 2018-01-31 KR KR1020180012185A patent/KR20190092901A/ko not_active Application Discontinuation
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20090074023A (ko) | 2006-10-05 | 2009-07-03 | 마이크로소프트 코포레이션 | 메타데이터를 획득하는 방법 및 컴퓨터 판독 가능 매체 |
KR101078617B1 (ko) | 2010-10-27 | 2011-11-01 | 한국과학기술정보연구원 | 네트워크 도메인 간 메타운용데이터 페더레이션 방법 그리고 이에 적합한 메타 운용데이터 페더레이션 시스템 |
KR101045346B1 (ko) | 2010-10-28 | 2011-06-30 | 엘아이지넥스원 주식회사 | 인터페이스 자동 생성부를 가진 데이터 분산처리 시스템 및 그 방법 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021143010A1 (zh) * | 2020-01-17 | 2021-07-22 | 平安科技(深圳)有限公司 | 一种分布式计算任务的响应方法及设备 |
CN113722337A (zh) * | 2021-11-03 | 2021-11-30 | 深圳市信润富联数字科技有限公司 | 业务数据确定方法、装置、设备及存储介质 |
KR20240111108A (ko) | 2023-01-09 | 2024-07-16 | 주식회사 이글루코퍼레이션 | 빅데이터를 이용한 스트리밍 데이터 제공 플랫폼 기반 스트리밍 데이터 제공 장치 및 방법 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10902016B2 (en) | Autonomous interdependent repositories | |
EP3726411B1 (en) | Data desensitising method, server, terminal, and computer-readable storage medium | |
US12050560B2 (en) | Systems and methods for in-place records management and content lifecycle management | |
JP7037555B2 (ja) | サービス層のためのアクセス制御ポリシーの同期 | |
US11308123B2 (en) | Selectively replicating changes to hierarchial data structures | |
EP3446239B1 (en) | Versioned hierarchical data structures in a distributed data store | |
CN109936571B (zh) | 一种海量数据共享方法、开放共享平台及电子设备 | |
KR101217389B1 (ko) | 동기화 서버 프로세스 | |
US9384248B2 (en) | Database query language gateway | |
CN114756577B (zh) | 多源异构数据的处理方法、计算机设备及存储介质 | |
US7886341B2 (en) | External authentication against a third-party directory | |
US9910895B2 (en) | Push subscriptions | |
US8250102B2 (en) | Remote storage and management of binary object data | |
WO2018036324A1 (zh) | 一种智慧城市信息共享的方法和装置 | |
EP2778968B1 (en) | Mobile telecommunication device remote access to cloud-based or virtualized database systems | |
KR20190092901A (ko) | SparkSQL 기반의 데이터 페더레이션장치 | |
CN111506589B (zh) | 基于联盟链的区块链数据服务系统、访问方法及存储介质 | |
US20150205880A1 (en) | Integrating linked data with relational data | |
US11762846B1 (en) | Key prefix driven data encryption in tree structures | |
CN103034738A (zh) | 用于管理异构非结构化数据的关系型数据库及其创建和查询非结构化数据描述信息的方法 | |
US20150178365A1 (en) | System And Method For Implementing Nested Relationships Within A Schemaless Database | |
Aloisio et al. | The GRELC project: Towards GRID-DBMS. | |
CN107330089B (zh) | 跨网络结构化数据收集系统 | |
Pál et al. | Mobile data synchronization methods | |
EP4154149A1 (en) | Data storage server and client devices for securely storing data |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E601 | Decision to refuse application |