[英]Elasticsearch NEST Indeces and Indexing
我的以下问题是,我有一个项目列表,并希望使用 elasticsearch 索引这些项目。 我有一个正在运行的 elasticsearch 实例,这个实例有一个名为“ default ”的索引。
所以我正在运行以下代码:
var items = GetAListOfItem();
var response = Client.IndexMany(items);
我也用Client.IndexManyAsync(items)
尝试过。 但这没有任何作用。
此列表中只有 1 个项目被编入索引。 而已。 我认为它是最后一个项目,它被编入索引。
我认为这可能与IEnumerable
和多个枚举有关,但我将其解析为List<Item>
。
另一个问题是关于 Elasticsearch 的最佳实践。 每个模型使用索引是否常见。 因此,如果我从例如 Exchange 和另一个系统收集数据,我会做 2 个 indeces 吗?
感谢您的帮助。
更新:我看到我的 Client.Index 成功执行了所有这些调用,但是所有这些对象都从 NEST 获得了相同的 ID。 通常她必须自己增加,不是吗?
更新 2:我修复了索引问题。 我设置了一个空的 ID 字段。
但仍然有关于 Elasticsearch 的最佳实践问题。
如果您上传所有具有相同 id 的数据,它不会增加 id,这将使用该 id 更新记录,您将只有一条记录,因此您可以上传没有 id 的数据,或者在任何地方提供唯一的 id识别记录。 另一个常见问题是您的记录与您为索引提供的映射不同。
关于另一个问题,在索引中,您存储与您相关的信息,即使其中包含来自许多模型的内容,您唯一需要避免的是混合信息,如果您有关于服务器日志的索引,请不要混合例如,它与用户活动。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.