论文:2017,Vol:35,Issue(4):718-723
引用本文:
刘文洁, 陈震, 李战怀. 一种面向海量分布式数据库的游标构造方法[J]. 西北工业大学学报
Liu Wenjie, Chen Zhen, Li Zhanhuai. An Cursor Creating Method for Massive Distributed Database[J]. Northwestern polytechnical university

一种面向海量分布式数据库的游标构造方法
刘文洁, 陈震, 李战怀
西北工业大学 计算机学院, 陕西 西安 710072
摘要:
游标是传统关系数据库所提供的一种能从包括多条数据记录的结果集中,每次提取一条记录的机制。这种机制能够缓存SQL查询结果集,提高重复查询的效率,并能以指针的方式,逐一访问缓存结果集的记录,非常灵活。但是,在现有的海量分布式数据库中,由于数据的分布式存储和数据量的庞大,游标的功能很难支持。文章提出了一种面向海量分布式数据库的游标构造方法,可以实现分布式数据库的游标功能,在研究了海量分布式数据库Oceanbase的基础上,构造了游标关键字共通的语法树、逻辑计划和物理计划;设计了游标整体的执行流程,并实现了游标功能。实验结果表明,在大数据量的查询过程中,文中所提出的游标构造方法所设计游标的查询速度,优于商业数据库DB2的游标查询速度。
关键词:    海量分布式数据库    游标    SQL查询    Oceanbase    大数据查询   
An Cursor Creating Method for Massive Distributed Database
Liu Wenjie, Chen Zhen, Li Zhanhuai
School of Computer, Northwestern Polytechnical University, Xi'an 710072, China
Abstract:
Cursor is a mechanism provided by traditional relational databases to pick up one record each time from a result set which includes multiple records. This kind of mechanism can cache the SQL query result set, which speeds up the query efficiency, and can access each record in the cached result by the way of pointer flexibly. But in the existing massive distributed databases, cursor is very hard to support due to the distributed storage and large volume of data. This paper proposed a kind of cursor creating method for massive distributed database, which can realize the function of cursor. On the basis of studying the massive distributed database-Oceanbase, the method builds up the common syntax tree, logic plan and physical plan for the keyword of cursor, designs the execution procedure for cursor and implements the function of it. Experiments show that the proposed method is better than the commercial database-DB2 for cursor queries in big data.
Key words:    cursor    massive distributed database    SQL query    oceanbase    big data query   
收稿日期: 2017-02-28     修回日期:
DOI:
基金项目: 国家自然科学基金(61303037)与陕西省自然科学基础研究计划(2017JM6104)资助
通讯作者:     Email:
作者简介: 刘文洁(1976—),女,西北工业大学副教授,主要从事云计算、大数据处理及高可用性系统研究。
相关功能
PDF(1264KB) Free
打印本文
把本文推荐给朋友
作者相关文章
刘文洁  在本刊中的所有文章
陈震  在本刊中的所有文章
李战怀  在本刊中的所有文章

参考文献:
[1] Chang F, Dean J, Ghemawat S, et al. Bigtable: A Distributed Storage System for Structured Data[J]. ACM Trans on Computer Systems, 2008, 26(2): 4
[2] Corbett J C, Dean J, Epstein M, et al. Spanner: Google's Globally Distributed Database[J]. ACM Trans on Computer Systems, 2013, 31(3): 8
[3] DeCandia G, Hastorun D, Jampani M, et al. Dynamo: Amazon's Highly Available Key-Value Store[J]. ACM SIGOPS Operating Systems Principles, 2007, 41(6): 205-220
[4] Lakshman A, Malik P. Cassandra: A Decentralized Structured Storage System[J]. ACM SIGOPS Operating Systems Review, 2010, 44(2): 35-40
[5] Brewer E A. Towards Robust Distributed Systems[C]//Nineteenth ACM Symposium on Principles of Distributed Computing, Portland, USA, 2000:16-19
[6] 阳振坤. OceanBase关系数据库架构[J]. 华东师范大学学报: 自然科学版, 2014(5): 141-148 Yang Zhenkun. The Architecture of Oceanbase Relational Database System[J]. Journal of East China Normal University(Natural Science), 2014(5): 141-148 (in Chinese)
[7] 孟德欣. Oracle. 9i数据库技术[M]. 北京:清华大学出版社, 2004 Meng Dexin. Oracle. 9i Database Techniques[M]. Beijing, Tsinghua Press, 2004 (in Chinese)
[8] Lee J, Kwon Y S, Farber F, et al. SAP HANA Distributed In-Memory Database System: Transaction, Session, and Metadata Management[C]//2013 IEEE 29th International Conference on Data Engineering, 2013: 1165-1173
[9] Stonebraker M, Weisberg A. The VoltDB Main Memory DBMS[J]. IEEE Trans on Data Eng Bull, 2013, 36(2): 21-27