计算机毕业设计hadoop+hive+hbase学情分析 在线教育大数据 课程推荐系统 机器学习 深度学习 人工智能 大数据毕业设计 知识图谱

毕 业 设 计(论 文)开 题 报 告

1.结合毕业设计(论文)课题情况,根据所查阅的文献资料,每人撰写不少于1000字的文献综述:

一、研究背景和意义

“互联网+”和大数据带来了网络教育的蓬勃发展,学习分析技术和自适应学习也在近年内得到了重大突破。在线教育是互联网技术与传统教育的结合,是当前中国教育信息化发展最快的领域,而当下最迫切的是有效整合教育资源和互联网技术,推出高互动性与个性化学习的在线教育服务及产品,提高用户黏性。以中国大学MOOC(慕课)为例,自2012年在全世界掀起热潮至今,在其发展过程中,MOOC的学习者贡献了海量的学况数据,对于教育工作者来说,这些数据无疑是极具诱惑力的富矿。对这些数据进行整理、分析和挖掘等探究,将会有助于学习者学习特点和行为规律的发现与总结,从而为教学设计的改进和学生的自适应学习提供指导。

在教育大数据的构成方面,在线学习的数据首当其冲。在舍恩伯格的《与大数据同行——学习和教育的未来》一书中,第一个大数据教育应用案例就来自在线学习。随着在线教学的日益普及,在教与学过程中,由学习管理系统和各类移动设备所记录下来的各类海量数据,成为分析教学过程的重要来源。这些数据包括记录学习过程的行为数据,记录学习结果的评价数据,以及学习形成的社会网络关系数据等。而在线教育学习平台一般是学生用来进行校内或校外拓展课程学习的平台,平台需要具备在线视频观看,作业提交,形成性考核等功能。在学生学习的过程中,学校的管理者或负责教师需要了解学生的学习情况和学习状态,因此必须要通过学生的学习行为数据进行数据分析,将学生的学习情况直观的展现给用户,方便教师进行学生管理和评测。

二、研究现状

目前,构建大数据分析平台、利用数据驱动增长是很多高校和企业的共同的需求,然而,将收集的数据转化成有效增长,从数据分析向数据应用的发展过程中,也面临一系列困境。首先,构建数据分析平台门槛较高。另一方面,大多数的企业在数据处理方面的能力比较弱,基于业务场景的数据采集、分析都需要一定的行业经验。其次,即使有条件进行分析,分析也需要依赖于工程师进行数据的筛除、补全、纠正,BI(商业智能)分析和完成报表,效率低下。同时企业数据分散,采集整合困难。

所以有能力的教育企业需要自己设计数据分析平台,如北京语言大学网络教育学院,在线教育大数据分析平台的建设与实践的项目的成功,该项目通过教育数据分析系统建设,汇聚分散在不同平台中的数据信息,面向决策者、招生管理者、学生管理者、教学管理者、辅导教师和学生提供数据统计分析、评测分析和对比分析等功能,提高不同角色的工作效率,促进网络教育教学过程的精准决策与管理,为教学过程干预、教学资源配置及学生个性化服务提供有力支持。

北京语言大学通过近两年的探索,使用基于大数据分析的在线教育平台,最大程度满足学生个性化需求,根据课程关联性、学生学习过程中习题测验完成情况等相关数据,为学生推荐相关课程,提供个性化的课程服务。在节省了人力成本的基础之上,面向整个平台的数据可视化和面向系统优化的统计分析,为学习者提供了个性化、针对性的指导和全面、综合的评价,同时为监督提高教师的教学水平,该平台也支持根据教师的备课情况、参与论坛情况和学生评教的结果等。

三、总结

在线教育平台,学生通过这个平台进行在线课程的学习,包含了在线视频作业以及一些随堂的考核和形成性的测试,这些内容学生在学习的过程中会有很多数据沉淀下来,那么老师如何去了解当前的学生和学习情况是什么样的,以及这个课程平台的这个健康程度和通过这个来反哺过来提升课程质量。

