.net core 如何向elasticsearch中创建索引,插入数据。
2021-01-16 08:12
阅读:495
标签:插入数据 安装和使用 void ons 界面 集群 datetime 运行程序 document
首先我们要建一个webapi工程,然后下载两个插件:
1,Nest 2,Elasticsearch.Net
下载后,下面就上代码了,首先是elasticsearchHelp帮助类
using Elasticsearch.Net; using Nest; using System; namespace ESAPI.Common { public static class ElasticSearchHelper {
public static readonly string url = "http://ip:9200/";//这个是elasticsearch远程访问ip public static void insert(object t,string index) { //设置连接字符串,DefaultIndex中的表名要小写 var settings = new ConnectionSettings(new Uri(url)).DefaultIndex(index); var client = new ElasticClient(settings); var doc = t; //通过 IndexDocument() 方法插入数据 var ndexResponse = client.IndexDocument(doc); } ////// 单点链接到ElasticSearch /// /// ElasticSearch的ip地址 /// public static ElasticClient OneConnectES(string url) { var node = new Uri(url); var settings = new ConnectionSettings(node); var client = new ElasticClient(settings); return client; } /// /// 指定多个节点使用连接池链接到Elasticsearch集群 /// /// 链接ip数组 /// public static ElasticClient ManyConnectES(string[] serverurl) { Uri[] nodes = new Uri[serverurl.Length]; for (int i = 0; i ) { nodes[i] = new Uri(serverurl[i]); } var pool = new StaticConnectionPool(nodes); var settings = new ConnectionSettings(pool); var client = new ElasticClient(settings); return client; } /// /// 创建索引 /// /// public static CreateIndexResponse CreateIndex(this IElasticClient elasticClient, string indexName, int numberOfReplicas = 1, int numberOfShards = 5) { IIndexState indexState = new IndexState { Settings = new IndexSettings { NumberOfReplicas = numberOfReplicas, // [副本数量] NumberOfShards = numberOfShards } }; Func func = x => x.InitializeUsing(indexState).Map(m => m.AutoMap()); CreateIndexResponse response = elasticClient.Indices.Create(indexName, func); return response; } } }
控制器代码:
using System; using ESAPI.Common; using Microsoft.AspNetCore.Mvc; namespace ESAPI.Controllers { [Route("api/[controller]")] [ApiController] public class ValuesController : ControllerBase { ////// 删除地址 /// /// [HttpGet("InsertLog")] public void InsertLog() {
//插入200条数据 for (int i = 0; i 200; i++) { var d = new { Time = DateTime.Now, Num = 5, Name = "12313", info = "hello world!" }; ElasticSearchHelper.insert(d, "demo"); } } } }
运行程序:
查看elasticsearch可视化界面:
很显然,插入成功了!既然是ELK,后续我还会对logstash,Kibana的安装和使用也进行详细的介绍,下一篇,会详细介绍logstash的安装和使用!
.net core 如何向elasticsearch中创建索引,插入数据。
标签:插入数据 安装和使用 void ons 界面 集群 datetime 运行程序 document
原文地址:https://www.cnblogs.com/zpy1993-09/p/13380197.html
上一篇:MVC + EFCore 项目实战 - 数仓管理系统1
下一篇:HTML表单
文章来自:搜素材网的编程语言模块,转载请注明文章出处。
文章标题:.net core 如何向elasticsearch中创建索引,插入数据。
文章链接:http://soscw.com/index.php/essay/42625.html
文章标题:.net core 如何向elasticsearch中创建索引,插入数据。
文章链接:http://soscw.com/index.php/essay/42625.html
评论
亲,登录后才可以留言!