一种分布式数据库系统的跨节点查询优化方法及系统的制作方法_2

文档序号:9547240阅读:来源:国知局
立连接进行查询。
[0052] 在一些实施方式中,所述Bp神经网络自适应优化模块包括:
[0053] Bp神经网络设计模块,用于将Bp神经网络设计为一个3层的前馈神经网络,各层 均有连接权向量;
[0054] 各层参数求解模块,用于利用梯度下降法对BP神经网络的各层的连接权向量进 行求解。
[0055] 从上面所述可以看出,本发明提供的分布式数据库系统的跨节点查询优化方法及 系统可以实现:
[0056] 1、对每个分片查询路径进行优化判决,即在多个影响因素中通过计算判决出对降 低查询代价贡献最大的影响因素,并用该影响因素做出优化判决,降低全局优化的计算负 担,从而提高全局上的查询速度。
[0057] 2、对全部分片查询路径进行Bp神经网络自适应优化,即设定全局查询总代价最 低要求,在实际的全局查询总代价满足所述全局查询总代价最低要求的情况下,在神经网 络中自适应的调整各层的权值,从而在全局上实现查询的自适应最优化。由于最低要求是 事先设定好的,故,这样做可使得全局查询代价可控。
【附图说明】
[0058] 图1为现有方案实施例流程示意图;
[0059] 图2为本发明提供的分布式数据库系统的跨节点查询优化方法实施例的流程示 意图;
[0060] 图3为本发明提供的分布式数据库系统的跨节点查询优化系统实施例的模块结 构示意图;
[0061] 图4为本发明提供的分布式数据库系统的跨节点查询优化方法实施例的步骤 S230的进一步具体流程示意图;
[0062] 图5为本发明提供的分布式数据库系统的跨节点查询优化方法实施例的步骤 S310的进一步具体流程示意图;
[0063] 图6为本发明提供的分布式数据库系统的跨节点查询优化系统实施例的模块430 的进一步具体结构示意图。
【具体实施方式】
[0064] 为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照 附图,对本发明进一步详细说明。
[0065] 需要说明的是,本发明实施例中所有使用"第一"和"第二"的表述均是为了区分 两个相同名称非相同的实体或者非相同的参量,可见"第一" "第二"仅为了表述的方便,不 应理解为对本发明实施例的限定,后续实施例对此不再一一说明。
[0066] 本发明提出了一种分布式数据库系统的跨节点查询优化方法,本方法通过构建多 因素决策的模糊评估模型,用于对每个分片查询路径进行优化判决,并定义全局优化的代 价函数,用于对全局查询路径进行自适应优化,达到满足全局查询总代价最低要求的目的。
[0067] 总体来说,本方法包含三大阶段,各阶段名称及其主要完成功能为:
[0068] 第一阶段:全局查询总代价定义阶段100,用于定义全局优化阶段所需要的参数;
[0069] 第二阶段:局部优化阶段200,用于对每个分片查询路径进行优化判决;
[0070] 第三阶段:全局优化阶段300,用于找出分片查询路径的最佳操作次序,包括使得 代价函数最小。
[0071] 参照附图2,为本发明提供的分布式数据库系统的跨节点查询优化方法实施例流 程不意图。
[0072] 每一阶段的详细步骤如下:
[0073] 在第一阶段,即全局查询总代价定义阶段100中:
[0074] 步骤Sl 10,确定全局查询总代价C以及全局查询总代价最低要求C_。
[0075] 将全局查询总代价最低要求定义为查询时间误差估计%和查询响应时间t ^的加 权和,即C_= w i · t,2 · U其中%为查询时间误差估计,即全部网络时延及时钟漂移引 起的查询时间误差之和的估计;心为查询响应时间,即从用户提交查询请求到收到完整的 返回信息的平均时间,并有Wfw 2= 1。
[0076] 在第二阶段,即局部优化阶段200中:
[0077] 步骤S210,进行查询分解,
[0078] 即将查询问题(例如SQL语句),转换成一个定义在全局关系上的关系代数表达 式。
[0079] 步骤S220,进行数据本地化,
[0080] 即把定义在全局关系上的关系代数表达式具体化,落实到合适的(使尽可能做到 本地化或近地化)片段上进行查询。检查本地是否有此数据库,如果本地有此数据库,则在 本地执行查询;如果本地没有此数据库,则通过全局查询从而选择一台处理本查询最优化 的节点。
[0081] 步骤S230,进行多因素决策的模糊评估(无论查询结果是否在本地),判定多个影 响因素中对降低查询代价贡献最大的影响因素。
[0082] 首先构建一个多因素决策的模糊评估模型,用于对共计N个分片查询路径进行优 化判决;接着在查询分解和数据本地化后进行多因素决策模糊评估,得到评估结果,即对降 低查询代价贡献最大的影响因素,作为在查询代价最小的数据库节点上进行局部优化的输 入。
[0083] 步骤S240,进行连接建立,
[0084] 即在当前的分片查询路径中,根据对降低查询代价贡献最大的影响因素,查找到 查询代价最小的数据库节点并与之建立连接进行查询,从而得到片段上的查询结果。
[0085] 步骤S250,在与片段上的查询结果有关的各个数据库节点进行局部优化,
[0086] 即将多因素决策的模糊评估的评估结果作为局部优化的输入,在与片段上的查询 结果有关的各个数据库节点进行局部优化。局部优化的输出是在片段上的查询结果,即最 优分片查询路径。
[0087] 在第三阶段,即全局优化阶段300中:
[0088] 步骤S310,进行Bp神经网络自适应优化,
[0089] 其输入是在片段上的查询结果,即最优分片查询路径。由于全局查询总代价C表 示的是实际操作中全局消耗的总代价,定义E(W)为全局优化代价函数,表示全局查询总代 价误差。在应用中,理想情况是C可以无限逼近全局查询总代价最低要求C_,即我们期望 E(W)尽可能小,基于此,对上述全局优化代价函数E (w)采用BP神经网络求得其最小值。
[0090] 步骤S320,进行全局优化并最终输出最优的全局查询路径。
[0091] 从上述实施例可以看出,本发明提供的分布式数据库系统的跨节点查询优化方法 的优点在于,通过对每个分片查询路径的优化,降低全局优化的计算负担,使得全局查询具 有更快的查询速度,并通过定义全局优化代价函数使得查询总代价可控。
[0092] 较佳的,参照附图4,为本发明提供的分布式数据库系统的跨节点查询优化方法实 施例的步骤S230的进一步具体流程示意图。
[0093] 所述进行多因素决策的模糊评估的步骤S230还可以进一步包括以下步骤:
[0094] 步骤S231,定义每个分片查询路径中共有I个影响因素(如节点间网络时延、数据 库尺度等)能够降低查询代价;
[0095] 步骤S232,定义多因素决策的模糊评估模型如下:
[0096] 假设F(X1)为在I个影响因素共同作用下得到的查询代价函数,其中&为查询代 价函数输入;
[0097] 步骤S233,定义优化准则为:加权距离平方总和最小。因此定义其优化目标函数 为:
[0099] 其中,U1为第i (i彡I)个影响因素对降低查询代价的贡献,w ,为i (i彡I)个影 响因素对应的初始权重,Min为I个影响因素和N个分片查询路径构成一个Ι*Ν矩阵并归一 化后得到的矩阵,M u为归一化后的矩阵M ΙΝ中的元素。
[0100] 步骤S234,对步骤S233中定义的优化目标函数进行求解得到一组U1,选取最大的 ^并判定对应的第i个影响因素对降低查询代价贡献最大;
[0101] 步骤S235,得到多因素决策的模糊评估的评估结果,多因素决策的模糊评估的输 出是i。
[0102] 通过上述处理步骤,可以人为定义对降低查询代价有所贡献的I个影响因素,使 得通过经验人为避免一些不重要的影响因素对总体计算的干扰。判断出对降低查询代价贡 献最大的影响因素后,即可进一步排
当前第2页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1