一、Elastic Stack 核心Elasticsearch

Elasticsearch 是一个分布式、RESTful 风格的搜索和数据分析引擎。Elasticsearch 是面向文档的,这就意味着它可以像MongoDB一样存储整个对象或者文档。然而它不仅仅是存储,还会索引每个文档的内容,使值可以被索引。我们也可以对文档进行索引,搜索,排序,过滤。

在Elasticsearch中存储数据的行为就叫做索引(indexing)。文档属于一种类型(type),而这些类型存储在索引(index)中。

Elasticsearch常用术语

  • Document 文档数据
  • Index 索引
  • Type 索引中的数据类型
  • Field 字段,文档属性
  • Query DSL 查询语法

对比MySQL、MongoDB、Elasticsearch中的相关概念。

二、本地启动Elasticsearch集群

bin\elasticsearch

启动信息如下所示。

bin\elasticsearch -Ehttp.port= -Epath.data=node2
bin\elasticsearch -Ehttp.port= -Epath.data=node3

启动完成之后,分别访问:

http://localhost:9200/
http://localhost:8200/
http://localhost:7200/

查看集群

http://localhost:9200/_cat/nodes

显示集群中有3个节点。

http://localhost:9200/_cat/nodes?v

显示标题信息,其中 * 表示为主节点。

http://localhost:9200/_cluster/stats

显示集群详细信息。

三、Elasticsearch中CRUD实际操作

启动Kibana,访问http://localhost:5601,点击Dev Tools 菜单项。

CRUD 基本操作:

  • Create 创建 PUT /index/type/id(data)
  • Read 读取 GET /index/type/id
  • Update 更新 POST /index/type/id/_update(doc)
  • Delete 删除 DELETE /index/type/id

(1)输入POST 脚本,点击执行按钮,查看输出结果。

(2)查询操作 GET

GET /accounts/person/1 获取查询结果

(3)更新操作 POST

POST /accounts/person/1/_update

{

"doc":{

"lastname":"li"

}

}

再次执行查询操作GET,发现结果已经更新成功。

(4)删除操作DELETE

DELETE /accounts/person/1

四、Elasticsearch 7.*的更新

在前面的操作过程中,会看看到 Deprecation 提示信息,意思是type已经移除了。

从Elasticsearch 6.0开始,官方便不建议一个索引中创建多个类型;在Elasticsearch 7.0中,更是移除了类型(Type)这个概念。

在 Elasticsearch 7.* 中,由于类型(Type)的移除,我们可以理解为,一个索引(index)就是一张 table。

创建一条新的文档,注意:_doc【Type名称,约定都用_doc】,此时就没有Deprecation 提示信息了。

POST /accounts/_doc/3

{

"name": "Tom",

"lastname": "Ma",

"job_desc": "码农"

}

其他操作类似,将之前的type:person 更新为 _doc即可。

五、Elasticsearch 查询

简单介绍2中查询方式,分别为 query string 和query DSL。

(1)Query String

GET /accounts/_search?q=Senior

(2)Query DSL

GET /accounts/_search

{

"query" :{

"match": {

"name": "jacky"

}

}

}

