goback
月期刊咨询网
当前位置:首页>>电子技术论文>>正文

一种QL脚本的解析模块的分析研究


所属栏目:电子技术论文
发布时间:2014-08-19 14:36:12  更新时间:2014-08-19 14:59:11

已签订领域:化学工程/制药,医学题目:**作为抗癌剂***催化剂**取代苯丙***SCI四区 直击了解更多选题

已签订领域:环境科学-公共卫生题目:用**电***生物传感器**癌症**SCI二区 直击了解更多选题

已签订领域:环境科学-公共卫生题目:**氧化石墨烯纳米***材料的生物传感器***结肠癌生物**癌胚****SCI二区 直击了解更多选题

已签订领域:环境科学-公共卫生题目:聚合物纳米***a-硫辛酸***在神经炎症***应用***临床分析SCI二区 直击了解更多选题

已签订领域:计算机视觉/遥感/智能驾驶/汽车题目:**深度学习***高分辨率遥感***车辆检***SCI三区 直击了解更多选题

已签订领域:企业管理题目:社会交流***领导***倾向***方向SSCI,SCI三区,二区 直击了解更多选题

已签订领域:企业管理题目:**中小企业社交媒体****可持续绩效***因素探析SSCI,SCI三区,二区 直击了解更多选题

已签订领域:环境科学,公共卫生题目:利用硫氨酸***石墨烯纳米***电化学***传感器实现癌胚抗原***SCI二区 直击了解更多选题

已签订领域:环境科学,公共卫生题目:基于抗***纳米复合***高性能***早起癌症诊断***SCI二区 直击了解更多选题

已签订领域:经济,能源题目:***政治冲突****绿色金融、金融**、气***化***SCI四区 直击了解更多选题

已签订领域:经济,能源题目:冲***中能源不安全对***和环境***SCI四区 直击了解更多选题

已签订领域:教育题目:大学生***社交媒体***成绩影响***SSCI三区 直击了解更多选题

已签订领域:教育题目:巴基斯坦***学习实施的***的**SSCI二区 直击了解更多选题

已签订领域:教育题目:大学生对****下网络教学**思***SSCI二区 直击了解更多选题

已签订领域:教育题目:**教师和学生对影响***医疗**效果的****看法SSCI三区 直击了解更多选题

已签订领域:计量经济学题目:**货币、黄金、**和美国***的波动***相互依赖性:**数据的分析SSCI一区 直击了解更多选题

已签订领域:计量经济学题目:东南亚***内**趋同***中等收入**:新**的***SSCI二区 直击了解更多选题

已签订领域:建筑,历史题目:历史景点在***旅游发***中的***影响**(**研究:**历史***)SSCI,SCI一区 直击了解更多选题

已签订领域:领导力,管理题目:量化**领导对角色绩效***响:**冲突与工作自主性***作用SCI二区 直击了解更多选题

已签订领域:信息技术,教育题目:数字***环境对学生学习成绩***:游戏**和***现实在教育***作用SSCI四区 直击了解更多选题

已签订领域:信息技术,教育题目:信息技术***续决策之间的***:创新***识的**作用SSCI二区 直击了解更多选题

已签订领域:信息技术,教育题目:课程**对大学生***发展的影响:学习习惯和***的***作用SSCI一区 直击了解更多选题

已签订领域:信息技术,教育题目:信息技术***与可持续决策**:高等***学生认知***作用SSCI二区 直击了解更多选题

已签订领域:计算机,英语教学题目:英语****学**与人工智能****学习SCI三区 直击了解更多选题

已签订领域:计算机,音乐题目:评价**和音乐**对学生成绩***的影响SCI三区 直击了解更多选题

已签订领域:人体工程,心理学题目:基于预先处理模型***模式人体工程学***女生肌肉骨骼***预防行为*** 直击了解更多选题

已签订领域:人体工程,心理学题目:制定一个***人体工程学**,以识别、优先考虑***职业压力源的*** 直击了解更多选题

