一个解析大量数据的传统架构设计&解析

2 篇文章 0 订阅
1 篇文章 0 订阅

目录

一、项目背景

二、技术栈

三、解析数据架构设计

四、工作Flow

五、总结


一、项目背景

某工厂机器在生产过程中产生大量数据以文本格式存在机器端,用户想要检索查看数据非常困难,需要开发一个系统解析数据,并在网页中显示各种形式的数据。

 

二、技术栈

语言: C#、Python、Typescript

框架:.Net、Django、Angular

DB:Oracle、SQL Server

 

三、解析数据架构设计

架构主体分以下几个component:

  • Task Schedule Component

        负责管理task,创建、启动、结束等操作

  • File Access Component 

        从机器端或者第三方系统取得操作文件(FTP/Http/Share Folder)

  • DB Access Component 

        操作数据库

  • Utility Component

        帮助工具组件

  • Logger Component

        日志组件 

  • Processor Component

        负责创建多线程处理工作

  • Parser Plugin Component

        解析各种类型的文件,产生新文件类型时,需要新开发一个对应的parser plugin 

 

四、工作Flow

 

主要问题处理方式:

  1. 用一个配置文件管理可以创建哪些task
  2. 存在一个常启动的Windows service,每隔一段时间(10mins)会启动task,开始解析该时间段内机器产生的数据文件
  3. 存入数据库数据量太大,运用DB同义词方式,创建多个实例,并且需要定期删除失效的DB实例,以确保系统响应速度
  4. 创建master表管理不长变化信息,如机器号,可解析文件类型等

 

五、总结

由于物理设备容量限制,该系统只能浏览一段时间内的历史数据,task处理速度上,基本可以满足需求,方案改进可以采用物联网边缘计算设计方案。


 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

lxp198837

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值