我已经让 Hadoop-Lzo 在我的本地伪集群上愉快地工作,但是第二次我在生产中尝试相同的 jar 文件,我得到:
java.lang.RuntimeException: native-lzo library not available
这些库被验证在 DataNodes 上,所以我的问题是:
在哪个屏幕/设置中指定 native-lzo 库的位置?
对于 MapReduce,您需要将条目添加到 MapReduce 客户端环境安全阀。您可以通过转到Configuration下的View and Edit选项卡来找到MapReduce Client Safety。然后在那里添加这些行:
还将 LZO 编解码器添加到 MapReduce 服务下的 io.compression.codecs 属性。为此,请转到配置下的查看和编辑选项卡下的io.compression和这些行:
进行更改后不要忘记重新启动您的 MR 守护程序。重新启动后,重新部署您的 MR 客户端配置。
有关如何使用 LZO 的详细帮助,您可以访问此链接: http ://www.cloudera.com/content/cloudera-content/cloudera-docs/CM4Ent/latest/Cloudera-Manager-Installation-Guide/cmig_install_LZO_Compression.html
高温高压
sudo apt-get install lzop
在您的 TaskTracker 节点中尝试。