我想在具有弹性搜索的实体框架上使用。如何在弹性搜索中使用实体框架
我看到这篇文章MVC APPLICATION WITH ENTITY FRAMEWORK AND ELASTICSEARCH。
但据我所知,我需要2个DB(MS SQL +弹性),他们在那里解释如何翻译数据。
ms sql我将保存数据,并在弹性搜索上完成。
因此,所有的数据将是两次,这将是存储的浪费......
是否有任何直接的方式来做到这一点?
谢谢
我想在具有弹性搜索的实体框架上使用。如何在弹性搜索中使用实体框架
我看到这篇文章MVC APPLICATION WITH ENTITY FRAMEWORK AND ELASTICSEARCH。
但据我所知,我需要2个DB(MS SQL +弹性),他们在那里解释如何翻译数据。
ms sql我将保存数据,并在弹性搜索上完成。
因此,所有的数据将是两次,这将是存储的浪费......
是否有任何直接的方式来做到这一点?
谢谢
是的你明白你需要使用两个不同的来源。 EF没有直接的方法来使用elasticsearch,你需要编写自定义逻辑来将数据库和Elasticsearch结合在一起。
如果你问为什么?答案是数据库和Elasticsearch是不同的。
首先Elastic是文档数据库,您应该在数据库中保存整个对象时,可以将项目拆分为ES中的多个表格“preferred”,以另存为一个文档(仍然在ES中,您可以使用nested objects但您不会能够加入)。
其他搜索查询在SQl和Elastic中完全不同。所以有时候只有你会决定应该使用哪个来源进行搜索。要搜索Elastic,您可以使用NEST包,但您需要学习ES查询和索引部分,因为取决于分析,您将得到不同的结果。
将你的逻辑分成两部分,存储你的ES标准和它的ID,然后使用这些ID从SQL数据库中检索。 –