已签订领域:人体工程,心理学题目:多重工作**压力和工作***:***工效学方法的混合方法*** 直击了解更多选题

已签订领域:数学,经济题目:数学模型***结构调整和经济转型****研究 直击了解更多选题

已签订领域:数学,经济题目:***时间**数学模型在***媒体营销**中的应用*** 直击了解更多选题

已签订领域:数学,经济题目:***时间**模型在***物流运**能力***研究 直击了解更多选题

已签订领域:数学,经济题目:碳****经济的数学模型****研究 直击了解更多选题

已签订领域:农村经济题目:农****社区**发展***分**SCI四区 直击了解更多选题

已签订领域:农村经济题目:创业***对乡村****发展的****SCI四区 直击了解更多选题

已签订领域:农村经济题目:农村创业****的空间*****究SCI四区 直击了解更多选题

已签订领域:医学,电化学题目:纳米颗粒*****及其在癌症****和重金属*****检测中的应用SCI三区 直击了解更多选题

已签订领域:医学,电化学题目:基于*****前列腺癌药物氟****检测方法的*****腺癌治疗SCI二区 直击了解更多选题

已签订领域:医学,电化学题目:气海***********金纳米颗粒的新型****************粘土及其对胃癌********************抗癌SCI二区 直击了解更多选题

已签订领域:医学,电化学题目:基于抗***********GCE纳米***********材料的高性能*******************早期癌症SCI二区 直击了解更多选题

已签订领域:医学,电化学题目:用******电化学生物传感器*****癌症***************SCI二区 直击了解更多选题

已签订领域:医学,电化学题目:基于*****石墨烯纳米****材料的生物传感******用于测定结肠*****生物*****SCI二区 直击了解更多选题

已签订领域:医学,电化学题目:聚合***纳米复合电极*****疏辛酸电化学检测*********SCI二区 直击了解更多选题

