云存储总体设计方案文档格式.docx

上传人:b****1 文档编号:5680431 上传时间:2023-05-05 格式:DOCX 页数:15 大小:189.11KB
下载 相关 举报
云存储总体设计方案文档格式.docx_第1页
第1页 / 共15页
云存储总体设计方案文档格式.docx_第2页
第2页 / 共15页
云存储总体设计方案文档格式.docx_第3页
第3页 / 共15页
云存储总体设计方案文档格式.docx_第4页
第4页 / 共15页
云存储总体设计方案文档格式.docx_第5页
第5页 / 共15页
云存储总体设计方案文档格式.docx_第6页
第6页 / 共15页
云存储总体设计方案文档格式.docx_第7页
第7页 / 共15页
云存储总体设计方案文档格式.docx_第8页
第8页 / 共15页
云存储总体设计方案文档格式.docx_第9页
第9页 / 共15页
云存储总体设计方案文档格式.docx_第10页
第10页 / 共15页
云存储总体设计方案文档格式.docx_第11页
第11页 / 共15页
云存储总体设计方案文档格式.docx_第12页
第12页 / 共15页
云存储总体设计方案文档格式.docx_第13页
第13页 / 共15页
云存储总体设计方案文档格式.docx_第14页
第14页 / 共15页
云存储总体设计方案文档格式.docx_第15页
第15页 / 共15页
亲,该文档总共15页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

云存储总体设计方案文档格式.docx

《云存储总体设计方案文档格式.docx》由会员分享,可在线阅读,更多相关《云存储总体设计方案文档格式.docx(15页珍藏版)》请在冰点文库上搜索。

云存储总体设计方案文档格式.docx

O

P

Q

R

1.目的

云存储设计方案用来存储RCU-U(车云平台)终端设备所采集的数据,以及对采集数据简单的查询功能,是对软件及测试概要设计和详细设计的约束。

2.适用范围

对于此设计方案设计多方面的内容,使用范围:

软件代表、测试代表、设计代表。

3.定义

缩略语

英文

中文描述

Hadoop

Apache基金会下面的一个开源项目,这个项目包含很多子项目

Zookeeper

Hadoop子项目之一,大型分布式系统的可靠协调系统

HBase

Hadoop子项目之一,分布式的、面向列的开源数据库

HDFS

HadoopDistributedFileSystem

是一个分布式文件系统。

HDFS有着高容错性(fault-tolerant)的特点,并且设计用来部署在低廉的(low-cost)硬件上

VIN

VehicleIdentificationNumber

车辆识别码

UBI

Usage-BasedInsurance

基于驾驶行为的保险

GPS

GlobalPositionSystem

全球定位系统

GSM

GlobalSystemforMobileCommunication

全球移动通讯系统

GIS

GeographyInformationSystem

地理信息系统

GPRS

GeneralPacketRadioService)

通用分组无线服务

3G

3rd-generation

第三代移动通信技术

G-Sensor

Gravity-sensor

重力传感器

GYRO

Gyroscope

陀螺仪

4.系统总体部分

4.1系统概述

4.1.1名称、型号、版本、保密代号

此项目为云存储,简称LaunchCloud,云存储,版本V1.00.000。

4.1.2版本描述

4.1.3云存储主要是设计一个存储亿级记录的分布式云存储系统,整个系统大致包含2大部分:

(1)云存储:

RCU-U终端采集行驶数据的存储,RCU-U终端部分分析后的数据存储,MapReduce分析后的结果存储。

(2)云存储门户网站:

设备管理,用户管理,用户操作日志记录,第三方应用的API(预留)。

该系统存储的数据主要是为以后的业务应用(如:

UBI、汽车租赁等)提供原始的数据,以及提供大数据分析的技术扩展

4.2系统功能、性能

4.2.1功能特性

4.2.1.1云存储功能有以下几个方面

系统部分:

1.使用业内比较成熟的,开源的Hadoop+Zookeeper+Hbase云存储来存储汽车原始的行驶记录,

