创建索引CreateIndex
程序员文章站
2022-07-11 09:39:37
nuget引用 "NEST" new一个客户端 源码可查 "ElasticClient.cs" new一个ElasticClient有多种方式 第一种 ES地址是 ,可以直接new,如下所示 源码中显示 new ElasticClient() 第二种 由此可以推断一下,如果本地安装的使用不是9200 ......
nuget引用nest
new一个客户端
源码可查elasticclient.cs
new一个elasticclient有多种方式
第一种
es地址是http://localhost:9200
,可以直接new,如下所示
var client = new elasticclient();
源码中显示 new elasticclient()
public elasticclient() : this(new connectionsettings(new uri("http://localhost:9200"))) { }
第二种
由此可以推断一下,如果本地安装的使用不是9200端口或者远程连接es服务端,可以这么写
string uri = "http://example.com:9200"; var settings = new connectionsettings(new uri(uri)). defaultindex("people"); var client = new elasticclient(settings);
第三种
uri uri = new uri("http://example.com:9200"); var client = new elasticclient(uri);
第四种 连接池
这里只举例官方文档中推荐使用的sniffingconnectionpool
sniffingconnectionpool线程安全,开销很小,允许运行时reseeded。不明白reseeded的运行机制,留个疑问。
public static elasticclient getelasticclientbypool() { var uris = new[] { new uri("http://localhost:9200"), new uri("http://localhost:9201"), new uri("http://localhost:9202"), }; var connectionpool = new sniffingconnectionpool(uris); var settings = new connectionsettings(connectionpool) .defaultindex("people"); var client = new elasticclient(settings); return client; }
参考:
创建索引
判断索引是否存在
var existsresponse = _elasticclient.indexexists(_indexname); var indexexists = existsresponse.exists
indexexists 为true,索引存在;为false,索引不存在。
创建索引并初始化索引配置和结构
//基本配置 iindexstate indexstate = new indexstate { settings = new indexsettings { numberofreplicas = 1,//副本数 numberofshards = 6//分片数 } }; icreateindexresponse response = _elasticclient.createindex(_indexname, p => p .initializeusing(indexstate) .mappings(m => m.map<people>(r => r.automap())) ); if (response.isvalid) { console.writeline("索引创建成功"); } else { console.writeline("索引创建失败"); }
注意:索引名称必须为小写,如果含有大写字母,异常信息为"invalid index name [test], must be lowercase"
demo地址:createindex
上一篇: C#工具:WPF生成图片验证码
推荐阅读
-
Android基于OpenGL的GLSurfaceView创建一个Activity实现方法
-
Python实现类的创建与使用方法示例
-
Java 利用dom方式读取、创建xml详解及实例代码
-
转:三星安卓手机刷机包(ROM)刷机教程与ROOT教程总索引 博客分类: mobile 三星Android
-
详解用Spring Boot零配置快速创建web项目
-
Android 连接Wifi和创建Wifi热点的实例
-
详解在Spring3中使用注解(@Scheduled)创建计划任务
-
使用asp.net的pageDataSource中时索引问题解决方法
-
Python元组操作实例分析【创建、赋值、更新、删除等】
-
Java 创建线程的两个方法详解及实例