基於Hadoop開發網路雲盤系統架構設計方案第一稿
阿新 • • 發佈:2018-12-31
引言
雲端計算技術的發展,各種網路雲盤技術如雨後春筍,層出不窮,百度、新浪、網易都推出了自己的雲盤系統,本文基於開源框架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終端使用者只能訪問授權使用者設定的空間,超出空間限制不允許訪問。
五、介面原型