2.设备资料,用户资料等亿级以下的数据使用开源的数据库mysql来存储

3.基于Linux操作系统

具体业务部分:

1.GPS信息存储

2.G-SENSOR(加速/减速)信息存储

3.陀螺仪信息存储

4.速度信息存储

5.发动机转速信息存储

6.安全带指示信息存储

7.气囊信息存储

8.胎压信息存储

9.里程计信息存储

10.车门信息存储

11.油耗信息存储

12.点火信息存储

13.转向信息存储

14.远程诊断信息存储

15.超速信息存储

16.急刹信息存储

17.急加速信息存储

18.旅程行驶距离信息存储

19.碰撞事故信息存储

20.意外事故信息存储

21.用户操作日志记录存储

22.设备信息存储

23.用户信息存储

24.用户汽车阀值存储(电子栏栅,超速阀值,各种数据采集的频度等)

25.软件下载

26.系统日志

27.第三方应用的API(预留)

4.3系统总体结构

4.4.1云存储系统方框图

4.4.1.1云存储功能性系统方框图

4.4.1.2RCU-U物理性系统方框图

4.4.1.3对应关系

云存储层:

GPS信息存储、G-SENSOR(加速/减速)信息存储、陀螺仪信息存储、速度信息存储、发动机转速信息存储、安全带指示信息存储、气囊信息存储、胎压信息存储、里程计信息存储、车门信息存储、油耗信息存储、点火信息存储、转向信息存储、远程诊断信息存储、超速信息存储、急刹信息存储、急加速信息存储、旅程行驶距离信息存储、碰撞事故信息存储、意外事故信息存储、用户操作日志记录存储

云存储门户网站:

设备信息存储、用户信息存储、用户汽车阀值存储(电子栏栅,超速阀值,各种数据采集的频度等)、软件下载、系统日志、第三方应用的API(预留)

4.4.2可测性设计的整体结构描述:

测试过程一般按3个步骤进行,即单元测试、组装(集成)测试,系统测试,为了支持这些测试在下面的软件设计中作了如下考虑:

软件模块以及内部子模块的对外接口标准化,整个软件流程系统化,以支持单元测试中的模块接口测试、出错处理测试,并使测试用例测试,同时使集成测试方便容易;

软件模块内部采用清晰明了的判断分支结构。

以方便白盒方式的路径测试;

软件模块保证可理解性。

使用有意义的数据名和函数名,充分的注释。

以方便测试用例的生成、以及走查等软件评审。

在关键的地方增加LOG信息,以方便出问题的时候知道问题出在哪里。

4.4关键技术

1.高可靠性

云存储底层的HDFS是一个分布式文件系统。

HDFS有着高容错性(fault-tolerant)的特点,并且设计用来部署在低廉的(low-cost)硬件上。

而且它提供高吞吐量(highthroughput)来访问应用程序的数据,适合那些有着超大数据集(largedataset)的应用程序

2.高扩展性

Hadoop是在可用的计算机集簇间分配数据并完成计算任务的,这些集簇可以方便地扩展到数以千计的节点中。

假如想扩展云存储系统中的存储容量,运算能力,直接水平添加机器,修改配置即可实现,上层程序不需要做任何修改。

云存储门户网站前端采用高性能的nginx服务器做负载均衡,动静分离,静态资源缓存,经典的master-slave热备切换,不间断提供服务;

Web集群层同样也可以按照集群的负担情况动态添加物理机器;

数据缓存层是提供快速响应的重要保障;

数据库Mysql存储层可以随着访问量的增大,按照业务垂直切分

3.高效性

Hadoop能够在节点之间动态地移动数据,并保证各个节点的动态平衡,因此处理速度非常快。

基本上系统的关键点上都采用分布式部署,当系统访问量增大时,可以通过添加服务器来持续保证整个集群的高效性。

4.高容错性

Hadoop能够自动保存数据的多个副本,并且能够智能地将失败的任务重新分配。