Elasticsearch 术语介绍和CRUD实际操作入门的更多相关文章

  1. 【转载】salesforce 零基础开发入门学习(三)sObject简单介绍以及简单DML操作(SOQL)

    salesforce 零基础开发入门学习(三)sObject简单介绍以及简单DML操作(SOQL)   salesforce中对于数据库操作和JAVA等语言对于数据库操作是有一定区别的.salesfo ...

  2. 全文搜索引擎Elasticsearch详细介绍

    我们生活中的数据总体分为两种:结构化数据 和 非结构化数据. 结构化数据:也称作行数据,是由二维表结构来逻辑表达和实现的数据,严格地遵循数据格式与长度规范,主要通过关系型数据库进行存储和管理.指具有固 ...

  3. 一篇文章带你搞定 ElasticSearch 术语

    这篇文章主要介绍 ElasticSearch 的基本概念,学习文档.索引.集群.节点.分片等概念,同时会将 ElasticSearch 和关系型数据库做简单的类比,还会简单介绍 REST API 的使 ...

  4. 基于MVC4+EasyUI的Web开发框架形成之旅--基类控制器CRUD的操作

    在上一篇随笔中,我对Web开发框架的总体界面进行了介绍,其中并提到了我的<Web开发框架>的控制器的设计关系,Web开发框架沿用了我的<Winform开发框架>的很多架构设计思 ...

  5. ShoneSharp语言(S#)的设计和使用介绍系列(4)— 入门概述

    ShoneSharp语言(S#)的设计和使用介绍 系列(4)- 入门概述 作者:Shone 声明:原创文章欢迎转载,但请注明出处,https://www.cnblogs.com/ShoneSharp. ...

  6. C语言与数据库操作入门

    https://blog.csdn.net/flyingqd/article/details/78763652 C语言与数据库操作入门(Win版) 2017年12月10日 17:30:17 阅读数:1 ...

  7. C语言与数据库操作入门(Win版)

    C语言与数据库操作入门(Win版) 2017年12月10日 17:30:17 阅读数:1387 数据库,DataBase,学C语言的是不是想说,很想爱她却并不容易呢?不用着急,C语言也可以操作数据库的 ...

  8. Storm实时计算:流操作入门编程实践

    转自:http://shiyanjun.cn/archives/977.html Storm实时计算:流操作入门编程实践   Storm是一个分布式是实时计算系统,它设计了一种对流和计算的抽象,概念比 ...

  9. Elasticsearch本地环境安装和常用操作

    本篇文章首发于我的头条号Elasticsearch本地环境安装和常用操作,欢迎关注我的头条号和微信公众号"大数据技术和人工智能"(微信搜索bigdata_ai_tech)获取更多干 ...

随机推荐

  1. k8s记录-helm部署(九)

    helm 组件配置在 192.168.0.1 192.168.0.2 192.168.0.3 app 用户下操作tar xvf helm-v2.14.3-linux-amd64.tar.gzsudo ...

  2. [LeetCode] 240. Search a 2D Matrix II 搜索一个二维矩阵 II

    Write an efficient algorithm that searches for a value in an m x n matrix. This matrix has the follo ...

  3. Jenkins - 构建项目

    1 - 登录 进入起始界面 2 - 创建并运行第一个Jenkins项目 新建Item:创建新项目 --->Freestyle project:通用的项目创建方法 --->在新建项目页面(添 ...

  4. Jenkins - 以Docker方式安装启动Jenkins

    1 - 官网信息 操作步骤:https://jenkins.io/zh/doc/book/installing/#docker Docker映像地址:https://hub.docker.com/r/ ...

  5. VS2010 C#添加水晶报表及设计

    添加并设计水晶报表. [1]在VS中添加水晶报表 右击项目-->添加-->组件-->Crystal Report,输入文件名称“CrystallistReport”,如下图所示: 此 ...

  6. Asp.net SignalR 让实时通讯变得如此简单

    巡更项目中,需要发送实时消息,以及需要任务开始提醒,于是便有机会接触到SignalR,在使用过程中,发现用SignalR实现通信非常简单,下面我思明将从三个方面分享一下: 一.SignalR是什么 A ...

  7. python基础(三)-- 文件操作

    一. 文件操作: 对文件操作流程 1.打开文件,得到文件句柄并赋值给一个变量 2.通过句柄对文件进行操作 3.关闭文件 现有文件如下 : Somehow, it seems the love I kn ...

  8. 【剑指offer】面试题 21. 调整数组顺序使奇数位于偶数前面

    面试题 21. 调整数组顺序使奇数位于偶数前面

  9. tcpdump网络调试

    简介 用简单的话来定义tcpdump,就是:dump the traffic on a network,根据使用者的定义对网络上的数据包进行截获的包分析工具. tcpdump可以将网络中传送的数据包的 ...

  10. UOJ269 清华集训2016 如何优雅地求和 下降幂多项式、NTT

    代码 神仙题? 看到连续的点值,那么一定是要利用到连续点值的性质,可以考虑下降幂多项式,即考虑多项式\(F(x) = \sum\limits_{i=0}^m a_ix^{\underline i}\) ...