首页 新闻 会员 周边

企业数据应用集成开发技术难题

0
悬赏园豆:20 [已解决问题] 解决于 2009-05-26 16:43

做一个跨系统的数据集成的功能模块,从多个系统中采用ADO技术获取了不同的基础数据,存放在内存中,用DATATABLE。
想要用这些数据做一些联合统计,就跟普通SQL语句中的多表联合统计一样,发现要实现挺难的,最后找到了一个MS提供的通用方式,
还是不太理想,主要是效率问题以及一系列的限制问题,它不象SQL的实现那样灵活、方便、高效率。
在此向各位前辈问问,是否有另外的方式可以实现这样统计功能?在网络上也见过一些同类的产品功能,但不知道具体是如何实现的,

小猴子的主页 小猴子 | 初学一级 | 园豆:100
提问于:2009-05-26 11:12
< >
分享
最佳答案
0

如果可以直接访问各个数据库,可以采用跨数据库联结查询!

Ropean | 初学一级 |园豆:121 | 2009-05-26 11:36
其他回答(2)
0

第一步:通过kettle、Sqoop从镜像数据库抽取历史数据到Haoop(Hive)。
关系型数据库数据(Oracle、SqlServer)迁移至非关系型数据库(HDFS、Hbase、Hive),推荐使用Sqoop工具。如果是将不同种类的关系型数据库(Oracle、MySQL、SQL server)整合到同一个关系型数据库中,如MySQL。推荐使用Kettle,有GUI界面操作简单。
第二步:业务系统镜像数据库启动CDC功能,并实时同步数据到Haoop(Hive)。
该技术通过读取镜像数据库日志文件,解析回放数据库操作方式,实现业务数据变更捕获。通过flume实时监控CDC记录表下沉kafka,应用程序订阅服务,解析数据到Hadoop。日志读取、解析、回放等操作都是在镜像数据库上进行,业务数据库只会产生少量的I/O开销,以最大限度地降低对业务系统的影响。
第三步:使用颐东数仓配置数据目录映射关系,自动生成Hive视图HiveSql。
通过以上三步完成数据仓库建设,仓库数据跟随业务数据改变而改变。
第四步:数据中台
数据仓库提供数据中台服务,根据业务活动,自定义勾选数据集市所需字段,生成ElasticSearch索引,并自动生成数据接口。

CTO老王 | 园豆:218 (菜鸟二级) | 2020-01-10 16:56
0

看到你在做企业数据集成这块,正好我最近在项目里用了 SeaTunnel,感觉挺适合你这种跨系统数据集成的场景。

你提到的几个痛点确实很典型:

  • 多个业务系统数据源异构(Oracle、MySQL、SQL Server 等)
  • 需要实时或准实时同步数据
  • 数据量大,对性能有要求
  • 希望降低对业务系统的影响

SeaTunnel 是一个开源的数据集成平台,我觉得它在企业级数据集成场景下有几个优势:

1. 支持的数据源非常丰富
基本上你能想到的数据源都支持:关系型数据库(MySQL、Oracle、SQL Server、PostgreSQL 等)、大数据组件(HDFS、Hive、HBase、Spark、Flink 等)、消息队列(Kafka、Pulsar 等)、搜索引擎(Elasticsearch 等)、云数据库等。

2. 配置简单,维护方便
通过配置文件就能定义数据同步任务,不需要写复杂的代码。比如从 Oracle 同步数据到 MySQL,配置一下 source 和 sink 就能运行。

3. 支持多种同步模式

  • 全量同步:适合初始化数据
  • 增量同步:基于时间戳或自增 ID
  • CDC(Change Data Capture):实时捕获数据库变更,通过解析 binlog 实现低延迟同步

4. 分布式架构,性能不错
基于 Spark 或 Flink 引擎,可以水平扩展,处理海量数据时表现良好。

5. 对业务系统影响小
CDC 模式通过读取数据库日志文件实现数据捕获,不需要在业务表上加触发器,对业务系统的影响比较小。

具体到你的场景,可以考虑这样的方案:

  • 使用 SeaTunnel 的 CDC 功能实时捕获各业务系统的数据库变更
  • 通过 Kafka 作为消息缓冲
  • 同步到数据仓库或数据湖中进行统一分析

官网地址:https://seatunnel.apache.org 上面有详细的文档和配置示例,可以参考一下。社区也挺活跃的,遇到问题可以去 GitHub 提 issue。

如果你正在选型数据集成工具,SeaTunnel 值得考虑,我们这边用下来感觉还不错。

数据攻城狮新生代 | 园豆:216 (菜鸟二级) | 2026-04-06 22:32
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册