本课题采用某数据分析平台中的部分时间段学生学习数据,通过使用hadoop生态圈中的组件和Echarts可视化工具来对在线教育平台在学习过程中产生的数据进行分析和展现。本设计中的数据采用阿里云的实验数据,数据中已经完脱敏和预处理,数据分析的维度有平台健康度,用户习惯分析等。

四、参考文献

[1] 张娜.Java Web开发技术教程[M].北京:清华大学出版社,2011,264-283.

[2] MagdalenaCantabella. Analysis of student behavior in learning management systems through a Big Data framework[J]. Future Generation Computer Systems,2019,90:262-272. 

[3] ab198604.hadoop学习之hadoop完全分布式集群安装[EB/OL].http://blog

.csdn.net/ab198604/article/details/8250461,2012.

[4] 杨选辉.网页设计与制作教程[M].北京:清华大学出版社.2016.

[5] 王国琼.大数据可视化对某高校学生行为分析的呈现[D].山东:山东大学, 2016:1-42. 

[6] 朱力纬,刘丽勤,王健.高校基于大数据时代的数字化校园建设探讨[J].华东师范大学学报,2015(S1):105-110.

[7] 汤姆,怀特(Tom White). Hadoop权威指南:大数据的存储与分析(第4版) [M]. 北京:清华大学出版社.2017.

[8] 吴胜男.校园大数据文献综述[J].上海管理科学.2018(40):119-125.

[9] 王珊,萨师煊. 数据库系统概论(第四版)[M].北京:高等教育出版社,2008.

[10] 许文,付达杰,袁芳.大数据背景下学习分析可视化呈现技术研究[J].电脑知识与技术.2017(20).

[11] 徐鹏,王以宁,刘艳华,张海.  大数据视角分析学习变革——美国《通过教育数据挖掘和学习分析促进教与学》报告解读及启示[J].远程教育杂志.2013(06).

[12] 徐漫.基于开源MOOC平台的学习者学习行为分析与研究[D].东北石油大学.2016.

[13] 王敏.基于行为日志数据的MOOC学习者学习行为分析研究[D].华东师范大学.2016.

[14] 姜强,赵蔚,李勇帆,李松.基于大数据的学习分析仪表盘研究[J].中国电化教育. 2017(01)

[15] 程学旗,靳小龙,王元卓,郭嘉丰,张铁赢,李国杰.大数据系统和分析技术综述[J].软件学报,2014,25(09):1889-1908.

[16] Bing Li. Linear operator‐based statistical analysis: A useful paradigm for big data[J]. Canadian Journal of Statistics,2018,46(1).

毕 业 设 计(论 文)开 题 报 告

2.本课题要研究或解决的问题和拟采用的研究手段(途径):

研究或解决的问题

教育数据可视化系统设计与实现主要是Hadoop生态圈中MapReduce做分析与Hbase做存储,WEB端作数据展示,数据分析的维度有平台健康度,用户习惯分析等。系统解决的主要问题包括以下几点:

1.数据加载:数据的导入。

2.数据分析:包括每日登录人数分析、平均学习时长分析、学习行为次数分析、每日活跃情况分析和分时段学习人数分析。

3.数据呈现:可视化图表和仪表板的开发。

研究手段(途径)

教育数据可视化系统的设计与实现通过ECHATS+HADOOP进行开发和设计,开发语言选择是JAVA。研究途径主要是通过以下几个阶段来进行的。

第一阶段:开题 在做好需求分析的基础上,深入了解基于JAVA技术的Web网站的体系结构,熟悉ECHARTS的操作及通过JAVA代码操作HBASE;

第二阶段:综合分析 完成网站的界面登录功能及将分析好的数据存储到HBASE数据库中,最后将网站与数据库连接使用ECHATS完成数据展示;

第三阶段:修改完善设计 在初步完成的基础上,查看所做设计是否完善,功能是否欠缺,后充实内容,各种操作能否达到预期效果。

第四阶段:完成设计,对完成的设计进行调试,并将代码部署至服务器;

