章明
广东岭南职业技术学院,广东广州 510663
摘要
基于云存储的在线存储系统能够向用户提供永久的,空间可扩展的,便捷的数据存储与备份服务。本文从云存储服务使用者的角度出发,及当前云盘主要功能以及存在的一些问题,并结合本人所做的课题基于成果导向的《企业级服务器配置》课程教学改革探索与研究的需求与问题出发,深入研究实现基于开源系统的云网盘设计,并实现了一种基于hadoop 搭建的云存储后台,使用了owncloud云盘系统。设计的主要工作包括:分析国内外同类产品的优缺点,明确系统用户的需求;利用开源的owncloud作为前端界面服务,实现了云盘的常用服务;使用了基于Hadoop的云存储后台存储数据。本文采用分层中间件的方法对系统进行设计,并且在设计的最后章节中对系统的功能进行了功能测试。
关键词:云盘 Hadoop HDFS 开源 教学改革
1 绪论
从信息技术发展的角度来看,云计算是信息发展史上的一个里程碑,将计算机领域的基础设施构建与应用服务提供集于一身,改变了信息技术行业的整体架构。云存储应用产品在国内具有很大的市场前景和开发价值基于目前的市场需求,本文将从用户的实际需求出发,以现有的云存储及相关技术为基础,设计和实现一种利用hadoop搭建的云存储数据存储平台的云网盘服务。
并结合我校计算机网络技术专业发展的需求,我校计算机网络技术是个老牌专业,经过多年的发展,已形成了一定规模和竞争优势,并已获得校级重点专业建设对象,招生人数也极具上升,随着发展也正在走自己的特色发展之路。提出以《企业级服务器配置》课程、《云平台构建技术》等课程为亮点,“融入专业、服务社会、培养符合区域经济技术发展需求的高素质技术技能人才”的目标需求。
2 系统关键技术研究
2.1 hadoop集群核心技术 hdfs 分布式文件系统
Hadoop 分布式文件系统(HDFS)被设计成适合运行在通用硬件上的分布式文件系统。它和现有的分布式文件系统有很多共同点。但同时,它和其他的分布式文件系统的区别也是很明显的。HDFS 是一个高度容错性的系统,适合部署在廉价的机器上。
HDFS 能提供高吞吐量的数据访问,非常适合大规模数据集上的应用。HDFS 放宽了一部分POSIX 约束,来实现流式读取文件系统数据的目的。HDFS 在最开始是作为 Apache Nutch搜索引擎项目的基础架构而开发的。HDFS 是 Apache Hadoop Core 项目的一部分。
2.2 hdfs 文件系统与云盘的交互接口
(1)Dav-hdfs
在本设计中使用 dav-hdfs 扩展插件,使用 web-dav 协议将 hdfs 接口转接为 web-dav 在以下部署云盘中起到重要的作用,如下图 2-2 Hadoop交互接口图。
(2)Dav-fs
在本设计中使用 davfs 扩展插件,使用 web-dav 协议将 web-dav 接口挂载为 linux 本地,当本地磁盘使用,在以下部署云盘中起到重要的作用。
3 基于 hadoop 云盘的设计
3.1 云盘需求分析
本系统基于Hadoop 搭建的云存储后台实现云网盘服务,系统主要有三部分组成:
(1)前端web服务,也就是本系统面向用户的网盘服务,主要安装在服务器上,主要功能是面向用户使用的web;
(2)中间件,也就是系统主要逻辑中间件,主要功能是辅助前端与存储后台交互;
(3)系统的数据存储后台,是由Hadoop搭建的集群,即云端。本系统的数据将存储在集群下的分布式文件系统中。系统的层次示意图如图3-1所示:

3.2 web 前端服务设计
在本设计中使用开源网盘 owncloud 作为系统的前端界面提供给用户使用,但是该网盘没有二维码下载功能,需进行重写代码后实现该功能。
3.3 中间件设计
中间件包括:Dav-hdfs、Dav-fs,我们通过这些中间件进行前端 web 与后台存储 hdfs文件系统进行交互,系统层次示意图如上图 3-1 所示。
(1)Dav-hdfs
在本设计中使用dav-hdfs扩展插件,使用web-dav协议将hdfs接口转接为web-dav在以下部署云盘中起到重要的作用。
(2)Dav-fs
在本设计中使用davfs扩展插件,使用web-dav协议将web-dav接口挂载为linux本地,当本地磁盘使用,这样web前端就可轻松地读取,写入数据到hdfs文件系统中。4 云盘测试与分析
本章主要论述了对基于Hadoop的云盘系统的核心功能测试与分析过程。首先对文件上传下载实现进行测试与分析,测试了前端对后台的操作;然后对云盘的各种功能进行了简单的测试。
4.1 测试环境
前端云盘应用程序部署在 namenode 的机器上。存储后台为三台服务器搭建的 Hadoop集群,一台机器是Namenod,两台是DataNode。用户通过 web 前端来测试操作。
4.2 云盘上传下载测试
选择上传文件的过程,把我的内容上传到我自己的《课程教学》这个栏目里云。在集群管理查看文件,集群管理地址是namenode地址+:50070,如图4-2 所示。

图4-2
4.3 云盘用户限额测试
用户使用限额设置,如图4-4所示。

图4-4
综上所述,本文采用分层中间件的方法对系统进行设计,从云存储服务使用者的角度出发,总结了阐述当前云盘主要功能以及存在的一些问题,深入研究了实现基于开源系统的云网盘,设计并实现了一种基于hadoop 搭建的云存储后台,使用了owncloud云盘系统。利用开源的owncloud作为前端界面服务,实现了云盘的常用服务,并对系统进行了功能的测试。
参考文献
[1] 蔡德明.鸟哥的 Linux 私房菜服务器架设篇(第二版)[M].北京:机械工业出版社.2018.6
[2] 申新鹏.曾雷杰,赵晓南.磁盘阵列上虚拟磁盘的管理 [J].现代电子技术.2016.6
[3] 刘万震.基于虚拟设备的网络存储系统[D].武汉:武汉科技大学.2012.
[4] 李煊民.章才能.谢杰.云计算环境下的数据存储 [J].电脑知识与技术.2019.5
[5] 白英彩.金崇英.海量存储系统的研究与应用[J];软件产业与工程;2010 年 05 期
作者简介:章明(1975-10-04),男,汉族,广东清远人,讲师,学士,主要研究方向系统维护,信息安全。