基本上系统的关键点上都采用分布式部署,即使有部分服务器可能因为网络、硬盘、cpu、主板等物理损坏,也不会导致整个集群不可用

4.5系统配置

4.5.1硬件配置(比较节省的配置)

5台服务器(1台[server1]:

24GB内存+2TB硬盘[7200RPM],其他4台:

8GB内存+2TB硬盘[7200RPM]),其他千兆交换机把这5台服务器连接起来

4.5.2软件配置

Linux操作系统、Nginx软件、Tomcat、Hadoop、Zookeeper、Hbase、Mysql

4.5.3具体部署

server1:

NameNode+DataNode+HRegion

server2:

DataNode+Zookeeper+HMaster+HRegion

server3:

NameNodeSecondary+DataNode+HMasterSlave+Zookeeper+HRegion

server4:

DataNode+Zookeeper+HRegion+NginxSlave+Tomcat+MysqlSlave

server5:

DataNode+HRegion+NginxMaster+Tomcat+MysqlMaster

4.6外包、外购子系统规格

4.7产品升级

4.7.1版本升级规格

由于整个系统都是运行在我们的服务器上,直接按照升级步骤来升级即可

4.7.2系统可扩充性设计

整个系统都是分成多个小模块,多层架构来开发。

方便产品的有效的维护和升级。

4.8用户支持(可选)

4.8.1资料提供

可以在存储门户网站明显的位置放使用快速入门,在需要用户填写的表单位置有提示行说明

4.8.2联机帮助

暂无要求

4.9可靠性规格

5.软件设计

5.1功能设计

5.3.1软件基本设计思想

云存储系统要求工作稳定,性能达到相关标准规定。

程序架构多层分模块设计,分布式、高可靠、高可用、高扩展架构。

5.3.2软件开发平台

Linux开源稳定高性能的开源服务器操作系统;

Hadoop是大数据存储分析的事实上的标准,开源免费,目前仍然在快速的发展;

Nginx是一个高性能的HTTP和反向代理服务器,同样是免费开源的;

Mysql是目前最流行的开源免费数据库

5.3.3软件系统描述

I软件系统结构描述、总体软件框图

II功能实现原理

通讯集群通过云存储系统提供的API接口把RCU-U采集的实时业务的数据插入到HBase;

云存储门户采用经典的MVC三层结构,有时改变其中的一层就能满足应用的改变。

一个应用的业务流程或者业务规则的改变只需改动MVC的模型层,它实现了显示模块与功能模块的分离。

提高了程序的可维护性、可移植性、可扩展性与可重用性,降低了程序的开发难度。

控制层的概念也很有效,由于它把不同的模型和不同的视图组合在一起完成不同的请求,因此,控制层可以说是包含了用户请求权限的概念。

最后,它还有利于软件工程化管理。

由于不同的层各司其职,每一层不同的应用具有某些相同的特征,有利于通过工程化、工具化产生管理程序代码。

根据用户的请求,决定是从数据库获取数据还是从Hbase集群获取数据或者2者都有。

III模块规格、设计描述

在各功能模块中需要注意有关数据精度的优化,达到提高网络传输速度,减少云存储的存储空间,方便以后根据第三方业务快速的数据分析。

表1:

详细功能模块说明

模块名称

说明

1

公共工具模块

整个系统的字符处理,数值转换,获取日期等

2

GPS信息存储模块

根据可能的业务需求来设置Hbase的RowKey,提高海量数据的检索速度,保存的数据可以在地图上重现行驶轨迹,基本参数有:

RCU-U的SN、经纬度、海拔、时间、精度等。

3

G-SENSOR(加速/减速)信息存储

基本参数有:

RCU-U的SN、当前具体的加速/减速数字、采集时间、系统时间等。

4

陀螺仪信息存储模块

水平面角度,垂直面角度、采集时间、系统时间等。

5

速度信息存储模块

速度、采集时间、系统时间等。

6

