基于Hadoop开发网络云盘系统架构设计方案
2024-10-19 21:38:47
引言
云计算技术的发展,各种网络云盘技术如雨后春笋,层出不穷,百度、新浪、网易都推出了自己的云盘系统,本文基于开源框架Hadoop设计实现了一套自己的网络云盘系统,方案为初步设计方案,不断完善中。
一、总体架构
二、方案说明
2.1 系统切分
从用户角度,整个系统划分为ECDisk客户端、ECDisk运营管理平台、HDFS分布式文件存储集群和账户数据应用平台四部分。
2.2 功能需求
文件管理:浏览、文件上传、文件下载、文件删除
用户管理:用户注册、用户登录、用户注销、账户充值、账户查询
三、技术选型
3.1 HDFS服务接口
考虑到客户端开发环境为VC++2010,HDFS客户端API采用Hadoop自身提供的Thrift接口。
3.2 用户数据库
用户数据库存储用户的账户信息,保留在MySQL数据库中。
3.3 内存数据库
为提高用户账户信息访问速度,所有当前在线用户(已登录)的账户数据都缓存到内存数据库中,内存数据库选用基于Erlang实现的Menisa。
四、设计原则
4.1 隐藏暴露原则
面向ECDisk用户只能直接访问用户数据应用服务器,HDFS服务器资源用户登录后,由用户数据服务器返回给ECDisk客户端。
4.2 授权原则
ECDisk终端用户只能访问授权用户设定的空间,超出空间限制不允许访问。
五、界面原型
最新文章
- 异常 Exception
- 数据库设计(2/9):域,约束和默认值(Domains, Constraints and Defaults)
- WCF中常用的binding方式
- gfw列表
- Emacs简易教程
- YUI Reset CSS (学习摘抄)
- Python编写一个Python脚本
- Linux之磁盘管理
- Android系统Recovery工作原理
- Python subprocess Popen
- 03-UIKit、VC之间正向反向传值、代理
- (一)ROS系统入门 Getting Started with ROS 以Kinetic为主更新 附课件PPT
- layerX参数构建
- Java下载创建好的Excel模板
- Python_Mix*匿名函数,sorted,filter,map,递归函数,二分法查找
- 全文搜索引擎 Elasticsearch 入门
- Vue.js学习笔记之修饰符详解
- python------模块定义、导入、优化 ------->;re模块
- 使用MSYS、Notepad++搭建C/C++开发环境
- leetcode 回文数