已签订领域:医学,电化学题目:利用****酸/**糖**石墨烯纳米复合修饰的电化学*****SCI二区 直击了解更多选题

已签订领域:环境能源,绿色投资题目:环境能源、绿色投资、城市化和环境类方向SCI三区 直击了解更多选题

已签订领域:计算机,英语教学题目:英语教学**人工智能***习SCI 直击了解更多选题

已签订领域:计算机,音乐题目:评价**和音乐形式*学生***影响SCI三区 直击了解更多选题

已签订领域:经济,绿色投资题目:***能源效率***化之间的***SCI三区 直击了解更多选题

已签订领域:经济政策题目:***阐明**印度经济***的关系SCI三区 直击了解更多选题

已签订领域:经济,金融题目:***国家的能源***重***SCI 直击了解更多选题

已签订领域:经济,金融投资题目:***融新之间***直接投资***SCI三区 直击了解更多选题

已签订领域:经济,数学,统计学,管理学题目:非***想重限制下***袭评价***SSCI四区 直击了解更多选题

已签订领域:经济,数字,管理学题目:基干***生产系统***SSCI四区 直击了解更多选题

已签订领域:农业,土壤科学题目:不同***有机覆盖***养分循环SSCI 直击了解更多选题

已签订领域:电力与能源系统,管理题目:pv***氢定价的***随***型稀SSCI,SCI二区 直击了解更多选题

已签订领域:建筑规划,计算机题目:使用***因子分析法***可持续***SCI三区 直击了解更多选题

已签订领域:工程技术,纺织工程,材料科学题目:甘***淀粉酶的提取***退浆中的应用SCI四区 直击了解更多选题

已签订领域:渔业,鱼类生理学题目:饲料***镉毒性的交互***生长***病理学***SCI二区 直击了解更多选题

已签订领域:渔业,鱼类生理学题目:****鱼水源***起的生******SCI三区 直击了解更多选题

已签订领域:金融,环境经济题目:*****预算在能效、绿色***的作用SCI 直击了解更多选题

已签订领域:应用数学/计算物理题目:***非线性库***自相位调制***SCI三区 直击了解更多选题

已签订领域:计算机,医学检测题目:***COVID-19***力***算法***决策SCI三区 直击了解更多选题

已签订领域:计算机,物联网,智慧城市题目:基于***物联网****算法SCI三区 直击了解更多选题

  QL脚本在设计方面,充分考虑了与现有数据库查询语言SQL相结合的特点,QL脚本无疑可以被看作是对数据库查询语句SQL的一种转型和衍生。

  摘要:作为MapReduce系统的核心组件的脚本解析模块,它是分布式云计算平台实现的基础。该模块的实现是基于脚本编程接口,在此过程中使用的语言是QL(Query Language)。QL脚本通过脚本解析模块实现解析之后,事件执行模块则由参数通过配置事件的方式一一实现。下面就这种脚本语言的实现过程作了详细的分析。

  关键词:核心期刊征稿,MapReduce,脚本解析,QL,事件配置

  An Analysis of Parsing Module QL Script

  CHEN Hao

  (Guangdong Technical College of Water Resources and Electric Engineering, Computer Information Engineering, Guangzhou 510925, China)

  Abstract:MapReduce system as a core component of the script parsing module, which is the basis for a distributed cloud computing platform implementation. The module is based on the realization scripting interface, the language used in this process is QL (Query Language). After the QL script by script parsing module for parsing, event execution module configured by the parameters of events come true. The following detailed analysis of the implementation process of this scripting language.

  Key words:MapReduce; script parsing; QL; event configuration

  1 QL脚本的设计理念

  基于对现有技术的可扩展性和覆盖性分析,使用QL脚本来定义关键词的过程能够适应市场上各种网络流量统计的不同类型,当然必须对设计过程中对关键词的灵活扩展性作以充分性的考虑,以便于后期对QL脚本的扩容升级,更好的支撑云计算平台的综合应用。

  2 QL脚本模块的分析

  QL脚本模块解析可以分为以下几大模块:解析引擎(ScritEngine)、脚本语句解释器(ScritParser)、比较运算模块(Compare)、算术运算模块(Arithmetic)、逻辑运算模块(ExpressionEngine)、聚合运算模块(Aggregate)、字段运算模块(Field)、配置模块(Configuration)等。图1是QL脚本解析模块的整体结构图。

  QL脚本解析的实现过程如下:系统的入口为 ScriptEngine,它的功能是读取QL语言脚本,并将脚本逐行传递给脚本解析器。脚本解析器按照每行的QL语言脚本首字母对语句进行分类,根据不同语句的类别调用不同的解释模块对语句进行解析。语句解析逐行进行,如脚本中含有子句等其他复杂句型,脚本解析器会调用其他的处理模块,如调用聚合运算模块对脚本进行相应的处理。

  3 配置文件的定义及解析过程

  一个完整的QL语言脚本包括配置文件、原始数据文件、输出结果保存位置和统计执行语句。模块在运行时,首先需要对配置文件进行解析以获取数据格式,然后对输入数据和输出数据路径进行解析,最后解析统计执行语句,并将解析的命令传递给作业执行模块。

  编写QL语言脚本时,首先应指定配置文件,指明要处理的数据格式。配置文件的格式如下:列序号、名称、描述、数据类型。根据配置文件中的格式,系统对输入数据进行匹配,从而对指定列序号的数据进行操作。配置文件支持如下的关键词:

  表1 配置文件关键词列表[关键字\&功能\&ResetColumn语句\&用于重新载入列配置文件,切换不同的配置文件\&createColumn语句\&用于创建一个新的配置文件,并载入这个配置文件\&AddColumn语句\& 对当前的配置文件进行增加列的操作\&]

  如上表所示,目前配置文件中共支持三个关键词,分别为:ResetColumn用于重新载入列配置文件,可用于切换不同的配置文件。CreateColumn用于在当前脚本中创建一个新的配置文件。AddColumn对当前的配置文件进行增加列的操作。

  4 关键词解析

  QL语言中的关键词指的是在每一句QL脚本句首的单词,每个语句的功能由此关键词来确定,在解析时脚本解析模块会根据该关键词来进行下一步的判断。目前QL语言支持的关键词为:Process,Select,Count,CountD如下表所示。

  表2 脚本关键词列表

  [分类\&关键字\&功能简介\&分组聚合统计\&Process\&对各分组求集合函数值\&选择字段\&Select\&选择字段、字串、表达式输出结果\&多重计算\&Count\&同时对多个逻辑表达式计数\&去重计算\&Countd\&对指定字段去重计算\&]

  1) Process 语句   功能介绍:提供统计各分组内的聚合函数运算结果的功能。Process语句支持多种表达式,表达式中必须包含有函数。且支持多种子句:where 子句、groijpby 子句、order by 子句、tofile 子句,having 子句' limit 子句。

  在脚本解析时,Process类接收以"Process"开头的一行脚本,从后往前寻找各个子句,并将该行脚本切割为各个子句,创建子句解释类的对象处理各个子句。 Process语句脚本解析过程按照从后往前的顺序解析子句。解析完成后,将所需信息封装起来,通过作业配置的方法,传给作业执行模块。

  2) Select 语句

  功能介绍:用于选择某列或多列输出。提供选择某个字段、多个字段四则运算或字段运算的功能。

  Select语句类关系与Process的类似,按照从后往前的顺序解析子句。Select语句支持多重输出功能,语句中可通过花括号指定多重输出条件和输出文件名。解析完成后,将所需信息封装起来,通过作业配置的方式,传入作业执行模块。

  3) Count 语句

  功能介绍:提供同时计数多个值的功能。

  Count语句设计为同时计数多个值的功能。Count后可跟多个逻辑表达式,在一次读取数据的同时,计数满足各个表达式条件的记录数。

  4) CountD 语句

  功能介绍:提供对指定字段的去重计数功能。

  CountD语句支持where子句,group by子句和tofile子句。CoimtD语句的主要功能是以符合where指定条件的话单为对象,按照groipby分组,对CountD指定的字段进行去重计数。

  以上的QL关键词只是定义了该语句的功能范围,实际统计的任务需要其他运算逻辑语句来组成更为复杂的操作。全部的关键词都支持算术运算,包含加减乘除四种运算,并且可以使用括号定义运算优先级。当没有括号时,将从左到右进行计算,乘除运算优先于加减运算。

  5 事件执行模块

  事件执行模块的功能是接收脚本解析模块传递过来的参数,根据参数选择不同的Map和Reduce类,并配置和提交统计事件到Hadoop框架。事件执行模块内的各模块基本都遵循Hadoop的Map Reduce框架的接口定义。主要任含以下几个模块:输入输出模块、Map模块、Partition模块、Combine模块和Reduce模块。

  事件执行过程示意图如下:

  图2 事件执行过程示意图

  每一行语句可解释为一个可执行的MapReduce的事件,事件执行组件配置好事件后提交给Hadoop的JobTracker,由Hadoop的 Map Reduce框架执行事件,Map模块读取原始数据分块,Partition模块和Combine模块对Map模块输出的统计结果进行合并处理,最后提交给Reduce模块最终输出至HDFS。

  1) 输入输出模块

  输入模块负责读入文件分片并将其分割成记录,适用于读取流记录这种半结构化文件。本模块的输入为网络流量记录文件,输出为统计任务的键/值对,主键为本条记录在文件中的字节偏移量,值为流量记录值。本模块只用于读取半结构化的文本文件,输入模块输出的键/值对,通过引用传递给Map模块。

  输出模块根据指定的字段分隔符和行分隔符输出结果。本模块与输入模块类似,可以将记录以行的形式存入文本文件中。其输入为Reduce模块产生的键/值对。输出为最终结果文件,存储在HDFS上。

  2) Map 模块

  Map模块的功能为从整条网络流量记录中取出指定字段,经过提取、计算等操作后,产生键/值对,并将统计的初步结果写到计算机本地磁盘。Map模块继承了 Hadoop框架的Map模块,并根据处理的网络流量记录格式进行了一些定制。

  根据统计功能的不同,目前系统包含如下两个Map部件:GrovpMapper和CountMapper。GroipMapper用于处理分组后的集合统计,分组条件作为主键,Map端集合运算结果作为值进行输出。CountMapper用于处理多重计数的统计需求。Map模块的输入为输入模块输出的键 /值对,Map模块对相同的主键的键值进行合并处理后,输出新的键/值对,键为分组的条件,值为该分组对应的值。

  3) 数据分割模块(Partition)

  Partition模块继承了 Hadoop框架定义的Partition模块。利用该模块,系统将Map输出的结果进行初步划分,可以保证某一取值范围的中间结果送到同一个 Reduce任务中进行处理。划分时采用对key进行hash运算的方式,在保证正确性的同时一定程度上简化Reduce的过程。划分的个数是由用户自定义的Reduce任务的个数。

  4) 数据合并模块(Combine)

  Combine模块用于计算机本地中间文件的合并。该模块通常运行在Reduce操作前,对之前模块的结果中相同主键的键/值对进行合并。Combine模块的处理步骤与Reduce的操作是相似的,但是 Combine模块通常在Map模块运行后进行,它的出现可以有效的减少集群内的数据传输。因为在Map Reduce运行的过程中,Map模块和Reduce不一定在同一运算节点进行,该模块可以将Map输出的结果进行初步合并,减少输入至Reduce模块的文件大小。

  5) Reduce 模块

  Reduce模块继承了 Hadoop框架定义的Reduce模块,实现的功能是对前一模块统计的中间结果进行合并,输出最终结果。处理流程为:Map模块的中间结果被 Combine模块和Partition模块处理以后,存入运算节点的本地磁盘临时文件内。集群主节点通知Reduce模块去对应的运算节点读取文件。目前系统所有Map模块生成的中间结果都按主键值被Hash函数分成N份(N是系统用户指定的Reduce数量),N个Reduce任务分别负责不同的主键取值区间。因此,所有的Reduce任务需要按照主键的取值范围去对应的节点读取Map输出的中间结果,并将其形成键/值的列表。读取后,再次按照主键进行合并,并进行函数计算、算术运算、逻辑运算等操作。最终由输出模块将最终的键/值对输出到HDFS。

  5 结束语

  QL语言设计目的是能让了解该语言的普通用户,即使在完全不懂JAVA编程技能的情况下,能够在云计算平台系统上进行分

  布式计算。因为作为开源项目的Hadoop为用户提供了众多的JAVA编程接口,但是很多用户并不具备编写完整程序的能力,而且针对不同的分析任务都编写相应的程序成本较高。通过QL语言可以较好的解决这一难题,用户只要在掌握基本的语法的情况下即可实现分布式的云计算。

  参考文献:

  [1] 万至臻.基于MapReduce模型的并行计算平台的设计与实现[D].杭州:浙江大学,2008.

  [2] 谢桂兰.基于Hadoop MapReduce模型的应用研究[J].微型机与应用,2010,4.

  [3] 陈香香.云计算中MapReduce性能优化及应用[D]. 重庆:重庆大学,2011.



  • sci论文大修,接收的概率大吗?大

    2025-05-16
    大修是论文发表sci期刊过程中的一个环节,大修意味着论文存在显著的缺陷但具备潜在的价值,期刊给予挽救机会。那么, sci论文大修,接收的概率大吗 ?通过率还是非常大的,具体详情如下: 1、大修的含义 sci论文大修指稿件整体质量还可以,但在某些方面存在较为严格的
  • sci期刊的版面费一般多少钱?教你怎么查sci期刊的版面费

    2025-05-16
    sci期刊的版面费一般多少钱 ? 在这里无法给出你确切的答案,英文影响sci期刊版面费因素众多,如期刊类型、档次、影响因子和学术水平等,具体还要以投稿目标期刊版面费标准为准。 今天在这里 教你怎么查sci期刊的版面费 ?详情如下: 一、sci期刊的版面费一般多少钱 1
  • 无版面费,北大核心+CSCD核心期刊《微波学报》,不要错过!

    2025-05-16
    《微波学报》是一份专注于微波技术与应用领域的学术期刊,是国内唯一专注微波学术和技术信研究的专业刊物,被列为中文核心期刊(北大核心期刊)和CSCD核心期刊。下面一起看看《微波学报》怎么样?详情如下: 1、期刊基本信息 主管单位:中国科学技术协会 主办单位:中
  • 医生必看!卫生高级职称评审对著作的要求

    2025-05-15
    在医学卫生领域中,想要晋升高级职称,必须满足评审单位文件要求,如学术成果,学历资质和能力等。那么, 卫生高级职称评审对著作的要求 有哪些?不同区域和单位对晋升高级职称出版著作要求存在差异性,具体以单位评审文件要求为准,详情如下: 1、提前核对评职文件对
  • 无版面费,见刊快命中率高的医学sci一二区期刊(附期刊分区和IF)

    2025-05-15
    医学sci期刊对论文要求较高,能够发表在医学sci期刊上发表的论文的作者,其科研能力和学术水平还是非常高的。为了快速帮助大家选择合适的医学sci期刊,今天在这里为大家推荐部分 无版面费,见刊快命中率高的医学sci一二区期刊(附期刊分区和IF) ,供大家参考: 1、《N
  • 同济大学:经管副教授王睿通、邱烨在《Marketing Science》作为第一作者和通讯作者发表研究成果

    2025-05-16
    同济大学经济与管理学院管理高等研究院副教授王睿通与副教授邱烨作为第一作者和通讯作者,在市场营销学领域的顶级期刊《 Marketing Science 》上发表了合作论文 Dual Role and Product Featuring Strategy of Digital Platform(在线平台的双重角色与产品推荐策略)。
  • Coordination Chemistry Reviews(中科院1区TOP,IF:20.3)

    2025-05-07
    近日,北京大学-贵州民族大学-贵州磷化集团富矿精开联合创新实验室谢雅典、胡海良研究团队,与郑州大学李纲教授等人合作,在晶体材料质子传导领域发表前沿性研究综述,相关成果以Post-synthetic modification strategy to immobilize acidic units within metal-organi
  • 最新 | 《国际中文教育核心期刊目录》发布,20种期刊入选(附名单及投稿方式)

    2025-04-25
    2025 年 4 月 22 日,世界汉语教学学会在教育部中外语言交流合作中心发布了《国际中文教育核心期刊目录》。这是国际中文教育领域首个专业性评价,旨在引领学术研究聚焦现实需求和理论前沿,推动学术体系建设与实践创新,助力构建国际中文教育知识体系。以下是对该目录
  • 最新!2025年宇航领域进展发布

    2025-04-25
    2025年宇航领域科学问题和技术难题重要研究进展已于2025年4月24日在中国航天大会主论坛上正式发布。此次发布活动是由中国宇航学会和中国航天大会学术委员会委托中国科学院院士、中国航天科技集团有限公司研究员王巍进行的。 重要研究进展概述 中国宇航学会组织航天领域
  • 西北工业大学!计算机学院博士生在《Nature Communications》期刊发表论文

    2025-04-23
    近日,计算机学院科学智能(AIforScience)交叉研究中心研究成果Identifying potential risk genes for clear cell renal cell carcinoma with deep reinforcement learning发表于《 Nature Communications 》期刊。西北工业大学博士生鹿大智、天津大学副教授郑岩和四
回到顶部