发动机转速信息存储模块

发动机转速、采集时间、系统时间等。

7

安全带指示信息存储模块

主驾驶安全带指示、采集时间、系统时间等。

8

气囊信息存储模块

气囊状态、采集时间、系统时间等。

9

胎压信息存储模块

胎压数据、采集时间、系统时间等。

10

里程计信息存储模块

里程数据、采集时间、系统时间等。

11

车门信息存储模块

车门状态数据、采集时间、系统时间等。

12

油耗信息存储模块

油耗数据、采集时间、系统时间等。

13

点火信息存储模块

点火数据、采集时间、系统时间等。

14

转向信息存储模块

转向数据、采集时间、系统时间等。

15

远程诊断信息存储模块

存储RCU-U终端诊断后,自动把诊断结果上传,基本参数有:

远程诊断结果、采集时间、系统时间等。

16

超速信息存储模块

存储RCU-U终端根据用户所设定的阀值,来判断当前是否超速,如果超速,就上传超速信息,基本参数有:

速度阀值、当前速度、采集时间、系统时间等。

17

急刹信息存储模块

存储RCU-U终端根据用户所设定的阀值,来判断当前是否急刹,如果急刹,就上传急刹信息,基本参数有:

急刹阀值、当前速度、采集时间、系统时间等。

18

急加速信息存储模块

存储RCU-U终端根据用户所设定的阀值,来判断当前是否急加速,如果急加速,就上传急加速信息,基本参数有:

急加速阀值、当前速度、采集时间、系统时间等。

19

旅程行驶距离信息存储模块

RCU-U终端在一个旅程结束的时候,上传该旅程的数据。

20

碰撞事故信息存储模块

RCU-U终端判断是否是碰撞,然后上传碰撞事故信息。

21

意外事故信息存储模块

RCU-U终端判断是否是意外事故,然后上传意外事故信息。

22

用户操作日志记录存储

记录云存储门户中用户更新数据的操作

23

设备信息模块

记录汽车与RCU-U终端的对应关系

24

用户信息模块

包括用户的注册,登录验证,修改密码,找回密码,注册设备,修改设备对应关系

25

用户汽车阀值存储(电子栏栅,超速阀值,各种数据采集的频度等)模块

用户汽车阀值记录的修改,查询

26

软件下载模块

软件版本的记录,上传软件包

27

第三方应用的API(预留)

可以参考目前新浪微博开放API、腾迅微博开放API的设计思路

IV软件模块可测性设计规格

需要提供软件各模块的单元测试和集成测试用例。

满足自动化测试要求。

提供给后台详细的测试数据和结果。

6.测试系统设计

测试系统设计应满足产品的要求。

6.1单元测试设计

单元测试是研发设计人员对板级软硬件各模块进行健壮性测试。

各软件设计人员应对各自负责的模块进行功能和性能测试,包含正常测试和异常测试。

充分保证产品底层最基础的部件的设计质量。

软件单元测试报告应由对应的研发设计人员完成提交和组织评审,以及进行缺陷早期处理和完善。

测试人员对各单元测试进行独立测试和验证,提交相应文档。

云存储具体模块内容请见前面表格。

6.2集成测试设计

集成测试是在单元测试的基础上对模块之间,板级间组成的子系统进行健壮性测试。

由研发设计人员和测试人员各自完成。

验证模块间的功能和性能,验证单元测试的未知缺陷。

研发设计人员完成自测,缺陷处理。

测试人员完成测试,验证和提交相应报告,跟踪缺陷处理。

云存储需要测试的主要部分有:

通讯集群与HBaseMaster数据库间的通讯,采集下来的各种数据是否已经正确保存到对应的表中,云存储门户网站是否能够快速查询到采集的数据等。

6.3系统测试设计

系统测试在集成测试完成后,对产品的整体测试。

覆盖产品所有需求。

这部分由测试人员完成。

系统测试还应包含,可靠性测试,环境试验等。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 小学教育 > 语文

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2