Cloudera设置Sqoop导入导致Java堆空间错误,超出GC开销限制



我安装了CDH最新版本,并建立了一个集群,其中包括1个16 GB RAM和200 GB内存的主节点,以及3个8 GB RAM和500 GB内存的DataNode。当我尝试运行Sqoop导入时,在完成83%的映射后,它会给出Java堆空间错误和GC开销限制超出错误。我已经尝试了互联网上的所有解决方案。

以下是我尝试过的事情列表:

  1. 我尝试增加容器的大小以及地图,并根据这里给出的计算减少内存限制

    http://docs.hortonworks.com/HDPDocuments/HDP2/HDP-2.0.6.0/bk_installing_manually_book/content/rpm-chap1-11.html

  2. 我尝试将Java堆大小保持在映射的0.8倍,并降低内存限制

我想知道这背后可能的原因和解决方案。

我也遇到过类似的问题,并通过放置合适的MySQL/J连接器5.1.33来解决。

mysql 5.1.17和Sqoop 4.1.5版本存在一些问题。

是否使用参数?dontTrackOpenResources=true&defaultFetchSize=1000&连接字符串中的useCursorFetch=true。它在不改变JVM的情况下工作。

trysqoop-import-Dmapreduce.map.memory.mb=6000-Dmapreduct.map.java.opts=-Xmx1600m-Dmapredition.task.io.sort.mb=4800

我给出了每一百万条记录中有一个映射器。

以上参数需要根据数据进行调整,以获得成功的SQOOP拉动。

相关内容

  • 没有找到相关文章

最新更新