### 项目目标: * 统一采集和存储水厂数据 * 数据加工、清洗在数据中心完成,保持数据完整性和统一性 * 提供高效的数据查询服务,以满足各业务对数据的需求 * 提供数据展示层,以图表形式呈现数据 * 将数据抽象成事件,并提供数据事件订阅服务 * 数据预警事件,提供事件订阅服务 ### 项目目录结构: . ├── app 应用目录 │ ├── alarms 报警 │ ├── api http 数据接口服务 │ ├── cleansing 数据清洗 │ ├── events 事件 │ └── organization 数据维度整理 ├── bin 外部脚本执行 ├── common 公用工具类 ├── config 通用配置文件 └── deploy 部署相关 ### 数据清洗 tag 的相关订阅 #### python依赖安装 > pip3 install psycopg2 schedule pandas sshtunnel sqlalchemy pymysql redis #### 1. 待处理的事件队列 tag > MQ: Redis > > key: data-center:mq:event > > value: ${tag} > > type: List > > blpop + rpush > #### 2. 事件通知订阅 > MQ: Redis > > key: data-center:notice:event:${project_id}:${item} > > value: {"event_name": ${event_name},"project_id": ${project_id},"payload": {"item_name": ${item_name}, "item_val": ${item_val},......}} > > type: SubPub > #### 3. 待处理的报警队列 tag > MQ: Redis > > key: data-center:mq:alarm > > value: ${tag} > > type: List > > blpop + rpush > #### 4. 报警通知订阅 > MQ: Redis > > key: data-center:notice:alarm > > value: {"alarm_name": ${alarm_name},"project_id": ${project_id},"payload": {"item_name": ${item_name}, "item_val": ${item_val},......}} > > type: SubPub > #### 5. 待整理的异构数据队列 tag > MQ: Redis > > key: data-center:mq:isomerism > > value: ${tag} > > type: List > > blpop + rpush > ### 部署