一种信息处理方法及装置制造方法及图纸

技术编号:18894578 阅读:27 留言:0更新日期:2018-09-08 11:00
本发明专利技术实施例提供一种信息处理方法及装置,涉及数据库技术领域。该方法应用于数据库管理系统中,所述数据库管理系统用于管理数据库,且包括内核,所述方法包括:所述内核获取目标信息;所述内核根据所述目标信息,确定所述目标信息的模型的创建信息;其中,所述目标信息的模型用于估算所述目标信息的执行代价,所述创建信息包括所述目标信息的模型的用途信息和训练算法信息;所述内核向外部训练器发送训练指令;其中,所述训练指令用于指示所述外部训练器根据所述目标信息和所述目标信息的模型的创建信息,对所述数据库中的数据进行机器学习训练,以得到所述目标信息的第一模型。

An information processing method and device

The embodiment of the invention provides an information processing method and device, which relates to the technical field of database. The method is applied to a database management system, the database management system is used to manage a database, and includes a kernel. The method comprises: the kernel obtains target information; the kernel determines the creation information of the model of the target information according to the target information; and the model of the target information is used. In estimating the execution cost of the target information, the creation information includes the use information of the target information model and the training algorithm information; the kernel sends training instructions to the external trainer; wherein the training instructions are used to instruct the external trainer to model the target information according to the target information and the target information The first model of the target information is obtained by machine learning training of the data in the database.

