Невозможно загрузить libhdfs
Попытка использовать pyarrow для доступа к файлу hdfs и не в состоянии заставить его работать, ниже приведен код, большое спасибо заранее.
[rxie@cedgedev03 code]$ python
Python 2.7.12 |Anaconda 4.2.0 (64-bit)| (default, Jul 2 2016, 17:42:40)
[GCC 4.4.7 20120313 (Red Hat 4.4.7-1)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
Anaconda is brought to you by Continuum Analytics.
Please check out: http://continuum.io/thanks and https://anaconda.org
import pyarrow
import os
os.environ["JAVA_HOME"]="/usr/java/jdk1.8.0_121"
from pyarrow import hdfs
fs = hdfs.connect()
Traceback (последний вызов был последним): файл "", строка 1, в файле "/opt/cloudera/parcels/Anaconda/lib/python2.7/site-packages/pyarrow/hdfs.py", строка 183, в файле connect extra_conf=extra_conf) Файл "/opt/cloudera/parcels/Anaconda/lib/python2.7/site-packages/pyarrow/hdfs.py", строка 37, в init self._connect(хост, порт, пользователь, kerb_ticket, драйвер, extra_conf) Файл "pyarrow/io-hdfs.pxi", строка 89, в pyarrow.lib.HadoopFileSystem._connect Файл "pyarrow/error.pxi", строка 83, в pyarrow.lib.check_status pyarrow.lib.ArrowIOError: Невозможно выполнить для загрузить libhdfs
0 ответов
Возможно, вам придется вручную найти этот файл и указать его с помощью ARROW_LIBHDFS_DIR
переменная окружающей среды.
Найдите файл, используя locate -l 1 libhdfs.so
. В моем случае файл находится в/opt/mapr/hadoop/hadoop-0.20.2/c++/Linux-amd64-64/lib
.
Затем перезапустите Python REPL с переменной среды ARROW_LIBHDFS_DIR
установить на этот путь. В моем случае моя команда выглядит так:
ARROW_LIBHDFS_DIR=/opt/mapr/hadoop/hadoop-0.20.2/c++/Linux-amd64-64/lib python
Это должно решить эту конкретную проблему.
(На основе https://gist.github.com/priancho/357022fbe63fae8b097a563e43dd885b)