디지털 라이브러리[ 검색결과 ]
SparQLing : SparkSQL 기반 대용량 트리플 데이터를 위한 SPARQL 질의 시스템 구축
매년 RDFS 데이터는 대용량화 되어 가며, 빠른 질의를 위한 SPARQL 처리방식에 대한 변화가 필요하게 되었다. 이를 위해 대용량 분산 처리 프레임워크를 활용한 SPARQL의 질의 처리방식이 많이 연구되고 있다. 기존의 연구 중 대용량 분산 처리 프레임워크인 Hadoop(MapReduce) 기반 질의 엔진은 반복적인 작업으로 인한 잦은 I/O 발생으로 실시간 질의 처리가 불가능하며, 인메모리 기반 분산 질의 엔진 역시 낮은 단계의 언어 수준에서 분산 구조를 고려한 구현이 필요하기 때문에 질의 엔진 구축이 어렵다. 본 논문에서는 인메모리 기반 분산 질의 처리 프레임워크인 SparkSQL을 활용하여 대용량 트리플 데이터에 대한 SPARQL 질의문 처리 속도를 향상시킬 수 있는 질의 처리 엔진 구축 방법을 제안한다. SparkSQL 은 Spark 기반의 고수준 분산 질의 엔진으로서 기존의 SQL문을 활용한 질의가 가능하다. 따라서 SPARQL 질의문을 처리하기 위해서는 Jena를 이용하여 Algebra Tree를 생성한 후 이를 Spark 시스템에 적용하기 위한 Spark Algebra Tree로 변환해야 한다. 그리고 이를 이용하여 SparkSQL 질의문을 생성하는 시스템을 구축하였다. 또한 Spark 인메모리 시스템에서 보다 효율적인 질의 처리를 위한 DataFrame기반의 트리플 Property 테이블 설계를 제안하고 SparkSQL 프레임워크에 활용하였다. 마지막으로 기존의 분산처리 프레임워크를 사용한 질의 엔진과 비교 평가를 통하여 연구의 타당성을 검증한다.
GPU 클러스터 기반 대용량 온톨로지 추론
근래에 들어 다양한 시멘틱 서비스를 위하여 기존의 지식을 바탕으로 새로운 지식을 고속으로 추론할 수 있는 대용량 온톨로지 추론 기법이 요구되고 있다. 이런 추세에 따라 대규모의 클러스터를 활용하는 하둡 및 Spark 프레임워크 기반의 온톨로지 추론 엔진 개발이 연구되고 있다. 또한, 기존의 CPU에 비해 많은 코어로 구성되어 있는 GPGPU를 활용하는 병렬 프로그래밍 방식도 온톨로지 추론에 활용되고 있다. 앞서 말한 두 가지 방식의 장점을 결합하여, 본 논문에서는 RDFS 대용량 온톨로지 데이터를 인-메모리 기반 프레임워크인 Spark를 통해 분산시키고 GPGPU를 이용하여 분산된 데이터를 고속 추론하는 방법을 제안한다. GPGPU를 통한 온톨로지 추론은 기존의 추론 방식보다 저비용으로 고속 추론을 수행하는 것이 가능하다. 또한 Spark 클러스터의 각 노드를 통하여 대용량 온톨로지 데이터에 대한 부하를 줄일 수 있다. 본 논문에서 제안하는 추론 엔진을 평가하기 위하여 LUBM10, 50, 100, 120에 대해 추론 속도를 실험하였고, 최대 데이터인 LUBM120(약 1백7십만 트리플, 2.1GB)의 실험 결과, 인-메모리(Spark) 추론 엔진 보다 7배 빠른 추론 성능을 보였다.
인메모리 기반 병렬 컴퓨팅 그래프 구조를 이용한 대용량 RDFS 추론
전명중, 소치승, 바트셀렘, 김강필, 김진, 홍진영, 박영택
근래에 들어 풍부한 지식베이스를 구축하기 위한 대용량 RDFS 추론에 대한 관심이 높아지면서 기존의 단일 머신으로는 대용량 데이터의 추론 성능을 향상시키기에 한계가 있다. 그래서 분산 환경에서 의 RDFS 추론 엔진 개발이 활발히 연구되고 있다. 하지만 기존의 분산 환경 엔진은 실시간 처리가 불가능 하며 구현이 어렵고 반복 작업에 취약하다. 본 논문에서는 이러한 문제를 극복하기 위해 병렬 그래프 구조 를 사용한 인-메모리 분산 추론 엔진 구축 방법을 제안한다. 트리플 형태의 온톨로지는 기본적으로 그래프 구조를 가지고 있으므로 그래프 구조 기반의 추론 엔진을 설계하는 것이 직관적이다. 또한 그래프 구조를 활용하는 오퍼레이터를 활용하여 RDFS 추론 규칙을 구현함으로써 기존의 데이터 관점과 달리 그래프 구조의 관점에서 설계할 수 있다. 본 논문에서 제안한 추론 엔진을 평가하기 위해 LUBM1000(1억 3천 3백만 트리플, 17.9GB), LUBM3000(4억 1천 3백만 트리플, 54.3GB)에 대해 추론 속도를 실험을 하였으며 실 험결과, 비-인메모리 분산 추론 엔진보다 약 10배 정도 빠른 추론 성능을 보였다.