功能描述
CDH平台需要集成多个采集端的采样数据,采集端可能来自学校或公司,可能存在非校园网,网络不通情况。
采集端数据分目录存放,文件是csv格式。
平台侧需接收文件和文件夹,同时解析入库(MySQL)和HDFS(Hadoop分布式文件系统)。
集成采取定时任务形式,初步设定为每小时一次。
概要设计
同步记录
数据集成采取增量集成模式,需在平台侧记录哪些数据已经同步完成,哪些数据尚未同步,采集端程序每次仅传输未集成的新数据。
平台端增加表记录哪个目录已经集成,提供接口告诉采集端,哪些已经采集完成。
采集端程序
采集端采用定时任务形式,任务开始会扫描数据目录下的文件夹,对比服务器上查询的同步记录,过滤未同步的文件夹。先对新目录进行zip压缩后通过Http接口上传到平台。采集端需要图形界面配置。
图形界面
- 定时任务间隔,单位分钟,整数输入框1个
- 配置数据目录,文件夹选择器1个
- 手动触发上传,按钮1个
报价
- 平台侧改造,增加表、增加接口、解析入口改造:100
- 采集端界面,pyqt界面工作量:200
- 采集端定时,定时任务和界面结合,兼容手动按钮:100
- 采集端上传,调用查询同步情况接口,开始上传:100
- 整体功能联调:100
跨网络传输方案
跨局域网点对点
自己搭建zerotier或vpn,模拟局域网。————理论方案,尚未实践,需要公网ip服务器
公网ip服务器搭建中转点,采集端先上传到服务器,再下载到平台侧。————方案较复杂,实践过。
跨网方案费用预计
服务器,腾讯云最小规格500多一年,一般熟人或新客有打折。
按中转的上传下载方案,程序和服务器配置方面要增加500元。