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