问题标签 [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 投票
1 回答
241 浏览

java - 将条目插入 ElasticSearch 的最佳方法是什么?

我是 ElasticSearch 的新手,我有一个包含 180 个字段和 1200 万行的文件。我在 ElasticSearch 和 Java 程序中创建了一个索引和类型,但需要 1.5 小时。有没有其他最好的方法可以减少时间将数据加载到 ElasticSearch 中。我尝试了一个 map reduce 程序,但有时它会失败并生成重复的条目,并且比我的顺序程序花费的时间更多。

有人可以提出好的建议吗?

0 投票
1 回答
357 浏览

maven - mvn包elasticsearch-spark错误

我有一个想要使用 es-spark从 elasticsearch 读取的 maven 项目,我pom.xml是这样的:

我的依赖是根据elasticsearch-spark install

我想JAR用依赖 jar 文件打包一个可运行的文件。

在我运行 cmd的地方mvn package,它显示没有找到org.apache.sparkorg.apache.spark.api.java但是这些包在我的 Maven 依赖项中。

我的错误步骤在哪里?

0 投票
1 回答
4000 浏览

elasticsearch - 失败:SemanticException 找不到类“org.elasticsearch.hadoop.hive.ESStorageHandler”

我正在关注https://gist.github.com/costin/8025827示例,不确定为什么会出现此错误。任何回应都将受到高度赞赏。

失败:SemanticException 找不到类“org.elasticsearch.hadoop.hive.ESStorageHandler”

0 投票
1 回答
436 浏览

hadoop - 我是否必须安装 Hadoop 才能使用 Elasticsearch ES-Hadoop 连接器

我有Elasticsaerch集群并想用Apache Spark它来运行计算。ES-Hadoop 连接器包含一个Spark可以在Elasticsearch. 我必须先安装 Hadoop,还是可以elasticsearch-spark_2.10-2.2.0-rc1.jar像文档中提到的那样将 Spark 类路径放入以使其工作?

0 投票
0 回答
1984 浏览

elasticsearch - 将 Elastic-Search 绑定到 localhost 以及 IP 地址

Elastic-Search 文档中的modules-network说,它可以通过在network.bind_host中指定一组 IP 地址来绑定到多个网络地址, 我将以下内容放在我的 config/elasticsearch.yaml 中:

但它不起作用,我收到以下错误:

任何想法我做错了什么?

我所有的其他弹性搜索节点都在其他机器上愉快地运行。

我想将所有弹性搜索节点绑定到各自的IP 地址以及_localhost_,以便我可以在 EsBolts 仅馈入 localhost 的每台机器上运行一些风暴作业。

这样,我的任何 EsBolt 都不需要将提要循环到多个 Elastic-Search 节点。

0 投票
1 回答
194 浏览

apache-storm - 有没有办法在风暴中应用多个分组?

我想将“字段分组”以及“本地或随机分组”应用于我的拓扑,以便每个 spout 仅将数据发送到本地螺栓,但也使用我文档中的一个字段来决定它应该去哪些本地螺栓。

因此,如果有两个工作进程,每个进程都有 1 个 Kafka-Spout 和 2 个 elastic-search-bolts,则 local-or-shuffle 分组会给我以下信息:

fields-grouping 给了我以下信息:

但我想要以下内容:

在哪里:

KS = Kafka-Spout

ES = 弹性搜索

我想这样做,以便我可以在 ES-bolt 中将单个分片的所有文档分组在一起。这样,ES-bolt 发送的批次不会被 ES-server 进一步拆分,因为所有这些文档的目标分片都是相同的(我计划将字段destination_shard添加到文档以进行字段级分组,并且将计算destination_shard作为Murmurm3.hash(ID)%numShards )。

然后我不想要任何进程间通信,因此需要“本地或随机分组”

谢谢您的帮助 !

0 投票
2 回答
1029 浏览

hadoop - 从存储在 HDFS 中的文档中提取数据到 Elasticsearch 中的索引

我有一个 HDFS 存档来存储各种文档,例如pdf、ms word 文件、ppt、csv等。我想构建一个使用 elasticsearch 来搜索文件或文本内容的平台。我知道我可以使用es-hadoop插件将数据从 HDFS 索引到 ES。我想知道从存储在 HDFS 中的文档中提取文本数据并对其进行索引的最佳方法。

任何帮助,将不胜感激。

0 投票
1 回答
788 浏览

hadoop - 使用 es-hadoop 写入 elasticsearch 时出现问题

当我尝试使用带有 es-hadoop 的 mapreduce 程序写入 Elasticsearch 时,我遇到了这个异常。我正在尝试写入我的 Elasticsearch 集群中已经存在的index=employee 和 type=basic 。

我的堆栈跟踪:-

线程“主”org.elasticsearch.hadoop.EsHadoopIllegalArgumentException 中的异常:在 org.elasticsearch.hadoop.util.Assert.hasText(Assert.java:30) 处未指定资源 ['es.resource'](索引/查询/位置)在 org.elasticsearch.hadoop.mr.EsOutputFormat.init(EsOutputFormat.java:257) 在 org.elasticsearch.hadoop.mr.EsOutputFormat.checkOutputSpecs(EsOutputFormat.java:233) 在 org.apache.hadoop.mapreduce.JobSubmitter.checkSpecs (JobSubmitter.java:266) 在 org.apache.hadoop.mapreduce.JobSubmitter.submitJobInternal(JobSubmitter.java:139) 在 org.apache.hadoop.mapreduce.Job$10.run(Job.java:1290) 在 org.apache .hadoop.mapreduce.Job$10.run(Job.java:1287) 在 java.security.AccessController.doPrivileged(Native Method) 在 javax.security.auth.Subject.doAs(Subject.java:422) 在 org.apache。 Hadoop。security.UserGroupInformation.doAs(UserGroupInformation.java:1657) at org.apache.hadoop.mapreduce.Job.submit(Job.java:1287) at org.apache.hadoop.mapreduce.Job.waitForCompletion(Job.java:1308)在 com.mstack.mapreduce.DIGDriver.main(DIGDriver.java:22) 在 sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 在 sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 在 sun.reflect.DelegatingMethodAccessorImpl .invoke(DelegatingMethodAccessorImpl.java:43) 在 org.apache.hadoop.util.RunJar.run(RunJar.java:221) 在 org.apache.java.lang.reflect.Method.invoke(Method.java:497)。 hadoop.util.RunJar.main(RunJar.java:136)waitForCompletion(Job.java:1308) 在 com.mstack.mapreduce.DIGDriver.main(DIGDriver.java:22) 在 sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 在 sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java: 62) 在 sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 在 java.lang.reflect.Method.invoke(Method.java:497) 在 org.apache.hadoop.util.RunJar.run(RunJar.java :221) 在 org.apache.hadoop.util.RunJar.main(RunJar.java:136)waitForCompletion(Job.java:1308) 在 com.mstack.mapreduce.DIGDriver.main(DIGDriver.java:22) 在 sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 在 sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java: 62) 在 sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 在 java.lang.reflect.Method.invoke(Method.java:497) 在 org.apache.hadoop.util.RunJar.run(RunJar.java :221) 在 org.apache.hadoop.util.RunJar.main(RunJar.java:136)43) 在 org.apache.hadoop.util.RunJar.run(RunJar.java:221) 在 org.apache.hadoop.util.RunJar.main 的 java.lang.reflect.Method.invoke(Method.java:497) (RunJar.java:136)43) 在 org.apache.hadoop.util.RunJar.run(RunJar.java:221) 在 org.apache.hadoop.util.RunJar.main 的 java.lang.reflect.Method.invoke(Method.java:497) (RunJar.java:136)

