본문 바로가기
KERD
논문KCI 등재

경량 락킹 방법을 이용한 SQLite 데이터베이스 관리 시스템의 동시성 제어 성능 향상 기법

Enhancing the performance of Currency Control in SQLite Database Management System Utilizing Lightweight Locking Method

1

조회

0

다운로드

0

인용

0

참고문헌

키워드

주제분류과학기술학

초록

SQLite는 모바일 장치, 내장형 장치 등 소형기기 또는 규모가 작은 환경에 적합하여 스마트폰 앱, 내장형 소프트웨어 등에 널리 사용되는 오픈소스 데이터베이스 관리 시스템이다. 이 SQLite 는 소스 코드의 크기가 작아 소형 시스템에서도 잘 동작한다는 장점이 있지만, 반면에 제공하는 기능에 여러 가지 제한이 있다는 문제점이 있다. 이런 제한 중의 하나로 SQLite은 트랜잭션을 데이터베이스 단위로 동시성 제어를 하고 있어 여러 트랜잭션들이 함께 실행될 경우 성능이 낮아진다. 이논문에서는 SQLite를 내장형 데이터베이스 시스템의 특성을 유지하면서도 트랜잭션의 동시성 제어성능을 높이는 기능을 구현하였다. 이를 위해 락(lock) 관리 및 제어 작업에 관련된 오버헤드를 줄이면서 동시성 제어를 할 수 있는 경량 락킹 기법(Very Lightweight Locking, VLL)을 활용하여SQLite 데이터베이스 관리 시스템의 동시성제어 시스템을 개선하였다. 또 SQLite의 동세성 제어 단위를 테이블 단위로 낮춰 트랜잭션의 동시성 제어 성능을 높이도록 구현하였다. 이 논문에서는 이렇게 개발한 동시성 제어 기법의 구현 내용을 소개하고, 실험을 통해 구현한 동시성 제어 기법의 성능을 비교.평가하였다.

Abstract

SQLite is an open source database management system which has been widely used in smartphone apps and embedded software, because it is suitable for small-size environments such as mobile and embedded devices. While SQLite has the advantage running well on small embedded systems, it has several restrictions on its features. Of these restrictions, it uses the database unit as its locking granularity thus it suffers from poor performance when controling transactions concurrently. This paper implemented a new concurrency control mechanism of SQLite in order to provide with better performance of the concurrency control, with reserving the properties of embedded DBMSs. To achieve this goal, we adopt the Very Lightweight Locking (VLL) which can reduce the overhead of lock management and concurrent transaction control, and we extended the concurrency control method of SQLite based on the VLL method. We also implemented the concurrency control method with lesser locking granularity of the table unit in order to provide better performance. This paper describes the implementation details of the newly developed concurrency control mechanism and it also presents the performance evaluation of the method.

참고문헌 (17)

  1. R. Elmasri, "Fundamentals of Database Systems" (2014), Pearson
  2. 강유진, "데이터베이스 클러스터 시스템 환경에서의 중첩 질의 분할 처리기법", 정보기술아키텍처 연구, 7(1), pp.89~96 (2010), 한국엔터프라이즈아키텍처학회
  3. 김남수, "다차원 텍스트 큐브를 이용한 호텔 리뷰 데이터의 다차원 키워드 검색 및 분석", 정보기술아키텍처 연구, 11(1), pp.63~73 (2014), 한국엔터프라이즈아키텍처학회
  4. K. Yue, "Research of Embedded Database SQLite Application in Intelligent Remote Monitoring System", IFITA Int'l Forum on Information Technology and Applications, 2, pp.96~100 (2010)
  5. C. Bi, "Research and Application of SQLite Embedded Database Technology", WSEAS Transactions on Computers, 8(1), pp.83~92 (2009)
  6. K. Ren, "Lightweight Locking for Main Memory Database Systems", PVLDB, 6(2) (2012)
  7. L. Junyan, "Application Research of Embedded Database SQLite", IFITA'09Int'l Forum on Information Technology and Applications, 2, pp.539~543 (2009)
  8. D. Chen, "Use of SQLite on Embedded System", Int'l Conf. on Intelligent Computing and Cognitive Informatics (ICICCI), pp.210~213 (2010)
  9. A. Joshi, "Adaptive Locking Strategies in a Multinode Data Sharing Environment", Proc. of VLDB Conf., pp.181~191 (1991)
  10. H. Kimura, "Efficient Locking Techniques for Databases on Modern Hardware", Proc. of Int'l Workshop on Accelerating Data Management Systems Using Modern Processor and Storage Architectures (2012)
  11. C. Mohan, "Recovery and Coherencycontrol Protocols for Fast Inter-system Page Transfer and Fine-granularity in Shared Disks Transaction Environment", Proc. of VLDB Conf., pp.193~207 (1991)
  12. H. Kimura, "Efficient Locking Techniques for Databases on Modern Hardware", Proc. of Workshop on Accelerating Data Management Systems Using Modern Processor and Storage Architectures (2012)
  13. N. Kim, "Implementation of Concurrency Control in SQLite DBMS using Very Lightweight Locking", Master, pp.2015

관련 논문AI추천

이 간행물의 다른 논문 (7건)