项目需求和架构设计

需求分析

1,用户行为数据采集平台搭建
2,业务数据采集平台搭建
3,数据仓库维度建模
4,分析,设备,会员,商品,地区,活动等核心主题,统计指标
5,采用即席查询工具,随时进行指标分析
6,对集群性能进行监控,发生异常需要报警
7,元数据管理
8,质量监控
9,权限管理

安全性:kerberos + ranger 的权限管理
一致性:python + shell脚本的方式 搭建了数据监控系统
可靠性:集群性能监控, zabbix
元数据管理 :atlas

技术选型

数据采集传输:Flume ,Kafka,Sqoop
数据存储:MySQL ,HDFS,HBase
数据计算:Hive,Tez,Spark
数据查询:Presto,Kylin
数据可视化:Echarts,Superset
任务调度:Azkaban
集群监控:Zabbix
元数据管理:Atlas
权限管理:Ranger

系统数据流程设计

在这里插入图片描述

具体版本型号

在这里插入图片描述
注意:尽量不要用最新的版本,选择新框架的半年左右的稳定的版本

服务器选型

在这里插入图片描述

集群规模

假设每台服务器8T磁盘,128G内存

1,每天日活用户100w ,每人一天平均100条: 100w * 100条 = 1亿条
2,每条日志1k左右,每天1亿条 :1亿/1024/1024 = 约为100G
3,半年内不扩充服务器来算:100G * 180天 = 约 18T
4,保存3副本 :18T*3 = 54T
5,预留20%-30%Buf = 54T/0.7 = 77T
6,总共约 8T * 10台 服务器

集群资源规划设计

在企业中通常会搭建一套生产集群和一套测试集群。生产集群运行生产任务,测试集群用于上线前代码编写和测试。

1)生产集群
(1)消耗内存的分开
(2)数据传输数据比较紧密的放在一起(Kafka 、Zookeeper)
(3)客户端尽量放在一到两台服务器上,方便外部访问
(4)有依赖关系的尽量放到同一台服务器(例如:Hive和Azkaban Executor)

在这里插入图片描述
2)测试集群服务器规划

在这里插入图片描述

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
IT项目功能架构设计是指在IT项目开发过程中,根据项目需求和目标确定系统的功能模块、数据流程和交互方式的设计思路和方案。 首先,在功能架构设计过程中,要将项目需求拆解为不同的功能模块。通过需求分析和交流会议,我们可以将整个项目拆分为多个相对独立但又相互关联的功能模块,每个模块都有特定的功能和任务。 其次,功能架构设计需要定义各个功能模块之间的数据流程和交互方式。通过绘制数据流图或流程图,可以清晰地描述每个模块的输入和输出,以及模块之间的数据交互路径。此外,还需要考虑用户界面的设计和交互方式,确保用户可以方便地操作系统。 然后,我们需要考虑功能模块的组织结构和调用关系。根据项目的规模和复杂性,可以选择不同的架构模式,如分层架构、模块化架构或微服务架构。这将有助于实现系统的可扩展性、灵活性和可维护性。 最后,在功能架构设计中,需要考虑项目的安全性和稳定性。根据项目的安全需求,设计相应的安全措施和权限控制机制,以保护系统及其数据不受未授权访问和攻击。此外,还需要考虑系统的可靠性和性能,确保系统可以在高负载和异常情况下保持正常运行。 总而言之,IT项目功能架构设计是一个综合考虑项目需求、数据流程、交互方式、组织结构和安全稳定性等因素的设计过程。通过合理设计和规划,能够最大限度地满足项目目标,并为后续开发和维护工作提供良好的基础。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值