基于Hadoop2.2.0版本分布式云盘的设计与实现

一、前言

在学习了hadoop2.2一个月以来,我重点是在学习hadoop2.2的HDFS。即是hadoop的分布式系统,看了很久的源代码看的我真的想吐啊,感觉看源码还是没什么劲,于是心血来潮看到可百度的网盘挺有意思(其实我一直都在用百度的网盘)对里面的功能的实现很好奇,于是我就突发奇想,能不能用hadoop来做个呢?答案是肯定的。于是我就开始了,但是实际中,没有人用hadoop来做网盘,因为hadoop不适合存放小文件。当然办法总是有的,比如小文件可以存入HBase中。hadoop2.2.0这个版本与hadoop1的版本有不同,且在源码上也有很大的差别。引入了Yarn这个资源管理框架,目前YARN可以管理的资料类型包括了CPU和内存,未来可能会加入对磁盘和网络等类型的支持。目前YARN可以支持的框架包括:MapReduce(批处理框架)、Storm(流式处理框架,项目为Stormon YARN,主要由Hortonworks在推进。正式版本未出但可用,yahoo和淘宝等在内部已经大规模使用)、Spark(内存处理框架,项目为Spark on YARN,主要由Cloudera在推进。正式版本未出但可用,淘宝等在内部也已经大规模使用)。
正在YARN上开发且未来比较靠谱的框架有:Tez(DAG框架,继承自MapReduce,性能有巨大提升)、Hoya(将HBase运行在YARN上,主要由Hortonworks在推进)。

二、设计与实现

采用了Struts2+tomcat7+mysql+Ajax+hadoop2.2来部署架构整个系统。

2.1 架构

Struts2确实在网页的开发阶段比起单纯的jsp和servlet又更上一层楼。本人也只是了解Struts2那么一点。发现有项目驱动可能学习某个知识点更快,你们说呢?tomcat是众所周知的,用作web服务器。mysql在这里我只用作登录验证。Ajax则主要是负责在上传的时候显示进度条的作用。hadoop2.2主要提供HDFS分布式存储。并且用到了其相关的Jar。

其实无论是百度的网盘,还是360网盘,还是华为网盘,其无非都是类似于像Hadoop这样的做分布式存储,前台展现给客户。分布式存储有的是用openstack。还有的像淘宝的TFS,华为的自己开发的云端系统,华为OceanStor CloudStor CSS云存储等等吧。。

2.2 本系统实现的功能

(1)显示用户系统下所有文件列表
(2)实现上传、下载、重命名、删除文件功能
(3)实现客户端音频(多数格式的)音乐播放功能<暂不支持视频播放>
(4)实现在线图片预览的功能
(5)实现在线文本文档的浏览功能

三、Hadoop2.2分布式云盘的界面

1、欢迎页面

2、登录页面

3、系统主界面

4、文件上传界面

5、图片预览

6、音乐播放

7、文本预览

四、总结

作为研究生,本应该研究研究理论性的东西,说实话,理论这东西不读个博士什么的我个人觉得在短暂的这两年多时间里,可能研究不出什么玩意来。纯属个人意见,呵呵。这个系统还是有一些BUG的。以后有时间还的继续修改。我还是对大数据很感兴趣,但是如何操纵大数据呢?光靠Hadoop是远远不够的,还可以结合数据挖掘,数据仓库,算法等去捣鼓捣鼓可能有效。这个系统算作本人的个人作品吧,麻雀虽小,但还是五脏俱全。主要是一段时间不写点程序,有点不舒服的感觉。呵呵。另外我想说hadoop2源码太多了,哎,慢慢看吧,不结合实战练习的话,没多大效果我觉得。现在还有很多课要上,恩多论文要看。在过两个月,所有的课程终于结束了。。。期待中。。。。。。。。