第五阶段:完成相应系统的论文。

   计(论 文)开   

指导教师意见:

1.对“文献综述”的评语:

对教育领域数据可视化的相关背景和现状做了综述,明确了课题的研究目标和研究重点,并对研究手段进行了概述。为后面的毕业设计做好了准备。

  1. 对本课题的深度、广度及工作量的意见和对设计(论文)结果的预测:

深度一般,广度适中,工作量适中。毕设成果有一定的理论价值和应用价值。

3.是否同意开题:√ 同意 □ 不同意

                指导教师:               

年 11 月 5日

所在专业审查意见:

    同意

                负责人:               

年 11 月 9 日

毕业设计(论文)选题、审题表

学院

 计算机工程学院

出题

教师

姓名

 谷瑞军

专  业

 计算机科学与技术

 职称

 副教授

申报题目名称

 基于hadoop和echarts的教育大数据可视化系统

题目类型

√毕业设计          □毕业论文

公办/民办

 公办

题目性质

 C.软件工程

题目来源

A

B

C

D

 √

题目简介

在线教育平台现在是教育体系的重要组成部分,如何评估平台的健康程度、学生的学习体验和在线课程的质量对于课程的教师和学校的管理人员都是非常重要的。主要功能:

(1)数据加载:数据的导入和预处理

(2)数据分析:包括每日登录人数分析、平均学习时长分析、学习行为次数分析、每日活跃情况分析和分时段学习人数分析

(3)数据呈现:可视化图表和仪表盘的开发 

毕业设计(论文)要求(包括应具备的条件)

(1)学习掌握分布式计算框架Hadoop和可视化工具的作用和使用方法。

(2)对原始进行需求分析,提出对数据分析的维度和方法。

(3)要求熟悉java和echarts等开发工具。

(4)在实际网络环境中发布、测试、完善该系统。

题目预计

工作量大小

适中

题目预计

难易程度

一般

 √

 √

所在专业审定意见:

 同意

                                              负责人:                     年  10  月 16  日

窗体顶端

1 绪 论

1.1 课题研究背景

在线教育学习平台是学生用来进行校内或校外拓展课程学习的平台,平台需要具备在线视频观看,作业提交,形成性考核等功能。在学生学习的过程中,学校的管理者或负责教师需要了解学生的学习情况和学习状态,因此必须要通过学生的学习行为数据进行数据分析,将学生的学习情况直观的展现给用户,方便教师进行学生管理和评测。

现阶段在线教育学习平台,一般会提供两种方向,一种是对普通用户,社会上的各种人员都可以来学习这个课程,学习完以后拿到一些证书认证,另一种是面向是院校,比如说大学里的学生可以在线选一门课,选完这门课以后,通过这个在线教育学习平台,让学生去学习这门课,最终得到他的学习成绩,那么通过学习他可以拿到他自己的学分,不需要在线下来去进行课程学习,这是整个在线教育学习平台这里面提供的功能,那么学生在学习这门课程的过程中,那肯定会产生很多的这种学习的数据,就比如说学生观看视频观看了多长时间,什么时候来的这个平台这些相关的数据,那么基于这些数据,我们就需要进行数据分析。

通过分析的结果,可以了解学生学习情况,学习状态,根据这些内容,我们好去了解这门课程设置是不是有问题,学生在学习过程中会有哪些习惯和行为,根据这个反馈过来的数据进行灵活的调整,或者让老师重新去调整这个课程内容,或者去改变这一部分的学生学习方式,这是我们最终做这个数据分析的目的。

1.2 课题研究意义

本次课题主要通过使用ECharts图形可视化开发技术,从而在项目中反馈自己的学习成果,提升自己技术水平和能力,让自己在设计方面也能得到更多锻炼,思维模式得到扩展。通过在线教育平台的数据,利用所学知识去分析数据,得出学生在学习过程中学习情况,以及利用课程平台中的健康度和用户活跃度来反哺提升课程质量。

2相关技术介绍和分析

2.1 JAVA语言

 JAVA是一种跨平台的程序设计语言,它属于面向对象型,有着显著的优点。

