【技术实现步骤摘要】
基于关键词的脚本性能校验方法、装置、设备及存储介质
本专利技术涉及人工智能
,尤其涉及一种基于关键词的脚本性能校验方法、装置、设备及存储介质。
技术介绍
脚本(Script),是使用一种特定的描述性语言,依据一定的格式编写的可执行文件,脚本语言又被称为扩建的语言,或者动态语言,是一种编程语言,脚本通常是以文本形式保存,只是在被调用时进行解释或者编译。当执行脚本时,计算机会执行一连串的操作,以实现编写者想要的某种目的或功能,例如查询语言HQL脚本(HibernateQueryLanguage),用于实现某种数据查询或处理的脚本。可见,脚本的性能极其重要,通常需要对脚本的性能进行校验或评估。目前,在对脚本进行性能评估时,例如在对大数据平台的HQL脚本进行性能评估时,主要依靠开发人员的经验或者运行完成后的脚本执行日志进行评估,该方案中无法在脚本运行前获得该脚本的性能情况,一旦脚本性能有问题造成资源占用过多,将对大数据平台的将资源造成浪费,甚至影响其他正常脚本的执行,因此,亟需一种新的脚本性能校验或评估方式。专 ...
【技术保护点】
1.一种基于关键词的脚本性能校验方法,其特征在于,包括:/n获取需要校验的脚本文件;/n对所述脚本文件进行脚本关键词解析,以获取所述脚本文件中的脚本关键词;/n根据所述脚本关键词确定所述脚本文件所用到的所有关联数据表,并确定所有所述关联数据表中各表之间的关联条件;/n根据所述关联条件对应确定所有所述关联数据表中各数据表之间的关联方式;/n根据所述关联数据表和关联方式确定所述脚本文件所用到的数据信息;/n根据所述数据信息确定执行所述脚本文件时所需读取的目标数据的数据量;/n输出包括所述数据量的脚本文件校验结果。/n
【技术特征摘要】
1.一种基于关键词的脚本性能校验方法,其特征在于,包括:
获取需要校验的脚本文件;
对所述脚本文件进行脚本关键词解析,以获取所述脚本文件中的脚本关键词;
根据所述脚本关键词确定所述脚本文件所用到的所有关联数据表,并确定所有所述关联数据表中各表之间的关联条件;
根据所述关联条件对应确定所有所述关联数据表中各数据表之间的关联方式;
根据所述关联数据表和关联方式确定所述脚本文件所用到的数据信息;
根据所述数据信息确定执行所述脚本文件时所需读取的目标数据的数据量;
输出包括所述数据量的脚本文件校验结果。
2.如权利要求1所述的脚本性能校验方法,其特征在于,所述根据所述关联条件对应确定所有所述关联数据表中各表之间的关联方式之后,所述方法还包括:
根据所述关联方式确定执行所述脚本文件时的数据状态,所述数据状态包括数据倾斜状态和/或数据发散状态;
所述输出包括所述数据量的脚本文件校验结果,包括:
输出包括所述数据量和所述数据状态的脚本文件校验结果。
3.如权利要求2所述的脚本性能校验方法,其特征在于,所述数据发散状态通过如下方式确定:
根据所述关联方式确定所有所述关联数据表中的数据表是否存在笛卡尔积关系;
若确定所有所述关联数据表中各的数据表存在笛卡尔积关系,则确定执行所述脚本文件时存在数据发散;
若确定所有所述关联数据表中各的数据表不存在笛卡尔积关系,则确定执行所述脚本文件时不存在数据发散。
4.如权利要求2所述的脚本性能校验方法,其特征在于,所述数据倾斜状态通过如下方式确定:
根据所述关联方式确定执行所述脚本文件时,所述关联数据表中的数据任务处理量的分配是否存在不均现象,其中,所述不均现象包括以第一数据处理任务的任务量为第二数据处理任务的任务量的预设整数倍数;
若确定所述关联数据表中的数据任务处理量的分配存在不均现象,则确定执行所述脚本文件时存在数据倾斜;
若确定所述关联数据表中的数据任务处理量的分配未不存在不均现象,则确定执行所述脚本文件时不存在数据倾斜。
5.如权利要求1-4任一项所述的脚本性能校验方法,其特征在于,所述根据脚本关键词确定脚本文件所用到的所有关联数据表之后,所述方法还包括:
从脚本执行日志库中获取历史脚本执行日记信息;
根据所述历史脚本执行日记信息确定其他脚本文件执行时调用所述关联数据表的时...
【专利技术属性】
技术研发人员:任世民,
申请(专利权)人:中国平安财产保险股份有限公司,
类型:发明
国别省市:广东;44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。