理论教育 构建分布式架构系统实现实时数据统计分析

构建分布式架构系统实现实时数据统计分析

时间:2023-06-03 理论教育 版权反馈
【摘要】:[11](一)架构思路架构系统由数据接入层、数据处理层、分布式数据库层、数据统计分析层、业务逻辑层、表现层、软件系统管理层和云平台层等部分组成。实时、历史、报警、报表等数据,根据数据的类型存入相应的数据库中,同时设置主键进行关联,使其易于导出。统计分析的结果由邮件服务器或第三方短信接口进行发送。

构建分布式架构系统实现实时数据统计分析

该平台采用成熟可靠的云计算平台支持公有云、混合云和专有云等多种部署方式,提供多种数据和支持,并提供多种安全保护技术,如Ddos攻击防护等,对云主机和云服务提供实时监控。[11]

(一)架构思路

架构系统由数据接入层、数据处理层、分布式数据库层、数据统计分析层、业务逻辑层、表现层、软件系统管理层和云平台层等部分组成。

数据接入层:需要网关的分布式部署,可以采用云端的SLB服务,以实现数据接入的动态可扩展和访问服务的稳定运行。

数据处理层:解密和分析接收到的数据,对数据做容错和防错的处理。

分布式数据库层:采用表格存储数据库、RDS关系数据库和Redis内存数据库集群,使用DRDS分布式数据库服务。

数据统计分析层:实时或定期对充电桩数据、档案数据或日志数据等进行统计分析。

业务逻辑层:包括充电桩档案管理、报警管理、报表管理和错误信息处理等业务功能。

表现层:基于浏览器实现基础信息展示、运维管理、报警处理和统计分析结果等其他功能界面。

软件系统管理层:包括用户管理、权限管理、部门管理和安全管理。日志系统包括系统运行日志、用户操作日志和充电桩数据日志的收集、存储、清洗和分析工作。

云平台层:包括云主机、云服务产品和云安全产品等。

(二)架构说明

为了实现高并发的充电桩接入能力,本架构使用云服务(包括IaaS和PaaS),以实现平台的可高用和易扩展优势。使用消息队列或对外接口的方式与大数据平台紧密连接。

扩展性分为性能扩展和存储扩展。性能扩展,即平台采用基于公有云的分布式服务框架,可以快速地根据业务量进行服务的平行扩展。存储扩展,即平台采用基于公有云的分布式数据库服务,可以根据数据存储的要求达到容量的动态扩展。(www.daowen.com)

数据管理,通过与大数据平台对接可使用直接消费消息队列的方式和第三方接口的方式,实现数据的高效处理,并防止数据丢失。利用表格存储数据库的特性,将数据分为热数据和冷数据,以实现数据的分层,并借助配置足够的数据库容量实现存储3个月数据的需求。实时、历史、报警、报表等数据,根据数据的类型存入相应的数据库中,同时设置主键进行关联,使其易于导出。对外接口服务可以依据需求调用数据,提供给第三方。

数据接口,分布式接口服务可以为许多接口调用提供良好的服务性能。使用标准的RESTFul接口提供数据连接,该接口采用RSA加密来加密数据。

(三)系统功能

系统功能包括档案管理、实时监控、报警管理、远程控制、订单管理、报表管理和用户管理(图9.9)。

档案管理:使用关系数据库存储档案数据,并使用外键关联相关表。为了提高系统效率,尽量减少使用关系数据库的频率,可将相关数据的索引存储在Redis内存数据库中。

实时监控:根据索引,可以调用多数据源数据的组合来获取需要在页面上展示的数据。采用从Redis中调用的方式以提高页面的响应速度。

图9.9 Web管理平台功能模块

报警管理:实时报警信息存储于Redis和关系库中,历史报警信息存储于表格存储中。报警完成后,从关系库同步到表格存储中。

远程控制:由用户管理模块为用户分配远程控制特权。用户在使用远程控制时,需输入密码再次保护。通过云端消息队列发往充电桩的控制指令,确保在充电桩网络出现问题时,下发指令不会丢失并及时补发。数据接口使用SSL通道和RSA数据加密的方式,为第三方应用提供了接口调用。管理控制流程是基于公共服务的强大服务性能和应用系统的微服务架构,记录所有消息和处理逻辑日志,包括从控制指令下发到充电桩应答成功等环节,使得控制命令的即时性可以满足系统要求。

订单管理:对从预约开始到支付完成的所有状态进行管理并进行统计。

报表管理:基于统计分析模块或大数据平台的spark算法,利用第三方主流的前端控件高效地呈现统计分析结果。统计分析数据提供Web端导出功能和对外的加密数据接口。对于实时数据的统计分析可以根据需求,使用定时任务的方法。统计分析的结果由邮件服务器或第三方短信接口进行发送。

用户管理:利用关系数据库创建用户、角色、权限、资源、部门表,并进行外键关联。用户管理功能可以实现用户建立、所属部门、角色建立、权限分配等功能。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