【发布时间】:2014-12-12 00:24:08
【问题描述】:
我需要将数据从 Oracle 数据库实时摄取到 Hadoop。
在 Hadoop 上实现这一目标的最佳方法是什么?
【问题讨论】:
-
striim 的 CDC 阅读器,用于写入 kafka 或 hadoop。免责声明 - 我为 striim 工作。
我需要将数据从 Oracle 数据库实时摄取到 Hadoop。
在 Hadoop 上实现这一目标的最佳方法是什么?
【问题讨论】:
这里的重要问题是实时从 Oracle DB 中获取数据。这通常称为Change Data Capture 或CDC。完整的解决方案取决于您如何执行此部分。
与此答案有关的其他事项是:
回到 CDC,有三种不同的方法:
【讨论】:
稍微扩展一下@Nickolay 提到的内容,有几个选项,但最好的选项过于基于意见的陈述。
Tungsten(开源)
Tungsten Replicator 是一个开源复制引擎,支持各种不同的提取器和应用程序模块。可以从 MySQL、Oracle 和 Amazon RDS 中提取数据,并应用于事务性存储,包括 MySQL、Oracle 和 Amazon RDS; NoSQL 存储(例如 MongoDB)和数据仓库存储(例如 Vertica、Hadoop 和 Amazon rDS)。
Oracle GoldenGate 是一个综合性软件包,用于在异构 IT 环境中进行实时数据集成和复制。该产品集支持运营和分析企业系统之间的高可用性解决方案、实时数据集成、事务变更数据捕获、数据复制、转换和验证。它为 HDFS 提供了一个处理程序。
SharePlex™ Connector for Hadoop® 加载并持续将更改从 Oracle® 数据库复制到 Hadoop® 集群。这为您提供了维护源表的实时或近实时副本的所有好处
【讨论】:
Apache Sqoop 是一种数据传输工具,用于将批量数据从任何具有 JDBC 连接性(也支持 Oracle)的 RDBMS 传输到 hadoop HDFS。
【讨论】: