gpt4 book ai didi

oracle - hadoop(sqoop)加载oracle的速度会比SQL loader快吗?

转载 作者:行者123 更新时间:2023-12-02 21:40:47 32 4
gpt4 key购买 nike

我们目前使用bash shell脚本和具有多个线程的SQL loader的组合将CDR加载到Oracle仓库中。我们希望将这一过程转移给我们,因为我们设想由于用户群的增加而导致的数据增加将很快使当前系统最大化。我们还希望逐步将hadoop引入我们的数据仓库环境。

从hadoop加载会更快吗?
如果是这样,什么是最好的hadoop工具集?

更多信息:
我们通常将通过ftp将管道分隔的文本文件的contunoius流发送到一个文件夹,再向每个记录添加两个字段,在oracle中加载到临时表,并运行一个过程以加载到最终表。您将如何使用工具来建议流程。例如;

  • 文件通过ftp传输到Linux文件系统(或者可以直接通过ftp传输到hadoop吗?),将水槽加载到hadoop。
  • 添加了
  • 字段(什么是最好的方法? pig , hive , Spark 或任何其他建议)
  • 然后使用sqoop 将
  • 文件加载到oracle
  • 称为最终过程(sqoop可以调用oracle过程吗?如果不是,哪种工具最适合执行过程并帮助控制整个过程?)

    另外,如何控制平行度?它等于运行作业的映射器的数量吗?
  • 最佳答案

    具有将数据从<6节点Hadoop集群导出到Oracle Datewarehouse的类似任务。
    我已经测试了以下内容:

  • Sqoop
  • OraOop
  • “Oracle BigData连接器”套件中的
  • Oracle Loader for Hadoop
  • 使用sqloader作为映射器的Hadoop流作业,在其配置中,您可以使用以下命令从stdin中读取:load data infile "-"

  • 仅考虑速度,使用sqloader作为映射器的Hadoop流作业是传输数据的最快方法,但是您必须在群集的每台计算机上安装sqloader。这更多是出于个人好奇,我不建议您使用这种方式导出数据,日志功能有限,并且应该对您的数据仓库性能产生更大的影响。

    根据我的测试,获胜者是Sqoop,它相当可靠,它是Hadoop生态系统的导入/导出工具,是第二快的解决方案(比第一名慢1.5倍)

    使用OraOop的Sqoop(最新更新于2012年)比最新版本的Sqoop慢,并且需要在群集上进行额外的配置。

    最终,使用Oracle的BigData连接器获得了最差的时间,如果您有一个大型群集(> 100台计算机),那么它的时间应该不比我获得的时间差。导出过程分两个步骤。第一步涉及重新处理输出并将其转换为与Datawarehouse配合使用的Oracle格式。第二步是将结果传输到数据仓库。如果您具有处理能力,那么这种方法会更好,并且不会像其他解决方案那样影响Datawarehouse的性能。

    关于oracle - hadoop(sqoop)加载oracle的速度会比SQL loader快吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28906462/

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