Node.js+HDFS开发的简易网盘

最近研究了HDFS的相关内容,基于WebHDFS REST APIHadoop-1.1.2版)制作了一个了简易的网盘。实现了账号注册,文件的上传、下载、删除等功能。由于基于Hadoop,参考Dropbox的命名,将其名字定为Doopbox。项目地址:https://github.com/xushvai/Doopbox

业务/应用服务(调用HDFS服务的服务)使用node.js+Express开发。

数据库中只有一个account表,存放账号信息:

以下是在本地环境的演示视频:

环境准备:启动Hadoop集群,一共三台机器(虚拟机),一个NameNode,两个DataNode。启动部署在真机上的MySQL数据库。

账号注册与登陆:每一个账号,都对应于HDFS home目录下的一个目录,账号名即为目录名。基于该账号上传的文件都会放在该目录下。

文件下载

文件与目录的删除

文件与目录的重命名

创建目录

上传文件