1.什么是采集

2.为什么需要采集

3.场景分析

4.解决方案:

--------------------------------------------------------------------------------------------------------------

1.什么是采集

在一般的分层业务系统中,数据采集都是一个非常重要的部分:主要负责数据的输入。

2.为什么需要采集

在传统的管理系统中,一般的业务系统都是采集,存储,显示 ,报表,这是传统分层模型下的架构方式下的业务功能;我们重点看一下数据采集部分;

3.场景分析

1.第一种数据采集就是基于请求式样的采集,意味着请求即是采集。常见的情景就是HTTP 请求,把大量请求作为数据源存储都DB中。

2.第二种就是基于网页版的数据采集,前端使用打点技术,没隔一段时间完成数据采集,存储到DB中。

3.最后一种就是数据钻取方式,从中间表查询存储到DB中

4基于ETL导入的方式数据采集。

5.基于消息队列的数据采集,

4.解决方案:

第1种方案就是常见的程序采集,实现是实体类的映射,存储到DB中,主要是实现对Bean的映射和格式转换。入xml,Object,配置文件等自定义数据结构等解析

数组解析,配置文件读取,xml的解析,Object解析,JSON解析,等数据基本数据类型和复杂数据类型解析。

xml这方面实现技术:Jaxb2

配置文件实现jdk protites,Map 映射

xml解析:dom4j,JDOM,

Object:对象之间的映射,一对多,多对一等方式,常见入Herbernate,Mybatis等。

JSON:Gson 实现,fastjson等

第二种方案:是基于网页采集的,常见的入divolte技术等。

第三种方案:比较常见的是启动一个定时任务去采集,我们可以到中间库去采集,查询出中间库的数据,定时采集到自己的业务表中。

第四中方案:利用DB之前的迁移工具,如oracle 的导入泵,RMAN工具等。

第五种方案:  基于消息队列的方式,如kafka进行监听和消费存储到DB中。

开源方案对数据采集的方式:

使用最新的解决方案:

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