各位大神好~~之前未接触过Hadoop,现在有一现成的HDFS,中有数据。要用Elasticsearch搜索Hadoop中的数据,我查了各方面的资料,得知要用ES—Hadoop。可是官网介绍资料有限,ES-hadoop的安装步骤只有三步:下载解压、添加到Hadoop、然后就可以用了。求问
1、如何添加到Hadoop??
2、我看其它文章介绍,最后运行hadoop jar eshadoop.jar H2EJob /user/data/es/job,ES-hadoop下完解压全是文件夹,里头包含.java源代码。难道是要我把它编译成.jar文件吗?
1、如何添加到Hadoop??
2、我看其它文章介绍,最后运行hadoop jar eshadoop.jar H2EJob /user/data/es/job,ES-hadoop下完解压全是文件夹,里头包含.java源代码。难道是要我把它编译成.jar文件吗?
3 个回复
medcl - 今晚打老虎。
赞同来自: weiliao
不知道你之前用过Hadoop木有?ES-Hadoop就是一个Hadoop里面的任务,使用方式和Hadoop常规执行任务的方式是一样的,这里面如果运行遇到什么问题,可能和Hadoop的配置或者环境有关系,需要看看具体异常才知道什么问题。
weiliao - 90后
赞同来自:
参考网上的实例:。[/url]
运行过程中主要碰到3个问题:
1、java版本问题。之前用java 1.8编译,在服务器上运行提示不兼容,后来改用java1.6
2、classnotFound---EsOutputFormat,主要是运行的时候没加依赖包,要加参数-libjars elasticsearch-hadoop-mr-2.3.3.jar,gson.jar,其中elasticsearch-hadoop-mr-2.3.3.jar可在官网找到
我运行时的命令hadoop jar /root/h2eJob.jar H2EJob -libjars /root/elasticsearch-hadoop-2.3.3.jar,/root/gson.jar /user/root/input/
3、 elasticsearch 400错误,主要是没把hadoop文本转化为Json格式,引入Gson解决。
Traverse
赞同来自: