问题标签 [elasticsearch-hadoop]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
4299 浏览

serialization - ElasticSearch 到 Spark RDD

我正在本地机器上测试 ElasticSearch 和 Spark 的集成,使用在 elasticsearch 中加载的一些测试数据。

代码运行良好并使用 esRDD.first() 成功返回正确结果

但是,esRDD.collect() 会产生异常:

我相信这与这里提到的问题有关http://www.elasticsearch.org/guide/en/elasticsearch/hadoop/current/spark.html 所以我相应地添加了这一行

我应该做其他事情来让它工作吗?谢谢


更新:序列化设置问题已解决。通过使用

代替

现在还有另一个这个数据集中有 1000 条不同的记录

返回 1000 没问题,但是

返回 5 !如果我打印记录

它正确打印出 1000 条记录。但是如果我使用 collect 或 take

它将打印 DUPLICATED 记录,并且确实只显示了 5 条 UNIQUE 记录,这似乎是整个数据集的一个随机子集——它不是前 5 条记录。如果我保存 RDD 并将其读回

esRDD2 的行为符合预期。我想知道是否存在错误,或者我不了解收集/获取的行为。还是因为我在本地运行所有内容。默认情况下,Spark RDD 似乎使用 5 个分区,如“spark-output”文件的 part-xxxx 文件的数量所示。这可能就是 esRDD.collect() 和 esRDD.distinct() 返回 5 个唯一记录而不是其他随机数的原因。但这仍然不对。

0 投票
1 回答
1192 浏览

java - 编写 Hadoop 减少对 Elasticsearch 的输出

我在理解如何将简单 Hadoop 的输出写回 Elasticsearch 时遇到了一些麻烦。

作业配置为:

减速机做:

然而,我得到了这个(对我来说)莫名其妙的异常:

在 context.write() 调用中。

我有点困惑,有什么想法吗?

0 投票
1 回答
1880 浏览

java - Hivesever2 无法从 elasticsearch-hadoop 加载 EsStorageHandler 类

我有这个配置hive-site.xml

当我在 HiveCli 中将数据映射到 Elasticsearch 时,它可以通过以下代码正常工作:

但是当我在 Hive Java 客户端(我启动了 Hiveserver2)中使用它时,它会抛出这个异常:

0 投票
1 回答
936 浏览

java - 使用 ElasticSearch-Hadoop 构建项目时构建失败

我无法构建使用ElasticSearch-Hadoop. 这是我在尝试构建项目时看到的错误:

以下是项目 POM 文件中的依赖项:-

我错过了什么吗?

0 投票
1 回答
2374 浏览

apache-spark - 您如何使用 spark 和 elasticsearch-hadoop 从/写入不同的 ElasticSearch 集群?

原标题:除了HDFS,spark还支持哪些DFS(推荐)?

我很高兴将 spark 和 elasticsearch(带有 elasticsearch-hadoop 驱动程序)与几个巨大的集群一起使用。

有时,我想将整个数据集群拉出来,处理每个文档,然后将它们全部放入不同的 Elasticsearch (ES) 集群中(是的,数据迁移也是如此)。

目前,没有办法将集群中的 ES 数据读取到 RDD 中,并使用 spark + elasticsearch-hadoop 将 RDD 写入另一个 RDD,因为这将涉及SparkContext从 RDD 交换。所以我想将 RDD 写入目标文件,然后再将它们读回具有不同SparkContexts 的 RDD。

然而,问题来了:然后我需要一个 DFS(分布式文件系统)来在我的整个 spark 集群中共享大文件。最流行的解决方案是 HDFS,但我会非常避免将 Hadoop 引入我的堆栈。spark支持的还有其他推荐的DFS吗?

下面更新

感谢@Daniel Darabos 在下面的回答,我现在可以使用以下 Scala 代码在不同的 ElasticSearch 集群中读写数据:

0 投票
1 回答
137 浏览

hadoop - Elasticsearch-Hadoop 获取非索引数据

我有一个包含大量数据的弹性搜索集群。我想将所有数据从 elasticsearch 提取到 Hadoop(Hive)中。我使用 Elasticsearch-Hadoop 驱动程序通过使用 Hive 外部表从 Elasticsearch 中提取数据,但它太慢并且总是无法完成任务。

我的第一个问题是从我现有的 elasticsearch 集群中获取所有数据。第二个问题是在一天或一小时内复制一次流入 HDFS 上的 elasticsearch 的所有数据。

我怎样才能实现这些?

提前致谢。

0 投票
0 回答
86 浏览

jackson - 将数据加载到 ElasticSearch 时 ElasticSearch Hadoop 中的 Jackson 错误

我正在尝试从HDFS使用ElasticSearch版本elasticsearch-hadoop加载数据elasticsearch-hadoop-2.1.0.Beta3.jar

Mapr 上有一个错误: https ://github.com/elastic/elasticsearch-hadoop/issues/215 应该可以解决这个jackson问题。但它仍然从1.5 版jackson的 Hadoop 目录中获取 jars 。jackson

我添加REGISTER了注册 1.8 jar 的命令:

但我仍然收到以下错误:

我对 Hive 进行了同样的尝试,也得到了同样的错误。

0 投票
2 回答
1546 浏览

join - 是否可以在 ElasticSearch 中使用 presto 或 Hive (ElasticSearch-Hadoop) 的任何 ES 连接器进行 JOIN 操作?

众所周知,索引之间的 ElasticSearch 无法进行 JOIN 操作,是否可以使用 Presto 或 Hive 来实现,即我们可以使用 Presto 或 Hive 的任何 ElasticSearch 连接器进行 JOIN 操作吗?

我们可以使用 ElasticSearch-Hadoop - https://github.com/elastic/elasticsearch-hadoop在 ElasticSearch 中进行 JOIN吗?

0 投票
1 回答
628 浏览

elasticsearch - sparkR 1.4.0:如何包含罐子

elasticsearch-hadoop-2.1.0.rc1.jar我正在尝试使用jar 文件(在此处找到)将 SparkR 1.4.0 连接到 Elasticsearch 。它需要一些黑客攻击,调用该SparkR:::callJMethod函数。我需要jobj为几个 Java 类获取一个 R 对象。对于某些课程,这有效:

但对其他人来说,它不会:

产生错误:

org.elasticsearch.*即使我尝试将它们与命令行--jars参数和函数一起包含在内, Java 似乎也没有找到这些类sparkR.init(sparkJars = ...)

任何帮助将不胜感激。此外,如果这是一个更适合实际 SparkR 问题跟踪器的问题,有人可以指点我吗?我看了看,没能找到。另外,如果有人知道另一种连接方式SparkRElasticsearch我也很乐意听到。

谢谢!本

0 投票
2 回答
3195 浏览

scala - Spark 运行时错误 - ClassDefNotFound: SparkConf

在安装和构建 Apache Spark(尽管有很多警告)之后,我们的 Spark 应用程序的编译(使用“sbt 包”)成功完成。但是,当尝试使用 spark-submit 脚本运行我们的应用程序时,会出现运行时错误,指出未找到 SparkConf 类定义。SparkConf.scala 文件存在于我们的系统上,但它似乎没有正确构建。关于如何解决这个问题的任何想法?

这是 build.sbt 文件: