Elasticsearch搜索中间件的Docker环境下安装和基本使用操作(增删改查、条件搜索、全文搜索、短语搜索、高亮搜索)

一、前言检索功能是应用中非常常见的功能 而开源的Elasticsearch是全文搜索引擎的首选Elasticsearch是一个底层基于Lucene的分布式搜索服务 Lucene是开源软件工具包 并不能直接使用而Elasticsearch相当于是对其的封装 且提供了Restful风格的API 采用多shard(分片)的方式保证数据安全 还提供了自动resharding的功能github等大型...
摘要由CSDN通过智能技术生成

一、前言

检索功能是应用中非常常见的功能 而开源的Elasticsearch是全文搜索引擎的首选

Elasticsearch是一个底层基于Lucene的分布式搜索服务 Lucene是开源软件工具包 并不能直接使用
而Elasticsearch相当于是对其的封装 且提供了Restful风格的API 采用多shard(分片)的方式保证数据安全 还提供了自动resharding的功能
github等大型的站点也采用了Elasticsearch作为其搜索服务引擎

Elasticsearch可以快速存储 搜索和分析海量数据

二、安装

用Docker的方式安装
首先 要下载Elasticsearch的镜像

# 从阿里云的仓库拉取镜像
docker pull registry.cn-hangzhou.aliyuncs.com/elasticsearch/elasticsearch:6.7.0

然后是启动容器
Elasticsearch默认使用9200端口进行web通信 分布式情况下Elasticsearch各个节点之间通信使用9300端口

# 启动容器
docker run -d -p 9200:9200 -p 9300:9300 --name ES01 02982be5777d

然后可在浏览器访问ip:9200
若出现如下数据 则启动成功:
在这里插入图片描述
若出现9200端口无法访问的情况
请参看鄙人另一篇博客:完美解决虚拟机安装Elasticsearch报错:[1]: max virtual memory areas vm.max_map_count [65530] is too low, increase

三、使用

Elasticsearch是【面向文档】
这就意味着 它存储的是
整个对象或文档

Elasticsearch不仅是存储文档 而且会索引每个文档的内容 使之可以被检索
在Elasticsearch中 可对文档进行索引 检索 排序和过滤——​而不是仅仅对行列数据
这是一种完全不同的思考数据的方式 也是Elasticsearch能支持复杂全文检索的原因

Elasticsearch使用JSON(JavaScript Object Notation)作为文档的序列化格式
JSON 序列化为大多数编程语言所支持 并且已经成为NoSQL领域的标准格式 它简单 简洁 易于阅读 有轻量级和跨平台的优势

基本概念:

存储数据到Elasticsearch的行为叫做【索引】 但在索引一个文档之前 需要先确定将文档存储在哪里
(这里的索引是动词
索引一个文档 就是存储一个文档到一个 索引中以便被检索和查询
类似于SQL语句中的INSERT关键词)

一个Elasticsearch集群可以包含多个[索引] 相应的每个索引可以包含多个[类型]
这些不同的类型存储着多个[文档] 每个文档又有多个[属性]

(这里的索引是名词 类似于传统关系型数据库中的一个数据库 是一个存储关系型文档的地方)
在这里插入图片描述
若用MySQL作比较 就是:

  • Elasticsearch的的索引相当于MySQL的数据库
  • Elasticsearch的类型相当于MySQL的
  • Elasticsearch的文档相当于MySQL的记录
  • Elasticsearch的属性相当于MySQL的字段
注:在Elasticsearch6.0及以上的版本不允许一个索引下面有多个类型

1、增删改查

①、添加

要实现添加其实很简单
只需要发送一个PUT请求即可往指定索引的指定类型里存入一个文档

语法:

PUT请求 ----> ip:端口/索引名称/类型名称/编号

内容:

{
   
	要添加的JSON数据
}

例:

PUT请求 ----> ip:端口/zjitc/student/1
{
   
    "id" : "1",
    "name" :  "陈涛"
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值