【技术实现步骤摘要】
一种信息处理方法及装置
本申请涉及数据库领域,尤其涉及一种信息处理方法及装置。
技术介绍
在执行数据库查询时,当接收到来自客户端的查询语句,例如,SQL(structuredquerylanguage,结构化查询语言)查询语句时,需要对该查询语句进行语法分析、预编译、优化等步骤,继而生成执行结构。优化器是数据库系统中影响SQL语句的执行效率最重要的组件,用于输出编译时数据库系统认为代价最小的执行计划,运行时执行器将按照生成的执行计划进行数据操作。在优化器选择最优执行计划过程中,代价估算是一个很重要的环节。在代价估算过程中,需要先根据查询语句进行模型训练,得到查询语句的训练模型,再根据训练模型进行代价估算。目前,代价估算常用的模型训练方法为:根据待优化信息,例如查询语句,从数据库中进行数据采样,再根据得到的采样数据进行模型训练,即收集查询语句在采样数据中的统计信息,该统计信息可以为基于直方图、基于常见值或者基于常见值频率的统计信息。由于上述统计信息只是根据数据库中采样得到的一少部分数据训练得到的信息,因此使用上述统计信息进行代价估算时,得到的代价参数的准确率是比较低的,根据该代价参数生成的代价最小的执行计划也会存在一定的冗余性,进而根据执行计划进行数据操作时,也会导致相应的SQL语句的执行效率较低。若按照上述模型训练的方法直接对数据库中所有的数据进行模型训练,又会因为数据库的容量较大,而耗费大量的时间,影响数据操作的进度。
技术实现思路
本专利技术实施例提供一种信息处理方法及装置,用于提高代价参数的准确率,同时尽可能减少对数据操作进度的影响。为达到上述目的,本专利技术的实施例采用如下技术方案:第一方面,提供一种信息处理方法,应用于数据库管理系统中,数据库管理系统用于管理数据库,且包括内核,该方法包括:内核获取目标信息;其中,目标信息包括以下信息中的至少一项:目标查询语句、查询计划信息、所述数据库中数据的分布或变化信息、以及系统配置与环境信息;内核根据目标信息确定目标信息的模型的创建信息,目标信息的模型用于估算目标信息的代价参数,该创建信息包括目标信息的模型的模型用途信息和训练算法信息;内核向外部训练器发送训练指令,训练指令用于指示外部训练器根据目标信息和目标信息的模型的创建信息,通过机器学习训练数据库中数据,得到目标信息的第一模型。可选的,训练指令可以包括目标信息和/或目标信息的模型的创建信息。上述技术方案中,数据库管理系统对数据库进行查询优化时,内核可以根据获取的目标信息,确定目标信息对应的模型的创建信息,之后向外部训练器发送训练指令,外部训练器通过机器学习进行模型训练,从而得到准确度较高的第一模型,从而根据第一模型进行代价估算时,可以提高代价参数的准确率,进而提高数据库的执行效率,同时又不影响数据操作的进度。在第一方面的一种可能的实现方式中,若内核中设置有模型信息库,模型信息库用于存储通过机器学习训练得到的模型的模型信息,该方法还包括:内核根据第一模型,更新模型信息库。上述可能的技术方案中,通过内核中存储的模型信息库将内核与外部训练器关联起来,且在模型训练完成后,将第一模型的模型信息存储在模型信息库中,使得内核在进行查询优化时,可以直接根据模型信息库存储的模型信息进行优化。在第一方面的一种可能的实现方式中,内核根据目标信息确定目标信息的模型的创建信息,包括:内核根据目标信息创建目标信息的模型的创建信息;或者,内核从模型信息库中获取目标信息的模型的创建信息。上述可能的技术方案中,提供了两种可能的确定目标信息的模型的创建信息的方法,在目标信息的模型的创建信息不存在时可以为目标信息的模型进行创建,在第一模型的创建信息存在时可以从模型信息库中直接进行获取。在第一方面的一种可能的实现方式中,内核根据第一模型,更新模型信息库,包括:若模型信息库中不存在目标信息的模型的模型信息,则内核将第一模型的模型信息添加在模型信息库中;若模型信息库中存在目标信息的模型的模型信息,则内核将模型信息库中的目标信息的模型的模型信息替换为第一模型的模型信息。上述可能的技术方案中,提供了两种可能的更新模型信息库的方法,在模型信息库中不存在目标信息的模型的模型信息,可以直接添加目标信息的模型的模型信息,在模型信息库中存在目标信息的模型的模型信息时,可以替换为第一模型的模型信息。在第一方面的一种可能的实现方式中,内核根据目标信息确定目标信息的模型的创建信息之后,该方法还包括:内核将目标信息的模型的状态设置为无效状态;内核根据第一模型,更新模型信息库之后,该方法还包括:内核将目标信息的模型的状态设置为有效状态。上述可能的技术方案中,在内核触发外部训练器进行模型训练时,内核并不等待训练返回结果,而在将目标信息的模型的状态设置为无效状态,当模型训练完成后,将目标信息的模型的状态设置为有效状态,从而实现统计信息收集本身和模型训练的异步执行。在第一方面的一种可能的实现方式中,该方法还包括:若内核确定模型信息库中存在目标信息的模型的模型信息,且目标信息的模型的状态为有效状态,则内核从模型信息库中获取目标信息的模型的模型信息;内核根据目标信息的模型的模型信息,确定目标信息的代价参数;其中,代价参数用于生成代价最小的执行计划。上述可能的技术方案中,内核通过机器学习训练得到的第一模型进行代价估算时,可以提高代价估算的准确率,进而生成代价最小的执行计划,根据该执行计划可以提高数据库管理系统的执行效率。在第一方面的一种可能的实现方式中,该方法还包括:若满足预设条件,则内核从统计信息库中获取目标信息对应的统计信息;其中,统计信息库用于存储通过数据采样得到的目标信息的统计信息;其中,预设条件包括:模型信息库中不存在目标信息的模型的模型信息、或者模型信息库中存在目标信息的模型的模型信息且目标信息的模型的状态为无效状态;内核根据目标信息对应的统计信息,确定目标信息的代价参数;其中,代价参数用于生成代价最小的执行计划。上述可能的技术方案中,由于通过机器学习的方法进行模型训练时,需要的时间可能比较长,为了避免在模型训练未完成时内核的延时等待,内核可以统计信息库中获取目标信息对应的统计信息,提高数据库管理系统进行代价估算的速度。在第一方面的一种可能的实现方式中,第一模型的模型信息包括以下信息中至少一个:相关列数据、模型类型、模型层数、神经元数、函数类型、模型权重、偏移量、激活函数、模型的状态;或者,第一模型的模型信息为与第一模型对应的标识元信息;或者,第一模型的模型信息用于指示与第一模型关联的用户定义函数。上述可能的技术方案中,提供了几种可能的第一模型的模型信息,内核通过这几种可能的信息,都可以获取第一模型,进而可以根据第一模型进行代价估算。第二方面,提供一种数据库管理系统,数据库管理系统用于管理数据库,所述数据库管理系统包括:获取单元,用于获取目标信息;其中,目标信息包括以下信息中的至少一项:目标查询语句、查询计划信息、数据库中数据的分布或变化信息、以及系统配置与环境信息;确定单元,用于根据目标信息确定目标信息的模型的创建信息,目标信息的模型用于估算所述目标信息的代价参数,该创建信息包括目标信息的模型的模型用途信息和训练算法信息;发送单元,用于向外部训练器发送训练指令;本文档来自技高网...

