Font Size: a A A

In-memory Database For Transaction Processing On GPU Architecture

Posted on:2018-09-02Degree:MasterType:Thesis
Country:ChinaCandidate:Y D XuFull Text:PDF
GTID:2348330512486732Subject:Computer software and theory
Abstract/Summary:PDF Full Text Request
On-Line Transaction Processing(OLTP)is an important application in the field of databases.With the rapid development of e-commerce and the surge in enterprise data volume in recent years,the capacity of OLTP was asked to meet the higher and higher requirements of the users,and the opportunities and challenges for increasing capacity of OLTP have appeared with the processor technology and memory technology devel?opment.On the one hand.Multi-Core CPU,GPU,Phi and other new processors have more and more processing core,parallel processing capacity is very powerful;but on the other hand,the protection of isolation and consistency of the data during transaction process constrains the improving of concrrency ability of processors.At present,most of the research works focus on the use of multi-core processor parallel computing power to improve the performance of transactional in-memory database,but using GPU which is more powerful on parallel computing on this is rare researched.The key to implementing the transactional in-memory database on GPU is to fully exploit the parallelism of the program on GPU while ensuring the ACID characteristic-s.However,the numerous concurrent threads and the lock-step execution mode on the GPU will significantly increase the impact of data conflict,which making the solution to the problem challenging.This paper focuses on solving the key issues on transac-tion,such as,concurrent execution,real-time guarantee,GPU device memory manage-ment.In order to solve the problem of transaction concurrency control,this paper draws lessons from Silo system' s transaction submission protocol,avoids the mutual block-ing of GPU threads by reducing the use of centralized resources,and solves the deadlock problem of locking on the write set to fit the parallel computing way of GPU.In order to do the real-time protection of transaction processing,this paper draws lessons from Mega-KV's time-based scheduling strategy,and designs the scheduling pipeline for G-PU transaction to ensure the real-time performance.In order to solve the problem of persistence,this paper adopts the CPU/GPU collaboration mode.The GPU takes a batch of transaction as a persistent transaction,and then the CPU records the persistent transaction information into the log file.In addition,in order to improve the operating efficiency of the system,this paper also implements the GPU device memory manager and lockless hash table.The main work and contribution of this paper are as follows:1.This paper systematically studies the difficulties and challenges in implementing transactional in-memory database on GPU,and solves the key technical problems such as transaction concurrency control,the real-time of transaction and transac-tion persistence guarantee.2.On the NVIDIA GPU,implementing a GPU-based transactionalin-memory database prototype GPUTx-DB,which can take full advantage of the parallel computing power of the GPU while ensuring the ACID nature of the database transaction.3.The GPUTx-DB is tested and analyzed by using the YCSB and TPC-C database benchmarks,and compared with the transactional in-memory database Silo on the multi-core processor,which verifies the processing capability of GPUTx-DB.
Keywords/Search Tags:In-Memory Database, On-Line Transaction Processing, GPU
PDF Full Text Request
Related items