一种面向HTAP的分布式数据库智能混合存储方法技术

技术编号:21913924 阅读:20 留言:0更新日期:2019-08-21 12:25
本发明专利技术公开了一种面向HTAP的分布式数据库智能混合存储方法,该包括:通过数据导入系统获取数据源中的数据,并存储于HTAP数据库的存储引擎中,其中,存储引擎由多个存储节点组成,每个存储节点的数据以列族的数据组织格式进行存储;中心节点根据历史OLAP、OLTP的工作负载情况,采用基于密度的聚类分区算法对存储引擎中的数据布局进行优化重组分析,进而获得最优数据布局。本发明专利技术以列族的方式对HTAP数据库中的数据进行组织,并根据中心节点计算出的最优存储布局动态地调整列族中的数据,而最优的存储布局是通过基于密度的聚类算法通过聚类结果得出使得具有相当访问频率的列属于同一列族,即经常被访问的列属于同一列族。

An Intelligent Hybrid Storage Method for HTAP-Oriented Distributed Database

【技术实现步骤摘要】
一种面向HTAP的分布式数据库智能混合存储方法
本专利技术涉及在HTAP的业务场景下,通过机器学习分析历史业务和最近业务的工作负载情况,动态地对存储引擎数据布局重组的
,具体涉及一种面向HTAP的分布式数据库智能混合存储方法。
技术介绍
HTAP数据库是一款同时支持联机事务处理(OLTP)和联机分析处理(OLAP)两种业务类型的分布式数据库产品,由于OLAP和OLTP系统具有非常不同的特性,存储引擎中数据以行的形式存储对OLTP友好,以列的形式存储对OLAP更友好。但如果同时更好地支持高效查询的OLAP和实时性要求高的OLTP,那么存储引擎的数据组织格式便起着至关重要的作用。目前,peloton的存储使用tile的数据组织形式,即一个表中由多个tilegroup组成,一个tilegroup由多个physicaltile组成,一个physicaltile类似表的水平/垂直分区。peloton的数据库系统属于单机系统,将数据全部放到一个存储节点上,然后只对这一个存储节点的数据进行布局的优化及重组。但这种数据组织形式存在一些劣势:单机系统的容量和吞吐量都很小、性能低,无法应对越来越大的业务量,无论是计算能力还是存储能力,都不能较好地支持大数据时代的HTAP业务。而应用于HTAP数据存储上,peloton现有使用的k-means聚类算法对统计的数据进行聚类分析的分区算法存在一些劣势:1、需要调参:聚类数k、旧样本的权重w,(1)、在计算之前需要先对聚类数k进行初始化,但是k值的选取很不好把握,而且k值的选取会直接影响到聚类效果,需要对k进行调参,除此之外,强行输入固定的聚类簇数必然影响真实的聚类形态分布;(2)、需要对旧样本的权重w进行调参,且k和w相互影响,需要联合调参。2、由于聚类的簇数在最开始就已经确定,即表中tilegroup的数量就已确定,但实际上随着时间的推移,HTAP工作负载不断的变化,tilegroup数有时较大会比较好,但是有时候tilegroup数较小对HTAP会更友好。3、不适用于凸样本集,因为凸的数据集比较难收敛。4、每个簇中心初始值的选取会影响最后的结果,最后得到的结果只是局部最优而非全局最优,而且该算法不易控制,迭代次数可能较多。
技术实现思路
本专利技术所要解决的技术问题是:针对peloton现有的分区算法的不足,且peloton是单机系统。单机系统的容量和吞吐量都很小、性能低,无法应对越来越大的业务量,无论是计算能力还是存储能力,都不能较好地支持大数据时代的HTAP业务;而应用于HTAP数据存储上的在线k-means聚类算法对统计的数据进行聚类分析的处理算法存在一些劣势,需要调参聚类数k、旧样本的权重w,而k和w又相互影响,而聚类的簇数在最开始就已经确定,即表中tilegroup的数量就已确定,但实际上随着时间的推移,HTAP工作负载不断的变化,tilegroup数会受影响,另外,收敛性差、只能寻找到局部最优解的问题。本专利技术提供了解决上述问题的一种面向HTAP的分布式数据库智能混合存储方法,给出一种基于分布式环境下的存储引擎节点数据布局的分区算法,面向HTAP的存储引擎数据的组织方式以及面向HTAP的分布式数据库框架,进而更友好地支持HTAP未来的工作负载,提升数据库性能。本专利技术通过下述技术方案实现:一种面向HTAP的分布式数据库智能混合存储方法,存储方法包括:通过数据导入系统获取数据源中的数据,并存储于HTAP数据库的存储引擎中,其中,存储引擎由多个存储节点组成,每个存储节点的数据以列族形式进行数据存储;中心节点根据OLAP、OLTP业务请求,采用基于密度的聚类分区算法对存储引擎中的数据布局进行优化重组分析,进而获得最优数据布局。工作原理是:基于分布式的计算能力和存储能力都很强,非常适用于大数据时代的HTAP业务,能很好地支持HTAP的应用场景。本专利技术以列族的方式对HTAP数据库中的数据进行组织,并根据中心节点计算出的最优存储布局动态地调整列族中的数据,而最优的存储布局是通过基于密度的聚类算法通过聚类结果得出,使得具有相当访问频率的列在新布局中属于同一列族,即经常被访问的列属于同一列族,在未来以更好地支持高效查询的OLAP和实时性要求高的OLTP的工作负载。列族是一种界于行存和列存之间的一种存储格式,非常灵活,对OLTP和OLAP都比较友好支持,实现热数据(面向OLTP的行式存储)与冷数据(面向OLAP的列式存储)相互转换的桥梁;但又不同于Bigtable的列族组织方式,Bigtable一个列族的数据类型往往是一样的,且列族一旦创建就几乎不会改变。同时,基于密度的聚类分区算法,无需确定最终聚类结果的簇数,会根据历史查询样本和最近历史查询样本的数据分布情况合理地生成簇的个数,也就是存储节点中列族的个数;还能发现数据流中任意的类簇,能对数据流中所有的查询样本进行聚类分析,并且采用衰减窗口对不同时间的查询样本进行加权,来控制历史查询样本的权重,进而控制最后的聚类结果是偏向于旧查询样本还是最近的查询样本。本专利技术给出了一种基于分布式环境下的存储引擎节点数据布局的分区算法,面向HTAP的存储引擎数据的组织方式以及面向HTAP的分布式数据库框架,进而更友好地支持HTAP未来的工作负载,提升数据库性能。进一步地,每个存储节点的数据以列族形式进行数据组织,其中,数据布局因素包括列族的数量、列族中列的数量。进一步地,所述基于密度的聚类分区算法DenStream采用两阶段处理框架,包括在线阶段和离线阶段,根据历史查询样本和最近历史查询样本的数据分布情况生成簇的个数,簇的个数作为每个存储节点的列族数量,并采用衰减窗口对不同时间的查询样本进行加权,来控制历史查询样本的权重,进而控制最后的聚类结果是偏向于旧查询样本还是最近的查询样本,并获得最优数据布局的聚类结果。其中:基于密度的聚类分区算法DenStream,通过引入核心微簇CMC、潜在核心微簇PMC、离群微簇OMC和时间衰减函数f(t)=2-λ来对不同时间的数据点的重要性进行加权,对微簇micro-cluster也加入了时间权重;其中:对于历史久远的样本数据,在计算类中心的时候,采用衰减函数进行加权,λ用于调节衰减速度,值越大,表示对历史的数据的权重越低。在线阶段,同时维护潜在核心微簇PMC和离群微簇OMC两个队列,根据在两个队列的权重变化来对微簇的潜在核心和离群两个角色进行调整变化;离线阶段,设置聚类的时间间隔,及重新计算存储引擎数据布局的时间间隔,当达到设置好的时间,就重新聚类生成达到最优数据布局的聚类结果。DenStream算法先忽略密度不足够的两类微簇,然后使用基于密度空间的聚类算法DBSCAN,对当前的潜在核心微簇PMC和离群微簇OMC进行处理,得到聚类结果并返回。具体地,中心节点根据OLAP、OLTP业务请求,采用基于密度的聚类分区算法DenStream对存储引擎中的数据布局进行优化重组分析,使得具有相当访问频率的列在新布局中属于同一列族,即经常被访问的列属于同一列族,进而获得最优数据布局,具体包括:客户端将OLAP、OLTP业务请求发到中心节点,中心节点统计select子句、where子句、insert、update访问的属性信本文档来自技高网
...