基于Hadoop2.2.0版本分布式云盘的设计与实现相关推荐

  1. 基于Hadoop2.2.0版本号分布式云盘的设计与实现

    基于Hadoop2.2.0版本号分布式云盘的设计与实现 一.前言 在学习了hadoop2.2一个月以来,我重点是在学习hadoop2.2的HDFS.即是hadoop的分布式系统,看了非常久的源代码看的 ...

  2. 【Hadoop/Java】基于HDFS的Java Web网络云盘

    [Hadoop/Java]基于HDFS的Java Web网络云盘 本人BNUZ大学生萌新,水平不足,还请各位多多指教! 实验目的 熟悉HDFS Java API的使用: 能使用HDFS Java AP ...

  3. Hadoop2.2.0伪分布式环境搭建(附:64位下编译Hadoop-2.2.0过程)

    Hadoop2.2.0伪分布式环境搭建: 写在前面:Hadoop2.2.0默认是支持32位的OS,如果想要在64位OS下运行的话,可以通过在64位OS下面编译Hadoop2.2.0来实现,编译的操作步 ...

  4. 多宽带叠加的分布式云盘:文件秒传、断点续传、大文件下载

    多宽带叠加的分布式云盘:文件秒传.断点续传.大文件下载 1. 前言 2. 各种私有云盘对比 3.本云盘实现的功能 4. 界面 4. 安装 4.1 负载均衡服务器 4.1 储存节点 5. 代码说明 1. ...

  5. Hadoop小兵笔记【五】hadoop2.2.0伪分布式环境搭建疑难-第一个用例wordcount失败

    问题现象 问题原因 由于参考了之前研究生阶段下载的资料,按照真分布式环境一步步配置,觉得只是将datanode同时存放在namenode,将hdfs-site.xml文件中的dfs.replicati ...

  6. hadoop2.6.0 完全分布式安装教程

    最近用最新的hadoop2.6.0 版本搭了一个环境 步骤如下: 首先介绍一下软硬件:台式机win8.1,用VMware11.1建了三个Linux centos 6.5 64位的虚拟机.三个虚拟机的用 ...

  7. 在Win7虚拟机下搭建Hadoop2.6.0伪分布式环境

    近几年大数据越来越火热.由于工作需要以及个人兴趣,最近开始学习大数据相关技术.学习过程中的一些经验教训希望能通过博文沉淀下来,与网友分享讨论,作为个人备忘. 第一篇,在win7虚拟机下搭建hadoop ...

  8. flyme最新7基于android,终于来了,魅族开始基于Android 7.0版本的Flyme内测

    拼 命 加 载 中 ... 在大部分厂商已经跟进基于Android 7.0的版本时,作为国内最著名的定制ROM之一的Flyme还停留在基于Android 6.0的版本,在系统更新速度上落后了很多.不过 ...

  9. 【基于TensorFlow2.3.0的果蔬识别系统的设计】

    基于TensorFlow2.3.0的果蔬识别系统的设计 一.开发环境 Windows 10 Python 3.7.3 TensorFlow 2.3.0 Anaconda 4.12.0 CUDA 10. ...

最新文章

  1. 承德计算机专业去哪考试,2021河北省考承德都在哪个学校考试?
  2. linux下find命令用法
  3. Python enumerate函数
  4. yii框架安装及环境配置!!!
  5. k8s集群dns问题解决办法
  6. 【Tools】Win10系统搭建匿名FTP服务器详解
  7. 基于 opencv 的图像处理入门教程
  8. 任务平均分配的小算法
  9. Oracle11g新特性:在线操作功能增强-Oracle11g在线重建索引功能增强 (转载)
  10. vim个性化设置---给脚本文件加注释头信息
  11. 利用python批量创建文件夹、批量创建文件、批量复制文件到指定文件夹
  12. 二分类模型AUC评价法
  13. libcef(二)基于VS2019编写CEF简单样例
  14. Git常见问题:fatal: Unable to create index.lock File exists 错误的解决办法
  15. Android 热点开启流程
  16. 无线安全~python实现Deauth攻击
  17. WPS格式文件转图片格式如何进行操作
  18. 美国囤积零日漏洞的目的何在?
  19. 旧机还在换盆?! Linux deploy让她再发光!
  20. 蓝牙驱动卸载后自动安装_在安卓旧手机上安装「人人影视客户端」实现收藏后自动下载...

热门文章

  1. Java安装教程—Windows环境Java安装详细教程
  2. JavaWeb黑马登录跳转界面报错
  3. SqlCommand.CommandTimeout 和 SqlConnection.ConnectionTimeout 这两个的区别
  4. delphi5 ADOStoredProc commandtimeout 超时设置
  5. MyBatis 源码分析之 SqlSession 创建
  6. 30分钟了解所有引擎组件,132个Unity 游戏引擎组件速通!【收藏 == 学会】
  7. 视频对象分割论文解读系列【1】
  8. linux音乐播放 桌面歌词,在优麒麟Ubuntu桌面上显示歌词
  9. 双机互备是什么意思?双机互备就是双机热备吗?
  10. SetEvent/ResetEvent