我是hadoop的新手,而且我已经安装了hadoop。Datanode,Namenode等都出现了,一切都很顺利。我需要单独下载libhdfs还是打包下载?我所能看到的只有Java的东西。非常感谢。
发布于 2014-07-10 19:26:46
这里有一个例子:http://hadoop.apache.org/docs/r2.4.1/hadoop-project-dist/hadoop-hdfs/LibHdfs.html (尽管其中的一些信息已经过时了,这些信息是出了名的如何创建示例)
为了编译它,您需要包含$HADOOP_HOME/include目录,并链接到$HADOOP_HOME/lib/native/libhdfs.so (如果您使用的是Linux)。此外,您还需要确保在运行示例时,CLASSPATH包含所有hadoop库。其中一个诀窍是:
for file in `hadoop classpath | tr ':' ' ' | sort | uniq`
do
export CLASSPATH=$CLASSPATH:$file
done注意事项:
0)最新的用于Hadoop的linux发行版(2.4.1)包括32位共享库,这使得64位系统抱怨。为了使此示例在64位系统上运行,您必须提供本机libhdfs.so库。例如,可以通过从源代码下载Hadoop并自己构建一个发行版(一个有用的介绍可以在这里找到:http://csrdu.org/nauman/2014/01/23/geting-started-with-hadoop-2-2-0-building/)来实现。
1)在Ubuntu上,您必须在调用libhdfs之前自己实例化JVM (通过JNI),因为libhdfs代码错误地标识了正在运行的jvm的YamVM,因此不会实例化
2)在RedHat上,如果在数据节点和名称节点重启后没有使用hdfs,我看到这个示例挂起。
https://stackoverflow.com/questions/23834824
复制相似问题