디지털 라이브러리[ 검색결과 ]
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 프레임워크에 활용하였다. 마지막으로 기존의 분산처리 프레임워크를 사용한 질의 엔진과 비교 평가를 통하여 연구의 타당성을 검증한다.
인메모리 기반 병렬 컴퓨팅 그래프 구조를 이용한 대용량 RDFS 추론
전명중, 소치승, 바트셀렘, 김강필, 김진, 홍진영, 박영택
근래에 들어 풍부한 지식베이스를 구축하기 위한 대용량 RDFS 추론에 대한 관심이 높아지면서 기존의 단일 머신으로는 대용량 데이터의 추론 성능을 향상시키기에 한계가 있다. 그래서 분산 환경에서 의 RDFS 추론 엔진 개발이 활발히 연구되고 있다. 하지만 기존의 분산 환경 엔진은 실시간 처리가 불가능 하며 구현이 어렵고 반복 작업에 취약하다. 본 논문에서는 이러한 문제를 극복하기 위해 병렬 그래프 구조 를 사용한 인-메모리 분산 추론 엔진 구축 방법을 제안한다. 트리플 형태의 온톨로지는 기본적으로 그래프 구조를 가지고 있으므로 그래프 구조 기반의 추론 엔진을 설계하는 것이 직관적이다. 또한 그래프 구조를 활용하는 오퍼레이터를 활용하여 RDFS 추론 규칙을 구현함으로써 기존의 데이터 관점과 달리 그래프 구조의 관점에서 설계할 수 있다. 본 논문에서 제안한 추론 엔진을 평가하기 위해 LUBM1000(1억 3천 3백만 트리플, 17.9GB), LUBM3000(4억 1천 3백만 트리플, 54.3GB)에 대해 추론 속도를 실험을 하였으며 실 험결과, 비-인메모리 분산 추론 엔진보다 약 10배 정도 빠른 추론 성능을 보였다.