elasticsearch - 多语言 Elasticsearch

标签 elasticsearch multilingual

我将在ElasticSearch中为帖子编制索引。目前有两种语言:英语和中文。因此,每个帖子都有一个(英文)或两个翻译,以及一些两种语言都通用的数据。我的问题是我应该如何索引帖子?

  • 创建两个索引:posts-enposts-cn并分别存储帖子?
  • 创建单个索引posts并将数据保留为以下格式:
    {
      commonParam1: 1,
      commonParam2: "somevalue",
      ...
      titleEn: "English title",
      titleCn: "Chinese title",
      contentEn: "Content EN",
      contentCn: "Content CN",
      ...
    }
    
  • 最佳答案

    除非您有令人信服的理由将单个文档分为两个索引,否则我强烈建议将所有文档都保留在一个索引中。

    使用一个索引,您可以轻松地针对每种特定于语言的字段使用不同的分析器。将来为新语言添加其他映射非常简单。它允许您在一次调用中为每个文档建立索引,而不是两个,对于每种语言则分别为一个索引。您减少重复的数据(例如,通用数据)。

    我还将对这篇文章做一个很好的介绍:http://gibrown.wordpress.com/2013/05/01/three-principles-for-multilingal-indexing-in-elasticsearch/

    这是对将多种语言分析和索引到Elasticsearch中的很好的讨论。

    关于elasticsearch - 多语言 Elasticsearch ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24726878/

    相关文章:

    mysql - Mnesia DB Elasticsearch

    interop - 多编程语言项目的命名约定

    elasticsearch - Elasticsearch geoip.location映射为double而不是geo_point

    rest - 预期 [START_OBJECT] 在 [filter] 下

    java - 向 AWS ElasticSearch 添加 5000 万条记录的最快方法

    compilation - 我可以将多种语言的代码与 LLVM 一起编译吗?

    android - 如何将语言从英语切换为阿拉伯语以便从右向左阅读?

    c# - 使用 NEST 使用 linq 查询 Elasticsearch

    internationalization - 多语言网站根据ip和seo换语言

    WordPress 导航菜单顺序错误 - 如何修复?