当前位置: 首页 > 知识库问答 >
问题:

ElasticSearch-使用Java API索引一个大文件

何志业
2023-03-14

输入将是大小约为5MB的文件类型。

我浏览了ES Java API和SpringData的示例,它们确实有插入JSON文档的教程。

但是关于使用File作为输入来创建文档/索引的任何帮助都是不可用的。

共有1个答案

关正雅
2023-03-14

1.您可以使用Elasticsearch映射器附件插件。这个插件使用Apache Tika来摄取几乎所有众所周知的文档类型,并使其可以通过ElasticSearch进行搜索。

https://www.elastic.co/guide/en/elasticsearch/plugins/2.3/mapper-attachments.html

2.您可以使用Apache Tika从文件中提取有用的内容,并使用elasticsearch批量索引api索引到ES

 类似资料:
  • 问题内容: 我有一个简单的python脚本,用于索引包含一百万行的CSV文件: 这种方法效果很好,但是当我们进入成千上万的时候,它们的速度都呈指数下降。 我猜测如果我在较小的块中进行索引,ES的性能会更好。 有更有效的方法吗?sleep()会延迟帮助吗?还是有一种简单的方法可以通过编程将csv分成较小的块? 谢谢。 问题答案: 每运行N次 这里的例子

  • 问题内容: 我在同一台Ubuntu服务器上有一个Rails 3应用程序的暂存和生产实例(使用tyre gem)。看来这两个实例都共享相同的elasticsearch索引,这显然不是我想要的。 如何使生产和登台实例使用单独的实例? 问题答案: 您需要覆盖索引名称。假设您要绑定ActiveRecord,它将根据相关模型创建索引名称。您可以使用这样的前缀来调整名称; 然后会创建一个名为的索引,以此类推。

  • 我使用的是spring-data-elasticsearch,一开始一切都很好。 是否可以在运行时使用不同的索引创建存储库? 多谢了,马塞尔

  • 问题内容: 自几个月前以来,我的集群每天都有一个索引,每个索引有5个分片(默认),并且由于分片太多(超过1000个),我无法在整个集群上运行查询。 文档ID是自动生成的。 如何将索引合并为一个索引,处理有冲突的ID(甚至可能发生冲突)并更改类型? 我正在使用ES版本5.2.1 问题答案: 仅在使用ELK堆栈几个月并逐日创建索引后才可见的常见问题。这里有一些选项可以解决性能问题。 首先,您可以用来限

  • 问题内容: 我用映射创建了一个新索引。其中存储了500 000个文档。 我想更改索引的映射,但是在elasticsearch中是不可能的。所以我用新的新映射创建了另一个索引,现在我正尝试将文档从旧索引复制到新索引。 我正在使用扫描和滚动类型从旧索引中检索文档并将其复制到新索引。复制需要花费更多时间,并且系统运行缓慢。 下面是我正在使用的代码。 问题答案: 您不必编写类似的代码。周围有一些出色的工具

  • Lucene提到- 但是我们可以通过IndexWriter.setMaxFieldLength(int)对其进行配置。 我在ElasticSearch-http://localhost:9200/twitter中创建了一个索引,并发布了一个包含40,000个术语的文档。 映射- 我用message字段索引了一个文档,有40,000个术语-message:“text1text2....text400