2.2 Idea开发环境

 IDEA 全称IntelliJ IDEA,是java语言开发的集成环境,idea是目前最好的开发工具之一,尤其在代码只能助手、自动代码提示等方面是有突出成就的。

2.3 Hadoop生态圈技术

 HDFS: 一种分布式文件系统,提供对应用程序数据的高吞吐量访问。

MapReduce: 基于YARN的系统,用于并行处理大型数据集。

HBase: 可扩展的分布式数据库,支持大型表的结构化数据存储。

Sqoop: 采集RDBMS(关系型数据库)。

2.4 ECharts

 ECharts,一个功能强大的交互式图表和浏览器可视化库。

3系统调研

3.1经济可行性分析

系统使用大数据组件开源技术,组建单节点Hadoop集群,使用MapReduce数据分析,考虑到市面上大屏可视化系统需要收费,所以用ECharts技术实现数据可视化图表功能。

3.2技术可行性分析

通过servlet和json进行数据交互,以及CAS做单点登录和注销,调整好系统结构,可以很好实现页面数据传输和展示的功能

3.3系统性能可行性分析

     WEB端产品,性能主要基于服务端的响应,此处通过设置虚拟机内存、优化代码结构等手段,保证正确运行。

4概要设计

4.1功能设计

根据系统的需要,列出所需要的功能,与解决的方法,并以此为参考,设计数据库等后台内容。

4.1.1 登陆注册功能

用户通过浏览器访问后可以登录,没有注册的用户可以进行注册,然后将用户信息存入数据库中,通过Spring Security框架做登录拦截,并可以获取已登录用户登录名,点击注销可以实现用户退出登录。

4.1.2 数据预功能

将数据通过Sqoop导入Hadoop中的HDFS,使用MapReduce进行数据处理,并将处理好的数据,保存到HBase中。

4.1.3 每日登陆人数分析

读取HBase中登录数据,页面显示不同月份的登录人数比,并可以显示每月登录人数,可以切换不同的月份。

4.1.4 平均学习时长和学习行为次数分析

读取HBase中相关数据,页面显示不同日期对应的学习时长和学习次数。

4.1.5 每日活跃情况分析

柱状图显示每日活跃学生人数的统计分析,这里设定每日至少进行3次学习行为的用户为活跃用户

4.1.6 分时段学习人数分析

热力图展示学生在什么时间段爱学习,横坐标为小时,纵坐标为星期。

柱状图展示在不同时间段中用户登录人数。

4.2数据库表结构设计

表与功能相匹,设计时尽量减少冗余数据的存储,多考虑多表查询的可能与简单程度

4.3后台结构设计

主要使用servlet接受请求,MVC将代码分层。

4.4前台UI设计

JS使用AngularJS的双向数据绑定方便的操作,展示更多有用的信息,UI使用ECharts自带的图形效果显示。

5 系统运行示例与测试

5.1 系统测试概述

项目完成后,测试时保证系统稳定运行的关键所在,不同的点击事件向后台请求数据,前端接受数据,避免数据传输错误引起的界面不显示或报错问题以及界面的排版问题。

5.2 运行测试

进入到系统界面,依此进行试用

6 结 论

本章主要对本次设计进行总结,总结系统的优点和存在的不足,并且作出相应的改进等。

参考文献

致 谢

核心算法代码分享如下:

package com.mydemo.DailyActivity.first;

import java.io.IOException;

import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.fs.Path;
import org.apache.hadoop.io.IntWritable;
import org.apache.hadoop.io.NullWritable;
import org.apache.hadoop.io.Text;
import org.apache.hadoop.mapreduce.Job;
import org.apache.hadoop.mapreduce.lib.input.FileInputFormat;
import org.apache.hadoop.mapreduce.lib.output.FileOutputFormat;


public class StudyTimesMain {

	public static void main(String[] args) throws Exception {
		String[] path = {"hdfs://192.168.203.111:9000/sqoop/zt/zt_stu_study_schedule/part-m-00000",
        "hdfs://192.168.203.111:9000/sqoop/result/zt_stu_study_schedule/output1"};
		System.setProperty("hadoop.home.dir", "C:/hadoop");
		
		Configuration config = new Configuration();
		//生成job实例,用户对整个分布式运算的配置
		Job job = Job.getInstance(config);
		job.setJarByClass(StudyTimesMain.class);
		
		//指定在本任务里,map和reduce文件是什么
		job.setMapperClass(StudyTimesMapper.class);
		job.setReducerClass(StudyTimesReducer.class);
		
		//设置mapper输出的类型
		job.setMapOutputKeyClass(Text.class);
		job.setMapOutputValueClass(IntWritable.class);
		
		//设置reducer输出的类型/最后输出的键值类型
		job.setOutputKeyClass(Text.class);
		job.setOutputValueClass(NullWritable.class);
		
		//要处理的数据来源和产生结果存放的路径
		FileInputFormat.addInputPath(job, new Path(path[0]));
		FileOutputFormat.setOutputPath(job, new Path(path[1]));
		
		//处理MapReduce运算
		System.exit(job.waitForCompletion(true)?0:1);

	}

}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/631881.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Java入门——异常

异常的背景 初识异常 我们曾经的代码中已经接触了一些 "异常" 了. 例如: //除以 0 System.out.println(10 / 0); // 执行结果 Exception in thread "main" java.lang.ArithmeticException: / by zero //数组下标越界 int[] arr {1, 2, 3}; System.out.…

C语言之指针初阶

目录 前言 一、内存与地址的关系 二、指针变量 三、野指针 四、const 五、传值调用与传址调用 总结 前言 本文主要介绍C语言指针的一些基础知识,为后面深入理解指针打下基础,因此本文内容主要包括内存与地址的关系,指针的基本语法&…

LiveGBS流媒体平台GB/T28181用户手册-服务器概览:通道信息、负载信息、CPU使用、存储使用、带宽使用(Mbps)、内存使用

LiveGBS用户手册-服务器概览:通道信息、负载信息、CPU使用、存储使用、带宽使用(Mbps)、内存使用 1、服务器概览1.1、通道信息1.2、负载信息1.2.1、信息说明1.2.2、会话列表 1.3、CPU使用1.4、存储使用1.5、带宽使用(Mbps&#xf…

视频下载器 - 网页视频自动嗅探2.2.4

【应用名称】:视频下载器 - 网页视频自动嗅探 【适用平台】:#Android 【软件标签】:#Video #Downloader 【应用版本】:2.2.4 【应用大小】:33MB 【软件说明】:软件升级更新。支持多种格式的看片神器&am…

java入门详细教程之集合的理解与应用

一、Collenction集合 数组和集合的区别 长度 数组的长度是不可变的,集合的长度是可变的 数据类型 数组可以存基本数据类型和引用数据类型 集合只能存引用数据类型,如果要存基本数据类型,需要存对应的包装类 Collection 集合概述和使用 Collection集合概述​: 是单…

MacOS下载安装JDK8

一、前言 今天给苹果电脑安装JDK环境,后续打算把Mac系统也用起来,也体验一把用苹果系统开发。 JDK就不过多介绍了,大家都是JAVA开发,JDK就是JAVA开发的必要环境。目前已经更新到JDK20了,不过我是不会更新的&#xff0…

微服务中的鉴权怎么做?

大家好,我是苍何呀。 现在出去找工作,简历上不写上微服务的技术,仿佛自己跟不上时代了,面试官更是喜欢盯着微服务项目来提问。 但其实虽说微服务是主流,随着云原生架构的发展,微服务也是趋势,…

DOS学习-目录与文件应用操作经典案例-dir

欢迎关注我👆,收藏下次不迷路┗|`O′|┛ 嗷~~ 目录 一.前言 二.使用 三.练习 一.前言 dir是"directory"(目录)的缩写,它主要用于展示某个磁盘上的全部或特定文件目录。在DOS操作系统中&#…

ES6中数组新增了哪些扩展?

​🌈个人主页:前端青山 🔥系列专栏:JavaScript篇 🔖人终将被年少不可得之物困其一生 依旧青山,本期给大家带来JavaScript篇专栏内容:ES6中数组新增了哪些扩展? 目录 一、扩展运算符的应用 二、构造函数新…

Web3与物联网:构建智能连接的数字世界

引言 随着互联网的不断发展,物联网(Internet of Things, IoT)作为一种新兴的信息技术,正在逐渐渗透到我们的生活和工作中。而随着Web3的兴起,物联网将迎来新的发展机遇。本文将探讨Web3与物联网的结合,如何…

全面解析防静电措施:保障工业安全,预防静电危害

静电是一种常见的物理现象,由于电荷的不平衡而产生。在特定的环境中,静电可能会带来危害,如损坏电子设备、引起火灾等。因此,采取适当的防静电措施是非常重要的。以下是一些常见的防静电方法: 增加环境湿度&#xff1a…

崆峒酥饼:佳节馈赠的美味之选

崆峒酥饼:佳节馈赠的美味之选 在即将到来的端午节,人们开始忙碌地准备着走亲访友的礼物。而崆峒酥饼,作为一种传统的美食,不仅是节日里的美味享受,更是传递情谊的佳品。 崆峒酥饼,以其酥脆的口感和独特的风…

使用httpx异步获取高校招生信息:一步到位的代理配置教程

概述 随着2024年中国高考的临近,考生和家长对高校招生信息的需求日益增加。了解各高校的专业、课程设置和录取标准对于高考志愿填报至关重要。通过爬虫技术,可以高效地从各高校官网获取这些关键信息。然而,面对大量的请求和反爬机制的挑战&a…

【Python】语句与众所周知【自我维护版】

各位大佬好 ,这里是阿川的博客 , 祝您变得更强 个人主页:在线OJ的阿川 大佬的支持和鼓励,将是我成长路上最大的动力 阿川水平有限,如有错误,欢迎大佬指正 本篇博客是在之前的基础上进行的维护 目录 条…

HP6V18、HP6V65电比例功率控制泵放大器

HP6V18、HP6V65电比例压力负控制,电比例功率控制泵通过由BEUEC比例放大器控制改变阀的输入电流,将泵设置为一定压力。改变负载压力,为使调订压力恒定,泵摆角会增大或减小,从而改变流量。因此泵只能输出执行器可以接受的…

ubuntu下gcc编译器的安装

.gcc编译器的安装 一般linux下是覆盖含有的,如果没有执行更新命令 sudo apt update gcc安装成功,可以检查一下版本 可以看出我的gcc是9.4.0版本的

地表最强ChatGPT爆了!我来告诉你,它都有什么用

OpenAI刚刚发布了全新的 "GPT-4o",它不仅可以通过语音、视觉和文本进行推理,还在速度和价格上有了巨大的突破。它的速度提高了2倍,价格却降低了50%,而且生成速率比GPT-4 Turbo高出5倍。最令人惊喜的是,它将对…

Verilog基础语法——条件语句if-else与case

Verilog基础语法——条件语句case、if-else 写在前面一、if-else语句二、case语句2.1 case语句2.2 casez语句2.3 casex语句 写在后面 写在前面 在Verilog语法中,常用的条件语句有if-else语句和case语句,用于判断条件是否为真,并执行判断条件后…

【NLP】文本分类

n-gram 的局限性 n-gram 只能对于填空这样的通顺性问题做出推测,但是没有办法完全解决句子的语义问题,从而无法实现文本的分类 文本的分类,就是将文本在语义的理解下划分到特定的主题下 手工规则 如一些垃圾过滤系统,需要人工制…

PHP开发中的不安全反序列化

序列化是开发语言中将某个对象转换为一串字节流的过程,转换后的字节流可以方便存储在数据库中,也可以方便在网络中进行传输。而反序列化则是将数据库取出的字节流或从网络上接收到的字节流反向转换为对象的过程。概念虽如此,但不同的开发语言…