【技术保护点】
1.一种信息处理方法,其特征在于,应用于数据库管理系统,所述数据库管理系统用于管理数据库,且包括内核,所述方法包括:所述内核获取目标信息;其中,所述目标信息包括以下信息中的至少一项:目标查询语句、查询计划信息、所述数据库中数据的分布或变化信息、以及系统配置与环境信息;所述内核根据所述目标信息确定所述目标信息的模型的创建信息;其中,所述目标信息的模型用于估算所述目标信息的代价参数,所述创建信息包括所述目标信息的模型的用途信息和训练算法信息;所述内核向外部训练器发送训练指令;其中,所述训练指令用于指示所述外部训练器根据所述目标信息和所述目标信息的模型的创建信息,对所述数据库中数据进行机器学习训练,以得到所述目标信息的第一模型。

【技术特征摘要】
1.一种信息处理方法,其特征在于,应用于数据库管理系统,所述数据库管理系统用于管理数据库,且包括内核,所述方法包括:所述内核获取目标信息;其中,所述目标信息包括以下信息中的至少一项:目标查询语句、查询计划信息、所述数据库中数据的分布或变化信息、以及系统配置与环境信息;所述内核根据所述目标信息确定所述目标信息的模型的创建信息;其中,所述目标信息的模型用于估算所述目标信息的代价参数,所述创建信息包括所述目标信息的模型的用途信息和训练算法信息;所述内核向外部训练器发送训练指令;其中,所述训练指令用于指示所述外部训练器根据所述目标信息和所述目标信息的模型的创建信息,对所述数据库中数据进行机器学习训练,以得到所述目标信息的第一模型。2.根据权利要求1所述的方法,其特征在于,所述内核中设置有模型信息库,所述模型信息库用于存储通过所述机器学习训练得到的模型的模型信息,所述方法还包括:所述内核根据所述第一模型,更新所述模型信息库。3.根据权利要求2所述的方法,其特征在于,所述内核根据所述目标信息确定所述目标信息的模型的创建信息,包括:所述内核根据所述目标信息创建所述目标信息的模型的创建信息;或者,所述内核根据所述目标信息,从所述模型信息库中获取所述目标信息的模型的创建信息。4.根据权利要求2所述的方法,其特征在于,所述内核根据所述第一模型,更新所述模型信息库,包括:若所述模型信息库中不存在所述目标信息的模型的模型信息,则所述内核将所述第一模型的模型信息添加在所述模型信息库中;若所述模型信息库中存在所述目标信息的模型的模型信息,则所述内核将所述模型信息库中的所述目标信息的模型的模型信息替换为所述第一模型的模型信息。5.根据权利要求2-4任一项所述的方法,其特征在于,所述内核根据所述目标信息确定所述目标信息的模型的创建信息之后,所述方法还包括:所述内核将所述目标信息的模型的状态设置为无效状态;所述内核根据所述第一模型,更新所述模型信息库之后,所述方法还包括:所述内核将所述目标信息的模型的状态设置为有效状态。6.根据权利要求5所述的方法,其特征在于,所述方法还包括:若所述内核确定所述模型信息库中存在所述目标信息的模型的模型信息,且所述模型的状态为有效状态,则所述内核从所述模型信息库中获取所述目标信息的模型的模型信息;所述内核根据所述目标信息的模型的模型信息,确定所述目标信息的代价参数;其中,所述代价参数用于生成代价最小的执行计划。7.根据权利要求5所述的方法,其特征在于,所述方法还包括:若满足预设条件,则所述内核从统计信息库中获取所述目标信息对应的统计信息;其中,所述统计信息库用于存储通过数据采样得到的所述目标信息的统计信息;所述预设条件包括:所述模型信息库中不存在所述目标信息的模型的模型信息、或者所述模型信息库中存在所述目标信息的模型的模型信息且所述目标信息的模型的状态为无效状态;所述内核根据所述目标信息对应的统计信息,确定所述目标信息的代价参数;其中,所述代价参数用于生成代价最小的执行计划。8.根据权利要求2-7任一项所述的方法,其特征在于,所述第一模型的模型信息包括以下信息中至少一个:相关列数据、模型类型、模型层数、神经元数、函数类型、模型权重、偏移量、激活函数、模型的状态;或者,所述第一模型的模型信息为与所述第一模型对应的标识元信息;或者,所述第一模型的模型信息用于指示与所述第一模型关联的用户定义函数。9.一种数据库管理系统,其特征在于,所述数据库管理系统用于管理数据库,所述数据库管理系统包括:获取单元,用于获取目标信息;其中,所述目标信息包括以下信息中的至少一...

【专利技术属性】
技术研发人员:杨新颖江国荣李茂增
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:广东,44

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

1