【技术保护点】
1.一种面向HTAP的分布式数据库智能混合存储方法,其特征在于,存储方法包括:通过数据导入系统获取数据源中的数据,并存储于HTAP数据库的存储引擎中,其中,存储引擎由多个存储节点组成,每个存储节点的数据以列族形式进行数据存储;中心节点根据OLAP、OLTP业务请求,采用基于密度的聚类分区算法对存储引擎中的数据布局进行优化重组分析,进而获得最优数据布局。

【技术特征摘要】
1.一种面向HTAP的分布式数据库智能混合存储方法,其特征在于,存储方法包括:通过数据导入系统获取数据源中的数据,并存储于HTAP数据库的存储引擎中,其中,存储引擎由多个存储节点组成,每个存储节点的数据以列族形式进行数据存储;中心节点根据OLAP、OLTP业务请求,采用基于密度的聚类分区算法对存储引擎中的数据布局进行优化重组分析,进而获得最优数据布局。2.根据权利要求1所述的一种面向HTAP的分布式数据库智能混合存储方法,其特征在于,每个存储节点的数据以列族形式进行数据组织,其中,数据布局因素包括列族的数量、列族中列的数量。3.根据权利要求2所述的一种面向HTAP的分布式数据库智能混合存储方法,其特征在于,所述基于密度的聚类分区算法DenStream采用两阶段处理框架,包括在线阶段和离线阶段,根据历史查询样本和最近历史查询样本的数据分布情况生成簇的个数,簇的个数作为每个存储节点的列族数量,并采用衰减窗口对不同时间的查询样本进行加权,来控制历史查询样本的权重,进而控制最后的聚类结果是偏向于旧查询样本还是最近的查询样本,并获得最优数据布局的聚类结果。4.根据权利要求3所述的一种面向HTAP的分布式数据库智能混合存储方法,其特征在于,中心节点根据OLAP、OLTP业务请求,采用基于密度的聚类分区算法DenStream对存储引擎中的数据布局进行优化重组分析,进而获得最优数据布局,具体包括:客户端将OLAP、OLTP业务请求发到中心节点,...

【专利技术属性】
技术研发人员:段翰聪刘长红姚入榕闵革勇梁戈
申请(专利权)人:电子科技大学
类型:发明
国别省市:四川,51

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1