论文部分内容阅读
考试成绩作为检验学生对所学知识的掌握程度与评估教学质量的重要依据,它背后蕴藏着大量的待挖掘的信息。所以对于成绩数据的管理与分析一直都是是考试过程的一个重要环节。传统的成绩管理方式是每个学校独立保管各自的学生成绩记录,采取这样方式的缺点就是只能了解各自学校的情况,且只能进行简单的分析和查询操作,并不能从记录中挖掘出数据之间的相互关系,从而无法探究出数字背后隐藏的信息。如果能将所有学校的成绩集中起来管理,建立一个基于全国学生的学习成绩管理系统,那将是有极大好处的。基于Hadoop的成绩管理系统即是这样一个平台。它主要面向有升学压力的初高中学校学生,提供两方面的查询功能:一方面,可以通过传统的成绩排名和平均成绩查询认识到本人在全国同龄学生中的水平和位置,从而选择填报适合自己的升学志愿。另一方面,通过考试成绩的聚类分析结果,可以发现各科成绩之间的关联并清楚认识自身的强项弱项,从而有针对性的提高自己。学校通过使用此系统,还可以由聚类分析发现课程之间的关联,从而合理的安排选课。另外,为保护个人隐私,该系统只显示成绩数据而隐去相关学生信息。本文首先对Hadoop平台和HBase数据库的特性进行深入学习,详细分析了HDFS、MapReduce的底层原理和运行机制,对比HBase分布式数据库和传统数据库的区别与优势。然后结合成绩管理平台的需求,围绕该成绩管理系统进行了详细的设计并实现。接着描述了设计的系统框架,纵向来看,此系统系统架构由上到下可以分为用户层、分析层、运算层和存储层四层。横向来看,此系统功能模块可分为用户注册与登录模块、成绩排名查询模块、平均成绩查询模块和聚类分析模块。详细介绍了每层实现的功能,并对每个功能模块进行数据表的设计和编码实现。在对聚类算法的研究中,本文首先对聚类算法整体进行学习,重点研究K-Means算法和改进的PSO-K-Means算法,并在Hadoop上实现这两种算法。通过这两种算法对数据的聚类分析结果比较两者的聚类效果。选用K-Means聚类算法进行深层次的成绩数据分析,结合成绩数据的特点,对K-Means算法初始点的选取进行改进,然后再用此算法对成绩数据进行分析,得出相应结论。最后详细介绍了Hadoop实验环境构建,然后实现各模块功能得到最终的运算结果,并对Hadoop处理大规模数据进行了分析。