面向HTAP的大规模分布式数据库混合存储引擎
发布时间:2021-04-06 07:15
随着互联网的飞速发展,业务日趋多样化,应用数据海量增长,传统面向联机分析处理(Online Analytical Processing,OLAP)与传统面向联机事务处理(Online Transaction Processing,OLTP)的数据库系统由于架构差异和数据存储组织方式的不同而彼此独立,无法同时满足日益复杂的业务需求,面向混合负载(Hybrid Transaction/Analytical Processing,HTAP)的数据库应运而生,成为数据库的主要发展方向之一。传统面向OLAP或OLTP的数据库采用单一“列存”或“行存”的存储方案,无法兼顾两种数据存储格式的优势(列存能高效地实现复杂查询,行存有利于实现高效的事务处理)。由于HTAP既要做联机事务处理也要做联机分析处理,所以如何设计面向HTAP的数据存储策略成为热门研究课题之一。针对HTAP的应用场景,本文讨论了分布式HTAP数据库系统框架,存储引擎数据组织格式,以及利用机器学习来优化存储引擎中数据存储布局,以更友好地支持HTAP未来的工作负载,进而提升数据库性能。论文主要完成了三个方面的工作:1)对时下业界热门的分...
【文章来源】:电子科技大学四川省 211工程院校 985工程院校 教育部直属院校
【文章页数】:80 页
【学位级别】:硕士
【部分图文】:
行存存储模型
电子科技大学硕士学位论文6对于仅仅需要获取record里面一列数据或者部分列数据的查询,比如:selectN_NATIONKEYfromNATIONwhereN_NATIONKEY<3,那么对于每次N_NATIONKEY的遍历,除了会将一些无用的数据一起读入之外,还会造成每次读取record都可能会引起cachemiss,例如表NATION行式存储的page与cache如图2-2所示。图2-1行存存储模型图2-2NSM的page与cache行存的优点主要有:一,适合快速的点插入,点更新和点删除;二,对于需要访问全部列的查询非常友好。行存的主要缺点:对需要读取大量数据并访问部分列的场景并不太友好,所以行存更适合用于事物处理,因为事务数据总是完整行写进来,行存多用于OLTP场景,并不适用于OLAP场景。
第二章相关技术与系统72.1.2列存DSM列式存储DSM[22](DecompositionStorageModel)在很早就已经被提出来了,最早是在论文Cantor中提出来的。然而,由于当时的硬件条件比较落后,且应用场景基本上都是OLTP,所以很多面向OLTP的数据库系统很多都是采用的行式存储,直到最近几年OLAP数据库系统的迅速发展,列存储才再一次出现在视线中。DSM主要针对OLAP场景,因为需要对多个特定的column进行快速扫描分析,DSM当然就不适用于需要频繁随机更新的情况,因为任何写入,DSM需要将record分开写入不同的地方,写开销会很大。例如表NATION的列式存储方式如图2-3所示。图2-3列式存储方式不同于NSM,DSM将数据按照不同的attributes分别存放到不同的page里面,对于只需要根据单独某一个attribute进行查询的情况,会直接读出page,遍历处理,这个对cache非常高效友好。但是,如果一个查询会涉及到多个不同的attributes,那么就可能需要多次IO来组合成最终的tuple。同时,对于写入,DSM因为会将不同的attributes对应的数据写到不同的page,也会造成较多的随机IO,如图2-4所示。所以列存的优点:其一,只读取部分列时,可以减少IO;其二,更好的编码和压缩,因为每列的数据类型相同;其三,更易于实现向量化执行。列存的缺点:不适合随机的插入、删除、更新,因为多列之间存在拆分和合并的开销。列式存储,就是相同属性列的数据存储一起,如果需要读取某列的数据,只需读取对应页的数据,以此减少大量I/O操作。除此之外,由于同一属性列的数据类型都相同,所以方便压缩,通过对数据的压缩来减少存储空间。由于同一行中不同属性列的数据可能存储在不同页中,所以如果在OLTP的应用场景下使用行式存储,会造成大量的I/O开销。
【参考文献】:
期刊论文
[1]基于Reactor与非阻塞IO的服务端框架设计与实现[J]. 包晓安,聂凡杰,徐璐,张娜,吴彪. 浙江理工大学学报(自然科学版). 2020(04)
[2]基于Kudu的结构化数据存储方案设计分析[J]. 李松涛. 数字技术与应用. 2019(10)
[3]一种基于LSM树的键值存储系统性能优化方法[J]. 王海涛,李战怀,张晓,赵晓南. 计算机研究与发展. 2019(08)
[4]Expression and significance of PAX8 gene in ovarian cancer based on Oncomine database Meta-analysis[J]. Kun Yan,Hua Yan,Qin Zhou,Min Wan,Yanyan Ge,Jin Lu. Oncology and Translational Medicine. 2019(04)
[5]云计算架构下Cloud TiDB的技术奥秘[J]. AP. 电脑知识与技术(经验技巧). 2018(05)
[6]RStore:基于BigTable的关系数据模型存储系统[J]. 鲁鹏凯,江大伟,陈珂,寿黎但,陈刚. 计算机科学与探索. 2018(10)
[7]利用优化的DenStream算法进行空间数据流聚类[J]. 樊超,李宏伟. 测绘与空间地理信息. 2017(04)
[8]基于EPOLL的单进程事件驱动通信服务器设计与分析[J]. 段翰聪,卢显良,宋杰. 计算机应用. 2004(10)
硕士论文
[1]基于布隆过滤器的Parquet优化[D]. 车健.华中科技大学 2018
本文编号:3121023
【文章来源】:电子科技大学四川省 211工程院校 985工程院校 教育部直属院校
【文章页数】:80 页
【学位级别】:硕士
【部分图文】:
行存存储模型
电子科技大学硕士学位论文6对于仅仅需要获取record里面一列数据或者部分列数据的查询,比如:selectN_NATIONKEYfromNATIONwhereN_NATIONKEY<3,那么对于每次N_NATIONKEY的遍历,除了会将一些无用的数据一起读入之外,还会造成每次读取record都可能会引起cachemiss,例如表NATION行式存储的page与cache如图2-2所示。图2-1行存存储模型图2-2NSM的page与cache行存的优点主要有:一,适合快速的点插入,点更新和点删除;二,对于需要访问全部列的查询非常友好。行存的主要缺点:对需要读取大量数据并访问部分列的场景并不太友好,所以行存更适合用于事物处理,因为事务数据总是完整行写进来,行存多用于OLTP场景,并不适用于OLAP场景。
第二章相关技术与系统72.1.2列存DSM列式存储DSM[22](DecompositionStorageModel)在很早就已经被提出来了,最早是在论文Cantor中提出来的。然而,由于当时的硬件条件比较落后,且应用场景基本上都是OLTP,所以很多面向OLTP的数据库系统很多都是采用的行式存储,直到最近几年OLAP数据库系统的迅速发展,列存储才再一次出现在视线中。DSM主要针对OLAP场景,因为需要对多个特定的column进行快速扫描分析,DSM当然就不适用于需要频繁随机更新的情况,因为任何写入,DSM需要将record分开写入不同的地方,写开销会很大。例如表NATION的列式存储方式如图2-3所示。图2-3列式存储方式不同于NSM,DSM将数据按照不同的attributes分别存放到不同的page里面,对于只需要根据单独某一个attribute进行查询的情况,会直接读出page,遍历处理,这个对cache非常高效友好。但是,如果一个查询会涉及到多个不同的attributes,那么就可能需要多次IO来组合成最终的tuple。同时,对于写入,DSM因为会将不同的attributes对应的数据写到不同的page,也会造成较多的随机IO,如图2-4所示。所以列存的优点:其一,只读取部分列时,可以减少IO;其二,更好的编码和压缩,因为每列的数据类型相同;其三,更易于实现向量化执行。列存的缺点:不适合随机的插入、删除、更新,因为多列之间存在拆分和合并的开销。列式存储,就是相同属性列的数据存储一起,如果需要读取某列的数据,只需读取对应页的数据,以此减少大量I/O操作。除此之外,由于同一属性列的数据类型都相同,所以方便压缩,通过对数据的压缩来减少存储空间。由于同一行中不同属性列的数据可能存储在不同页中,所以如果在OLTP的应用场景下使用行式存储,会造成大量的I/O开销。
【参考文献】:
期刊论文
[1]基于Reactor与非阻塞IO的服务端框架设计与实现[J]. 包晓安,聂凡杰,徐璐,张娜,吴彪. 浙江理工大学学报(自然科学版). 2020(04)
[2]基于Kudu的结构化数据存储方案设计分析[J]. 李松涛. 数字技术与应用. 2019(10)
[3]一种基于LSM树的键值存储系统性能优化方法[J]. 王海涛,李战怀,张晓,赵晓南. 计算机研究与发展. 2019(08)
[4]Expression and significance of PAX8 gene in ovarian cancer based on Oncomine database Meta-analysis[J]. Kun Yan,Hua Yan,Qin Zhou,Min Wan,Yanyan Ge,Jin Lu. Oncology and Translational Medicine. 2019(04)
[5]云计算架构下Cloud TiDB的技术奥秘[J]. AP. 电脑知识与技术(经验技巧). 2018(05)
[6]RStore:基于BigTable的关系数据模型存储系统[J]. 鲁鹏凯,江大伟,陈珂,寿黎但,陈刚. 计算机科学与探索. 2018(10)
[7]利用优化的DenStream算法进行空间数据流聚类[J]. 樊超,李宏伟. 测绘与空间地理信息. 2017(04)
[8]基于EPOLL的单进程事件驱动通信服务器设计与分析[J]. 段翰聪,卢显良,宋杰. 计算机应用. 2004(10)
硕士论文
[1]基于布隆过滤器的Parquet优化[D]. 车健.华中科技大学 2018
本文编号:3121023
本文链接:https://www.wllwen.com/kejilunwen/shengwushengchang/3121023.html
最近更新
教材专著