发明名称 | 代码转换方法及装置 | ||
摘要 | 本发明提供一种代码转换方法及装置,包括:获得类SQL对应的各作业;确定第一作业和第二作业及其各自的作业类型;根据第一作业和第二作业,确定第一作业模板和第二作业模板;根据预设的合并模型,将第一作业模板和第二作业模板合并为第三作业;将所述第三作业作为所述第一作业,并再次执行所述将其相邻作业中的任一可合并的作业作为第二作业的步骤,直至第一作业的相邻作业中不存在可合并的作业;再次执行所述将当前各作业中任一未被合并且可合并的作业作为第一作业的步骤,直至当前未被合并的作业中不存在可合并的作业;根据当前各作业,获得MapReduce代码,从而减少作业的作业量和执行时间,提高数据处理效率。 | ||
申请公布号 | CN103593401B | 申请公布日期 | 2016.08.10 |
申请号 | CN201310482057.5 | 申请日期 | 2013.10.15 |
申请人 | 北京航空航天大学 | 发明人 | 林学练;叶玥;崔晓龙;胡春明 |
分类号 | G06F17/30(2006.01)I | 主分类号 | G06F17/30(2006.01)I |
代理机构 | 北京同立钧成知识产权代理有限公司 11205 | 代理人 | 刘芳 |
主权项 | 一种代码转换方法,其特征在于,包括:根据类结构化查询语言SQL,获得与所述类SQL对应的抽象语法树中的各节点分别对应的各作业;将当前各作业中,任一未被合并且可合并的作业作为第一作业,将所述第一作业的相邻作业中的任一可合并的作业作为第二作业;根据获取的所述第一作业的算子和预设的各作业类型对应的算子,确定所述第一作业的作业类型,根据获取的所述第二作业的算子和预设的各作业类型对应的算子,确定所述第二作业的作业类型;若所述第二作业为所述第一作业的前驱作业,则将所述第一作业作为第一作业模板,将所述第二作业作为第二作业模板,否则将所述第一作业作为所述第二作业模板,将所述第二作业作为所述第一作业模板;根据预设的与所述第一作业模板的作业类型和所述第二作业模板的作业类型对应的合并模型,将所述第一作业模板和所述第二作业模板合并为第三作业;将所述第三作业作为所述第一作业,并再次执行所述将所述第一作业的相邻作业中的任一可合并的作业作为第二作业的步骤,直至所述第一作业的相邻作业中不存在可合并的作业;再次执行所述将当前各作业中任一未被合并且可合并的作业作为第一作业的步骤,直至当前未被合并的作业中不存在可合并的作业;根据当前的各作业,获得所述类SQL对应的映射化简MapReduce代码。 | ||
地址 | 100191 北京市海淀区学院路37号 |