ELASTICSEARCH CRUD .NET PROVIDER

翻译自(原文地址: https://damienbod.com/2014/09/22/elasticsearch-crud-net-provider/

本文介绍了ElasticsearchCRUD NuGet包的使用。ElasticsearchCRUD便于你通过对实体的插入、删除、修改从Elasticsearch中查找单个记录来实现CURD功能。这个包只包括基本搜索或查询可能性。

代码: https://github.com/damienbod/ElasticsearchCRUD  (我fork的地址 https://github.com/wtujvk/ElasticsearchCRUD)
NuGet Package: https://www.nuget.org/packages/ElasticsearchCRUD/
问题: https://github.com/damienbod/ElasticsearchCRUD/issues

教程:

  1.  ElasticsearchCRUD 介绍
  2. 使用自动完成、jQuery和JTALE的简单文档搜索MVC应用程序
  3. 具有嵌套文档的MVC搜索的CRUD
  4. 利用实体框架从MS SQL Server获取数据传输到Elasticsearch
  5. 带有子文档的MVC的搜索
  6. 基于实体框架和搜索的MVC应用
  7. 实时重建Elasticsearch的索引
  8. 基于搜索和Web API导出CSV
  9. 父、子、孙子记录和路由的检索
  10. Elasticsearch的类型映射到ElasticsearchCRUD
  11. 使用搜索语句的搜索同义词分析器
  12. 使用德国分析器搜索
  13. 基于谷歌的MVC地图搜索
  14. 查询和过滤的搜索功能
  15. Elasticsearch批量插入
  16. Elasticsearch聚合搜索
  17. 多个Index和Type的搜索
  18. 搜索高亮
  19. 索引权重

 

举例:

简单自动完成搜索 (我fork的 https://github.com/wtujvk/WebSearchWithElasticsearch

本示例演示如何使用具有jQuery自动完成和Elasticsearch简单文档的MVC应用程序进行简单搜索。

使用ElasticsearchCRUD查询嵌套文档  (我的fork: https://github.com/wtujvk/WebSearchWithElasticsearchNestedDocuments

这个例子使用了搜索嵌套文档。文档可以被创建、删除、更新或搜索。自动完成搜索搜索文档以及嵌套对象。

MVC应用程序中的搜索父子文档 (我的fork: https://github.com/wtujvk/WebSearchWithElasticsearchChildDocuments)
这个例子使用了弹性搜索子/父文档。所有文档都保存在同一索引中,每个索引都有不同的类型。子文档和父文档保存在同一碎片上。可以使用所有子文档进行CRUD操作或搜索子/父文档。

通过从MS SQLServer 2014通过EF传输到Elasticsearch

这个例子展示了如何在弹性搜索中将实体传递给文档。这些实体被保存到Elasticsearch。

基于实体框架和弹性搜索的MVC应用

此示例演示如何使用实体框架作为主数据库,以及如何在MVC应用程序中使用Elasticsearch进行搜索。当实体框架更改、删除或更新实体时,应用程序需要在搜索引擎中创建、更新、删除文档。

重建索引
此示例演示如何在搜索中执行实况重索引。没有停工时间。使用别名访问旧索引。新索引是使用扫描和滚动和文档映射器从旧索引创建的。然后将别名切换为访问新索引。然后,如果需要,可以删除旧索引。

从Elasticsearch(扫描和滚动)通过Web API导出 CSV
这个例子展示了如何从Elasticsearch(X搜索扫描和滚动)导出数据到Web API作为CSV文件(使用WebApPixTrim.Faltuut.Xlsx)。使用Simulalr实时显示导出。该示例还提供了用于弹性检索的SignalR TraceProvider。

ConsoleElasticsearchCrudExample
一个 基本的CRUD示例。

ElasticsearchCRUD.Integration.Test
集成测试显示了大量的弹性搜索实例。

Damienbod.AnimalProvider
示例显示映射配置。

为什么使用 ElasticsearchCRUD?

我需要一个简单的方法来添加、更新或删除我的应用程序实体到弹出式搜索文档中。单个上下文可以与许多实体类型一起工作,并且可以根据需要非常容易地进行调整,例如对所有属性进行小写,或者可以定义任何特定的映射。ElasticLINQ目前不提供CRUD操作,尽管您可以使用NEST满足几乎任何要求(我也认为它是一个很好的API),但是我发现它太复杂了,不能使用。

posted on 2018-10-10 00:14  余昭(Ray)  阅读(451)  评论(0编辑  收藏  举报