Font Size: a A A

Research And Implementation Of High Performance Database Engine Based On Redis

Posted on:2018-02-20Degree:MasterType:Thesis
Country:ChinaCandidate:Y J WangFull Text:PDF
GTID:2348330521450917Subject:Software engineering
Abstract/Summary:PDF Full Text Request
With the rapid development of Internet technology,the amount of data generated by Web applications is exponentially increasing,and the unstructured data is full of the entire network platform,big data processing has attracted more and more attention.In the face of the significant increase in the amount of data,as well as the efficient storage of the database,different types,structural data management,high reliability,scalability,high throughput and other needs,relational database is facing enormous pressure.In order to solve the problem of storage and query for massive unstructured data,No SQL database came into being.For database users,they want to use No SQL database to store data,use the standard SQL language to operate the database,do not need to learn different databases.For questions above,to meet the various needs of users,lower the use threshold of the database,shield the underlying database category,provide the SQL language to unify the operation standards in the case of no unified No SQL language standards,this thesis propose to build a high performance database engine which is based on Redis,this thesis mainly studies from three main contents.Firstly,this thesis propose a storage mapping model from the relation storage to the KeyValue storage.According to comparing the relational storage model and the Key-Value storage model,making full use of the storage structure in Redis,the thesis designs and realizes a mapping model which can map the table definition information,table data,table relationship,mapping storage,multi-directional combination.Secondly,this thesis designs an operation mapping process which can make the standard SQL to operate the Redis database,and a conditional clause processing algorithm and multi-relational connection algorithm.In order to make the SQL statement to manipulate the data in Redis,the mapping model is designed for the operation of the standard SQL operation to Redis.The column index is created in the query clause of the SQL clause,and many logical operations of the conditional clause is processed.Finally,this thesis uses the ZSet structure provided by Redis to deal with the group-by and order-by operation in the query operation to further realize the mapping process of the query operation.Thirdly,this thesis designs the experiment to verify the correctness of the storage mapping model and SQL operation mapping process,compare and analyze the performance of the query operation between database engine SQL2 Redis and My SQL.This experiment which uses the TPC-H data set,the storage mapping model and SQL operation mapping process is correct and feasible,and through comparing the response time of the query statements with different complexity,the query performance of the database engine SQL2 Redis and My SQL are compared.The experiment result shows that the performance of some of the query operations is better,some of the complex query operation could be optimized better.According to the research of this thesis,users can use the SQL language to access the Redis database,use memory-computing to improve the efficiency of read-write.Others,the algorithm for multi-relationship connection join based on Key-Value storage makes contribution to the study on non-relational database connection.
Keywords/Search Tags:Database Engine, Relation Storage Model, Key-Value Storage Model, Mapping Model, Redis
PDF Full Text Request
Related items