海量数据实战_Elasticsearch For .Net项目实战

本文档详细介绍了Elasticsearch作为一个基于Lucene的搜索服务器,其在海量数据存储、搜索和数据分析方面的应用。重点讲解了C#操作Elasticsearch的SDK,如Elasticsearch.NET,以及环境搭建过程,包括安装Elasticsearch、Head、Kibana和IK分词器。同时,文章还涉及基本概念、DSL的使用以及项目实战案例。
摘要由CSDN通过智能技术生成

前言

e19e832debc8a5b4c3a062d2d5900099.png

  Elasticsearch是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口。Elasticsearch是用Java语言开发的,并作为Apache许可条款下的开放源码发布,是一种流行的企业级搜索引擎。Elasticsearch用于云计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便。官方客户端在Java、.NET(C#)、PHP、Python、Apache Groovy、Ruby和许多其他语言中都是可用的。根据DB-Engines的排名显示,Elasticsearch是最受欢迎的企业搜索引擎,其次是Apache Solr,也是基于Lucene。

应用场景

  • 存储
  • 搜索
  • 数据分析

存储

  ES具备存储海量数据的能力,其搜索和数据分析的功能都建立在ElasticSearch存储的海量的数据之上;ElasticSearch很方便的作为海量数据的存储工具。

搜索

  ElasticSearch使用倒排索引,每个字段都被索引且可用于搜索,更是提供了丰富的搜索api,在海量数据下近实时实现近秒级的响应,基于Lucene的开源搜索引擎,为搜索引擎(全文检索,高亮,搜索推荐等)提供了检索的能力。 具体场景:

  • Stack Overflow,IT问题检索;
  • GitHub(开源代码管理),搜索上千亿行代码;
  • 电商类网站和APP,检索商品;
  • 日志数据分析,logstash采集日志,ElasticSearch进行复杂的数据分析(ELK技术,elasticsearch+logstash+kibana);

数据分析

  ElasticSearch也提供了大量数据分析的api和丰富的聚合能力,支持在海量数据的基础上进行数据的分析和处理。具体场景: 爬虫爬取不同电商平台的某个商品的数据,通过ElasticSearch进行数据分析(各个平台的历史价格、购买力等等);

C#操作Elasticsearch的SDK

  C#操作Elasticsearch的驱动有:

  • NEST
  • Elasticsearch.net
  • PlainElastic.Net

  本教程使用Elasticsearch官方提供的Elasticsearch.net SDK。

  《Elasticsearch For .Net项目实战》教程主要讲解Elasticsearch的环境搭建和基于Elasticsearch.netsdk在项目中应用实践。

环境搭建

  • windows 10环境配置
  • 安装Elasticsearch
  • head安装(非必需)
  • 安装kibana
  • 安装分词器 IK

基本概念

  • Index
  • Type
  • Document

DSL的基本使用

  • 增加
  • 修改
  • - 查询
  • - 删除

Elasticsearch .Net

Low level client基本使用

项目实战

源码

总结

参考

Java环境安装

  本文是基于windows 10操作系统(也适用于windows server 2012 R2)的ES环境的搭建。由于ES是java语言开发的,所以这里要安装java环境。

  jdk下载:

https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

5c5748a7214dbac33eee389cde5f6ca1.png

  安装完成之后就是配置环境变量:

4437be3424a34133717df7b5acfb69c3.png

  查看是否安装成功:

c0f88495a0a4d07801c2b9d546043e11.png

安装Elasticsearch

  Elasticsearch版本已经比较多,初学者可能比较懵。特别是在安装head和Kibana的时候,如果版本不匹配,往往会导致无法使用。这里使用的是elasticsearch-5.6.11版本。

  elasticsearch-5.6.11下载:

https://www.elastic.co/downloads/past-releases/elasticsearch-5-6-11

6b2cfdff3f0a2102ae8adc7cf9907d2b.png

解压到C:ELk 备用。

edf459c6ecc915b1599aedf4745bc27b.png

更多教程请点下方的了解更多

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值