驱动程序类:-

0 投票
2 回答
1210 浏览

elasticsearch - 使用 elasticsearch-hadoop 库从storm索引元组到elasticsearch不起作用

我想将 Storm 中的文档索引到 Elasticsearch 中,但我无法将任何文档索引到 Elasticsearch 中。

在我的拓扑中,我有一个 KafkaSpout,它向一个 EsBolt 发出这样的 json {“tweetId”:1,“text”:“hello”},它是来自 elasticsearch-hadoop 库的本机 bolt,它将 Storm 元组写入 Elasticsearch(doc在这里:https ://www.elastic.co/guide/en/elasticsearch/hadoop/current/storm.html )。这些是我的 EsBolt 的配置:

前两个配置默认具有这些值,但我选择显式设置它们。我也试过没有它们,得到相同的结果。

这就是我构建拓扑的方式:

在本地运行拓扑之前,我在 Elasticsearch 中创建了“twitter”索引,并为该索引创建了映射“tweet”。如果我检索我新创建的类型的映射(curl -XGET ' http://localhost:9200/twitter/_mapping/tweet '),这就是我得到的:

我在本地运行拓扑,这是我在处理元组时在控制台中得到的:

所以元组似乎被处理了。但是我没有在 Elasticsearch 中索引任何文档。

我想我在为 EsBolt 设置配置时做错了什么,可能缺少配置或其他东西。

0 投票
0 回答
331 浏览

elasticsearch - 截断弹性搜索配置单元表

我正在使用 Elasticsearch Hive 集成,这样我就可以从 Hadoop 表中查询,在数据错误时发送警报(使用 ElastAlert),以及在 Kibana 上显示。

这就是我创建弹性表的方式:

我插入到 Elastic Hive 表中:

但是,它并不是真正OVERWRITE的 elastic_table,它实际上是附加到 elastic_table 的。所以我试图截断 elastic_table,它给了我以下错误:

所以我问是否有人知道如何截断、更新或覆盖 Elastic Hive 表。或者有没有更好的方法来处理这类问题。谢谢!