基于Hadoop存储的在线视频学习平台

(整期优先)网络出版时间:2023-05-07
/ 2

基于Hadoop存储的在线视频学习平台

李宣

中国人民解放军32211部队 陕西榆林 719006

摘 要

当今人们快节奏的生活使得其很难再坐在教室去接受面对面的教学,传统的学习方式已经远远不能适应新形势的发展需要,基于这种现状,在线视频学习的方式应运而生。

本次开发的基于Hadoop存储的在线视频学习平台系统在技术层面上使用当前主流Java框架技术搭建,使用Hadoop作为海量视频数据的存储工具,使用MySql作为数据库,保障了系统的稳定运行。在开发设计上采用功能模块化的开发方法,根据教师、学生和管理员三种不同的用户开发不同的数据功能模块。

本系统在开发过程中,符合操作的业务流程,以当前学习方式的痛点和市场现有视频学习平台为依据,从操作的灵活性、敏捷性以及整体的高效性、安全性进行具体设计,旨在提供一个操作性强、功能完全、特色突出的在线视频学习平台。

关键词:Java;Hadoop;在线视频学习平台

1.背景

传统学习需要学生固定在某个时间段去固定的场所听固定的老师授课,老师需要在课前固定的时间去备课,在课上需要高度集中去完全吸收课上的知识。而在信息大爆炸的时代,知识种类在急速增多,一名老师的知识储备量开始达到瓶颈,因社会的高速发展属于每个人私人时间在逐渐减少,传统学习方式开始暴露出诸多问题。例如,老师在课前的备课很难在做到面面俱到;人们很难去约定同一个时间去听讲;一次听讲不能明白后很难再去复现当时的讲课内容。为解决现有的种种问题,开发一个在线视频学习平台变的尤为重要。人们可以随意安排自己的时间去听讲,可以多次复播来对知识进行充分的吸收,老师可以在课前进行充分的准备已达到最好的讲课效果。

1.1在线视频学习平台的发展现状

国外视频学习平台起步较早,已拥有二十多年的历史。目前其视频学习平台种类极多,对知识的分类也十分详细。主流视频学习平台网站有:EDX,涵盖北美顶尖高校的课程,以北美高校的录制课程为学习者带来大学教育的体验;Codecademy,编程者的聚集地,以编程课程为其核心,对学习者提供帮助。Lifehacker,包罗万象,其五花八门的内容可以吸引各方面的兴趣爱好者。

相较于国外,国内视频学习平台并没有很长的历史,主流视频学习平台网站有:慕课网,专注于互联网IT技能培训,适合不同阶段的学习人群;学子斋,集合从小学到中学的教育资源,提供免费在线科目解答;天天美食网,涉及美食视频,美食博客,特色小菜等的教学,是内地较为权威的中文美食网。

2.可行性研究

Hadoop是用于分布式数据处理的软件框架,维护多份工作数据并确保失败节点的重新分配。通过组合数据和完成计算任务,节点可以轻松扩展到数千个集群,为了提高效率,Hadoop通过大规模并行处理加速数据处理,以允许节点之间的动态数据传输,会自动保存多个数据副本,并自动重新分配失败的任务。

Hadoop的分布式架构,将大数据处理引擎尽可能的靠近存储,对例如像ETL这样的批处理操作相对合适,因为类似这样操作的批处理结果可以直接走向存储。Hadoop的MapReduce功能实现了将单个任务打碎,并将碎片任务(Map)发送到多个节点上,之后再以单个数据集的形式加载(Reduce)到数据仓库里。Hadoop 由许多元素构成。其最底部是 Hadoop Distributed File System(HDFS),它存储 Hadoop 集群中所有存储节点上的文件。HDFS(对于本文)的上一层是MapReduce 引擎,该引擎由 JobTrackers 和 TaskTrackers 组成。

3.系统功能结构设计

在线视频学习平台分为前台用户界面和后台教师界面。其中,根据视频学习网站前台的特点,可以将其分为视频浏览、用户中心、在线考核、教学课件浏览等功能;根据视频学习网站后台的特点,可以将其分为公告新闻发布,学生信息管理,教师信息管理,测试题目管理,竞赛系统管理,教学资源管理,系统属性查看,个人信息管理。系统总体功能模块如图3-1所示。

图3-1 在线视频学习平台功能模块图

4.系统详细设计

不同权限的用户在使用在线视频学习平台系统时,必须使用各自的账号和密码登录,这既是为了维护系统的安全,也是为了防止用户的个人信息外泄。

用户需要输入指定用户名和密码,如没有账号需首先通过注册获得账号信息。在输入用户名和密码后,系统会进行验证,验证通过方可进入系统页面。系统首页方可浏览学习视频,视频可以进行在线播放以及下载,方便浏览网站的用户。进入网站首页后可以点击教学视频,进入教学视频会有视频列表,用户可以随机选择进行播放或下载。当用户点击播放时,会使用系统默认浏览器进行播放,当用户点击视频名字时,会让用户选择是否进行下载,确认下载后方可下载,否则返回原页面。进入网站首页后可以点击教学课件,进入教学课件会有课件列表,用户可以随机选择进行下载。当用户点击课件名字时,会让用户选择是否进行下载,确认下载后方可下载,否则返回原页面。

教师用户在登录后,拥有视频管理权限,可以对教学视频进行上传,删除,查看等操作,保证了用户可以浏览到最新的教学视频。教师进入教学视频管理界面,可以进行添加、删除、播放操作。添加视频时需录入视频信息,包括视频名字,视频文件位置,视频简介信息等。删除视频时会有提示是否删除,确认删除后方可删除,否则跳转到原页面。播放视频可直接使用系统自带播放器进行播放。

管理员进入老师管理界面,可以进行添加、删除操作。添加教师时需录入教师信息,包括教师名字,教师编号,教师性别,教师年龄等。删除教师时会有提示是否删除,确认删除后方可删除,否则跳转到原页面。

5.编码实现

5.1网站首页

本网站首页简约大方,其作用是整体的展示了本系统的主题内容。首页分为上中下三部分,上部分是主导航栏,中间部分为系统服务,下部分为系统提供功能,如图5-1所示。

图5-1 网站首页图

5.2教学课件页面

用户无需登录,通过打开系统首页点击教学课件按钮可进入教学课件页面。教学课件页面如图5-4所示。

图5-2 教学课件页面图

教学课件可供用户进行下载到本地文件系统进行学习。用户可根据自己的选择在点击课件名后,点击确认方可进行下载,否则返回原页面。

关键实现代码如下:

public String jingsaiAll()

{

String sql="from TJingsai";

List jingsaiList=jingsaiDAO.getHibernateTemplate().find(sql);

Map request=(Map)ServletActionContext.getContext().get("request");

request.put("jingsaiList", jingsaiList);

return ActionSupport.SUCCESS;

}

public String jingsaiDetailQian()

{

TJingsai jingsai=jingsaiDAO.findById(id);

Map request=(Map)ServletActionContext.getContext().get("request");

request.put("jingsai", jingsai);

return ActionSupport.SUCCESS;

}

5.3视频播放页面

用户进入系统首页后,点击教学视频按钮,进入教学视频界面。界面如图5-3所示。

图5-3 视频播放页面

public String shipinAll()

{

String sql="from TShipin where del='no'";

List shipinList=shipinDAO.getHibernateTemplate().find(sql);

Map request=(Map)ServletActionContext.getContext().get("request");

request.put("shipinList", shipinList);

return ActionSupport.SUCCESS;

}

public String shipinDetailQian()

{

TShipin shipin=shipinDAO.findById(shipinId);

Map request=(Map)ServletActionContext.getContext().get("request");

return ActionSupport.SUCCESS;

}

用户可以点击视频名字进行视频下载,将视频保存到本地文件系统。用户可以点击播放,进行视频在线播放。

6.系统测试分析

本系统的设计和开发借鉴了很多已经开发成功的应用系统,开发过程无论从界面设计还是功能模块的实现都遵循易操作易管理的原则。本系统的特点和优点如下:由于本系统采用的编程语言和编程环境都是开源的,所以可以在多个系统上运行,有很强的移植性;本系统是专门针对高校开发,所以能够完全满足用户的需求,很有针对性;本系统的操作界面十分简洁,人机交互感极佳。系统结构比较简单,出现异常或者操作失误维护和补救都比较方便和简单。

参考文献

[1]吴南中.论在线学习范式的变迁:从自主学习到自适应学习[J].现代远距离教育,2016,02:12-14.

[2]徐春华.国内学习支持服务研究现状与趋势分析[J].中国成人教育,2016,10:01-03.

[3]孙卫琴.Tomcat与Java Web开发技术详解(第2版)[M].北京:电子工业出版社,2017.

[4]毕建信.基于Hadoop的视频摘要技术的设计[J],现代远距离教育,2016,02:51-53.

作者简介

李宣(1995-),男,山西忻州人,助理工程师,研究方向为数据采集、挖掘总体技术。