서지주요정보
Integration of DBMS and distributed file system for big data management and analytics = 빅 데이터 관리 및 분석을 위한 DBMS와 분산 파일 시스템의 통합
서명 / 저자 Integration of DBMS and distributed file system for big data management and analytics = 빅 데이터 관리 및 분석을 위한 DBMS와 분산 파일 시스템의 통합 / Jun Sung Kim.
발행사항 [대전 : 한국과학기술원, 2015].
Online Access 원문보기 원문인쇄

소장정보

등록번호

8028055

소장위치/청구기호

학술문화관(문화관) 보존서고

DCS 15007

휴대폰 전송

도서상태

이용가능(대출불가)

사유안내

반납예정일

리뷰정보

초록정보

The relational DBMS (RDBMS) has been widely used since it supports various high-level functionalities such as SQL, schemas, indexes, and transactions that do not exist in the O/S file system. But, a recent advent of big data technology facilitates development of new systems that sacrifice the DBMS functionality in order to efficiently manage large-scale data. Those so-called NoSQL systems use a distributed file system (DFS), which support scalability and reliability. They support scalability of the system by storing data into a large number of low-cost commodity hardware and support reliability by storing the data in replica. To efficiently extract valuable information from large-scale data, they use the MapReduce framework, which provides scalable and reliable parallel processing of big data. NoSQL systems sacrifice DBMS functionality in order to maximize scalability and parallelism. However, as high-level functionality of the DBMS is considered important for large-scale data management as well, there have been a lot of efforts to support DBMS functionality for NoSQL systems, which we call Scalable SQL. In this dissertation, we explore the notion of integrating the DBMS with DFS. We propose two instances of the Scalable SQL: one for transaction processing of big data and the other for big data analytics. In the first part of the dissertation, we propose an architecture of a DBMS that uses the DFS as storage. With this novel architecture, the DBMS is capable of supporting scalability and reliability of the DFS as well as high-level functionality of DBMS. Thus, a DBMS can utilize a virtually unlimited storage space provided by the DFS, rendering it to be suitable for big data analytics. As part of the architecture of the DBMS, we propose the notion of the meta DFS file, which allows the DBMS to use the DFS as the storage in which insert, delete, updates can be done efficiently, and an efficient transaction management method including recovery and concurrency control. We implement this architecture in Odysseus/DFS, an integration of the Odysseus relational DBMS, which has been being developed at KAIST for over 24 years, with the DFS. Our experiments on transaction processing show that, due to the high-level functionality of Odysseus/DFS, it outperforms Hbase. We also show that, compared with an RDBMS with local storage, the performance of Odysseus/DFS is comparable or marginally degraded, showing that the overhead of Odysseus/DFS for supporting scalability by using the DFS as the storage is not significant. In the second part of this dissertation, we propose a new approach for performing big data analytics through parallelism utilizing the MapReduce framework on top of Odysseus/DFS. HadoopDB is the only work that directly utilizes the DBMS for big data analytics in the MapReduce framework, taking advantage of both the DBMS and MapReduce. However, HadoopDB does not support sharability for the entire data since it stores the data into multiple nodes in the shared-nothing manner - i.e., it partitions a job into multiple tasks where each task is assigned to a fragment of data. Due to this limitation, HadoopDB cannot effectively process queries that require internode communication. That is, HadoopDB needs to re-load the entire data to process some queries (e.g., 2-way joins) or cannot support some complex queries (e.g., 3-way joins). Since the limitation of HadoopDB comes from its lack of sharability of the DBMS using local storage, we try to use our Odysseus/DFS architecture instead. We first propose the notion of the DFS-integrated DBMS where a DBMS is tightly integrated with the distributed file system (DFS). By using the DFS-integrated DBMS, we can obtain sharability of the entire data. That is, a DBMS process in the system can access any data since multiple DBMSs are run on an integrated storage system in the DFS. We then use the MapReduce framework on top of a DFS-integrated DBMS. We call this framework PARADISE. In PARADISE, we employ a job splitting method that logically splits a job based on the predicate in the integrated storage system. This contrasts with physical splitting in HadoopDB. We also propose the notion of locality mapping for further optimization of logical splitting. We show that PARADISE effectively overcomes the drawbacks of HadoopDB by identifying the following strengths. (1) It has a significantly faster (by up to 6.41 times) amortized query processing performance since it obviates the need to re-load data required in HadoopDB. (2) It supports query types more complex than the ones supported by HadoopDB. We summarize the contributions of this dissertation as follows. First, we have proposed Odysseus/DFS, a new architecture that integrates DBMS with the DFS for transaction processing of big data. Odysseus/DFS takes advantage of both functionality of the DBMS and scalability of the DFS. Second, we have proposed a new approach for big data analytics that uses MapReduce framework on top of Odysseus/DFS. PARADISE overcomes drawbacks of HadoopDB through sharability of Odysseus/DFS. PARADISE employs the logical job splitting method rather than the physical job splitting method, which is made possible due to sharability supported by Odysseus/DFS. Finally, through extensive experiments and overhead analysis, we have shown the effectiveness of the proposed systems.

관계형 DBMS (RDBMS)는 O/S 파일 시스템에서 제공하지 않는 SQL, 스키마, 색인 및 트랜잭션과 같은 높은 수준의 다양한 기능성(functionality)을 갖고 있으므로 널리 사용되어 왔다. 하지만, 최근 들어 빅 데이터가 나타남에 따라 DBMS의 기능성은 갖지 않으나 대용량의 데이터를 효율적으로 관리할 수 있는 새로운 시스템들이 등장하게 되었다. NoSQL 시스템이라 불리는 이들은 확장성(scalability)과 신뢰성(reliability)을 지원하는 분산 파일 시스템을 사용한다. NoSQL 시스템은 다수의 값싼 상용 하드웨어에 데이터를 저장함으로써 확장성을 지원하고, 데이터를 중복하여 저장함으로써 신뢰성을 지원한다. 또한 이들은 대용량의 데이터로부터 효율적으로 유용한 정보를 추출하기 위해 MapReduce 프레임워크를 사용한다. MapReduce 프레임워크는 빅 데이터의 병렬 처리를 위한 확장성과 신뢰성을 제공한다. NoSQL 시스템은 확장성과 병렬성을 극대화하기 위해 DBMS 기능성을 많이 희생하였다. 그러나, 대용량 데이터의 관리를 위해 DBMS의 높은 기능성 또한 중요하므로 NoSQL 시스템을 위한 DBMS 기능성을 지원하는 다양한 활동이 나타나게 되었으며, 이러한 활동의 결과들을 Scalable SQL이라 부른다. 본 학위 논문에서는 DBMS와 분산 파일 시스템의 통합을 통해 대용량 데이터의 관리를 위한 두 가지 시스템들을 제안한다. 먼저 빅 데이터의 트랜잭션 처리를 수행하는 시스템을 제안하고, 그 다음 빅 데이터 분석을 수행하는 시스템을 제안한다. 본 학위 논문의 첫 번째 파트에서는 DBMS가 분산 파일 시스템을 저장소로 사용하는 구조를 제안한다. 이러한 새로운 구조를 통하여 분산 파일 시스템의 확장성과 신뢰성 및 DBMS의 높은 기능성을 동시에 지원하게 된다. 즉, DBMS는 분산 파일 시스템이 제공하는 사실상 무한정의 저장 공간을 활용할 수 있게 된다. 제안한 구조는 Odysseus/DFS로 구현하였다. Odysseus/DFS는 KAIST에서 24년간 개발하여 온 Odysseus DBMS와 분산 파일 시스템을 통합한 것이다. 이를 위해 첫째로 DBMS가 분산 파일 시스템을 효율적인 삽입, 삭제, 갱신이 가능한 저장소로 사용할 수 있도록 하는 meta DFS file의 개념을 제안하고, 둘째로 파손 회복과 동시성 제어를 포함한 트랜잭션 관리 방법을 제안한다. 트랜잭션 처리에 대한 실험 결과, Odysseus/DFS는 높은 기능성을 바탕으로 Hbase보다 좋은 성능을 보였으며, 로컬 저장소를 사용하는 RDBMS에 비해서는 비슷하거나 약간 저하된 성능을 보였다. 이는 Odysseus/DFS에서 로컬 저장소 대신 분산 파일 시스템을 저장소로 사용함으로써 발생하는 성능 오버헤드가 크지 않음을 보인 것이다. 본 학위 논문의 두 번째 파트에서는 Odysseus/DFS의 상위에 MapReduce 프레임워크를 활용하여 빅 데이터 분석을 병렬로 처리하기 위한 새로운 방법을 제안한다. HadoopDB는 빅 데이터 분석 과정에서 DBMS와 MapReduce의 장점을 모두 갖기 위해 MapReduce 프레임워크에서 DBMS를 직접 활용한 유일한 방법이다. 하지만, HadoopDB는 데이터를 다수의 노드에 비공유(shared-nothing) 방식으로 저장하기 때문에 전체 데이터에 대한 공유성(sharability)을 지원하지 않는다. 다시 말해, HadoopDB는 하나의 작업을 다수의 태스크(task)로 분할할 때 각 테스크가 하나의 분할된 data에 할당하는 방식을 사용한다. 이러한 제약조건 때문에 HadoopDB는 노드간(internode) 통신을 필요로 하는 질의를 효율적으로 처리할 수 없다. 즉, HadoopDB는 2항 조인과 같은 일부 질의의 경우에 이를 처리하기 위해 전체 데이터를 재 로딩하여야 하며, 3항 조인과 같은 일부 복잡한 질의의 경우에는 처리할 수 없게 된다. HadoopDB의 이러한 제약조건은 로컬 저장소를 사용하는 DBMS가 공유성을 가지지 못하였기 때문에 발생하므로, 본 학위 논문에서는 이를 대체하여 공유성을 갖는 DBMS를 사용하는 방법을 제안한다. 이를 위해 첫째로, 분산 파일 시스템에 밀결합된 DBMS를 의미하는 DFS-integrated DBMS라는 개념을 제안한다. DFS-integrated DBMS는 분산 파일 시스템으로서 하나의 통합된 저장 시스템을 공유하는 다수의 DBMS로 구성되며, 각 DBMS들은 임의의 data에 접근할 수 있게 된다. 즉, data에 대한 공유성을 지원한다. 둘째로, DFS-integrated DBMS의 상위에 MapReduce 프레임워크를 활용한 새로운 방법인 PARADISE를 제안한다. PARADISE는 공유된 저장 시스템을 대상으로 서술부(predicate)를 사용하여 작업을 논리적으로 분할한다. 이 방법은 HadoopDB가 도입한 물리적 분할과는 대조적인 개념이다. 마지막으로, PARADISE의 논리적 분할을 더욱 최적화할 수 있도록 locality mapping 이라는 개념을 제안한다. 그 결과 PARADISE가 다음과 같은 장점을 가짐으로써 HadoopDB의 단점을 효과적으로 극복함을 보인다: (1) HadoopDB에서 요구되었던 재 로딩이 없으므로 HadoopDB에 비해 최대 6.41배의 빠른 질의 처리 성능을 갖는다; (2) HadoopDB가 지원하는 것에 비하여 더욱 복잡한 종류의 질의를 처리할 수 있다. 본 학위 논문의 공헌을 요약하면 다음과 같다. 첫째, 빅 데이터의 트랜잭션 처리를 위하여 DBMS와 분산 파일 시스템을 결합한 새로운 구조의 시스템인 Odysseus/DFS를 제안하였다. Odysseus/DFS는 DBMS의 기능성과 분산 파일 시스템의 확장성을 모두 가진다. 둘째, Odysseus/DFS의 상위에 MapReduce framework를 사용하는 새로운 빅 데이터 분석 방법인 PARADISE를 제안하였다. PARADISE는 Odysseus/DFS가 제공하는 공유성을 통해 HadoopDB의 단점을 극복하였고, 공유성을 지원하는 시스템을 위한 논리적인 작업 분할 방법을 제안하였다. 마지막으로, 광범위한 실험과 오버헤드 분석을 통해 본 학위 논문에서 제안한 시스템들의 효과를 증명하였다.

서지기타정보

서지기타정보
청구기호 {DCS 15007
형태사항 viii, 64 p. : 삽화 ; 30 cm
언어 영어
일반주기 저자명의 한글표기 : 김준성
지도교수의 영문표기 : Kyu Young Whang
지도교수의 한글표기 : 황규영
수록잡지명 : "PARADISE: Big Data Analytics Using the DBMS Tightly Integrated with the Distributed File System". World Wide Web Journal, accepted, (2014)
Including Appendix
학위논문 학위논문(박사) - 한국과학기술원 : 전산학과,
서지주기 References : p.
QR CODE

책소개

전체보기

목차

전체보기

이 주제의 인기대출도서