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
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。