gpt4 book ai didi

sql - 将 Oracle 数据导入 Hadoop

转载 作者:可可西里 更新时间:2023-11-01 17:00:20 24 4
gpt4 key购买 nike

预警:我是数据科学/数据工程师/hadoop领域的新手;我一直在寻找将大量数据(数百万行)导入我们设置的 Hadoop 集群的解决方案。数据库是Oracle,我一直在探索很多方法来运行这样的工作;最终目标是尽可能接近集群内的实时数据导入。

我在这里看到的第一个工作是通过使用 sqlplus 的 shell 文件。我创建了这个 sql 脚本来运行并将表和日期作为工作参数,然后为我们希望每天在集群中看到的特定表运行 shell 脚本。然后可以安排此任务每晚自动执行一次。这种方法的问题在于它似乎进行得太慢了。据我所知,UTL_FILE 和 Pro*C 同样慢。

这让我发现了 Sqoop,我们已经安装了它,但我不明白的是为什么它比 sqlplus 快得多。使用 SQLPlus,我只需选择表语句并将其假脱机到文本分隔文件(例如 csv)中。这是一个过程。在 Sqoop 中,它是如何进行多个并行调用的?

任何对此问题的见解都将不胜感激!

最佳答案

您知道“UTL_FILE 和 Pro*C 同样慢”……您是如何学到的?你测量了什么?我想知道为什么 Pro*C 应该很慢?毕竟是 C。

当导入到 hadoop HDFS 比导入到本地文件系统更快时——并且它们都在可比较的磁盘上——那么这肯定是因为一个正在执行顺序写入(附加 block )而另一个正在写入随机 block ...

当您想要接近实时导入时,您必须保持某种更改跟踪。在 Oracle 中执行此操作的最佳方法是使用物化 View 日志。

关于sql - 将 Oracle 数据导入 Hadoop,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25041586/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com