Elasticsearch【安装ES服务、安装kibana、Docker安装 、索引操作、文档操作】(二)-全面详解(学习总结---从入门到深化)

 

目录

Elasticsearch安装_安装ES服务

Elasticsearch安装_安装kibana

Elasticsearch安装_Docker安装 

Elasticsearch常用操作_索引操作

Elasticsearch常用操作_文档操作


 

Elasticsearch安装_安装ES服务

准备工作 

1、 准备一台搭载有CentOS7系统的虚拟机,使用XShell连接虚拟机

2、 关闭防火墙,方便访问ES

#关闭防火墙:
systemctl stop firewalld.service#禁止防火墙自启动:
systemctl disable firewalld.service

3、 配置最大可创建文件数大小

#打开系统文件:
vim /etc/sysctl.conf#添加以下配置:
vm.max_map_count=655360#配置生效:
sysctl -p

4、由于ES不能以root用户运行,我们需要创建一个非root用户,此处创建一个名为es的用户:

#创建用户:
useradd es

 安装服务

1、 使用rz命令将linux版的ES上传至虚拟机

2、 解压ES

#解压:
tar -zxvf elasticsearch-7.17.0-linuxx86_64.tar.gz#重命名:
mv elasticsearch-7.17.0 elasticsearch1#移动文件夹:
mv elasticsearch1 /usr/local/#es用户取得该文件夹权限:
chown -R es:es /usr/local/elasticsearch1

3、启动ES服务:

#切换为es用户:
su es#进入ES安装文件夹:
cd /usr/local/elasticsearch1/bin/#启动ES服务:
./elasticsearch#查询ES服务是否启动成功
curl 127.0.0.1:9200

实时学习反馈

1. 在Linux系统中,elasticsearch必须以用户运行

A root

B 非root

C 任意

D 以上说法都不对

Elasticsearch安装_安装kibana

Kibana是一款开源的数据分析和可视化平台,设计用于和 Elasticsearch协作。我们可以使用Kibana对Elasticsearch索引中的数据进行搜索、查看、交互操作。 

 1、 使用rz工具将Kibana压缩文件上传到Linux虚拟机

2、 解压

tar -zxvf kibana-7.17.0-linux-x86_64.tar.gz  -C /usr/local

3、修改配置

# 进入Kibana解压路径
cd /usr/local/kibana-7.17.0-linux-x86_64/config# 修改配置文件
vim kibana.yml# 加入以下内容
# kibana主机IP
server.host: "虚拟机IP"# Elasticsearch路径
elasticsearch.hosts: ["http://127.0.0.1:9200"]

4、启动:

kibana不能以root用户运行,我们给es用户设置kibana目录的 权限,并使用es用户运行kibana

# 给es用户设置kibana目录权限
chown -R es:es /usr/local/kibana-7.17.0-linux-x86_64/# 切换为es用户
su es# 启动kibana
cd /usr/local/kibana-7.17.0-linux-x86_64/bin/
./kibana

 5、访问kibana:http://虚拟机IP:5601

6、 点击 Management => Index Management 可以查看es索引信息。

实时学习反馈

1. 关于Kibana,说法错误的是

A 是一款开源的数据分析和可视化平台

B 用于和Elasticsearch协作

C 用于和solr协作

D 可以对Elasticsearch索引中的数据进行搜索 

Elasticsearch安装_Docker安装 

安装Elasticsearch 

1、在Centos7中安装docker

# 安装Docker
curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun# 启动docker
systemctl start docker

2、 拉取镜像

docker pull elasticsearch:7.17.0

3、启动容器

# docker容器间建立通信
docker network create elastic# 创建es容器
docker run --restart=always -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" -e ES_JAVA_OPTS="-Xms512m -Xmx512m" --name='elasticsearch' --net elastic --cpuset-cpus="1" -m 1G -delasticsearch:7.17.0

安装Kibana

1、拉取镜像

docker pull kibana:7.17.0

2、启动容器

docker run --name kibana --net elastic --link elasticsearch:elasticsearch -p 5601:5601 -d kibana:7.17.0

3、访问kibana:http://虚拟机IP:5601

Elasticsearch常用操作_索引操作

Elasticsearch是使用RESTful风格的http请求访问操作的,请求参数 和返回值都是Json格式的,我们可以使用kibana发送http请求操作 ES。 

创建没有结构的索引 

路径:ip地址:端口号/索引名

注:在kibana中所有的请求都会省略 ip地址:端口号 ,之后的路径我们省略写 ip地址:端口号

请求方式:PUT

为索引添加结构

POST /索引名/_mapping
{"properties":{"域名1":{"type":域的类型,"store":是否存储,"index":是否创建索引,"analyzer":分词器},"域名2":{...}}
}

实时学习反馈

1. Elasticsearch是使用访问操作的

A 普通风格的http请求

B 普通风格的ssh请求

C RESTful风格的http请求

D RESTful风格的ssh请求

2. Elasticsearch请求参数和返回值的数据格式为

A xml

B yaml

C html

D json

创建有结构的索引

PUT /索引名
{"mappings":{"properties":{"域名1":{"type":域的类型,"store":是否单独存储,"index":是否创建索引,"analyzer":分词器},"域名2":{...}}}
}

 删除索引

DELETE /索引名

Elasticsearch常用操作_文档操作

新增/修改文档 

POST /索引/_doc/[id值]
{"field名":field值
}

注:id值不写时自动生成文档id,id和已有id重复时修改文档

根据id查询文档 

GET /索引/_doc/id值

删除文档

DELETE /索引/_doc/id值

实时学习反馈

1. 在Elasticsearch中,删除文档的请求方式为

A POST

B PUT

C GET

D DELETE

2. 在Elasticsearch中,查询文档的请求方式为

A POST

B PUT

C GET

D DELETE

 

根据id批量查询文档

GET /索引/_mget
{"docs":[{"_id":id值},{"_id":id值}]
}

查询所有文档

GET /索引/_search
{"query": {"match_all": {}}
}

修改文档部分字段

POST /索引/_doc/id值/_update
{"doc":{域名:值}
}

注:

Elasticsearch执行删除操作时,ES先标记文档为deleted状态, 而不是直接物理删除。当ES存储空间不足或工作空闲时,才会执行物理删除操作。 Elasticsearch执行修改操作时,ES不会真的修改Document中的数据,而是标记ES中原有的文档为deleted状态,再创建一个 新的文档来存储数据。

实时学习反馈

1. 在Elasticsearch中,删除文档的原理为

A 直接物理删除

B 先标记为deleted状态,之后再执行物理删除

C 只标记为deleted状态,不进行物理删除

D 以上说法都不正确

2. 在Elasticsearch中,根据id批量查询文档的请求路径为

A /索引/_mget

B /索引/_get

C /索引/_search

D /索引/_doc/id值 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/17627.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Kafka入门,漏消费和重复消费, 消费者事务,数据积压(二十四)

漏消费和重复消费 重复消费:已经消费了数据,但是offset没提交。 漏消费:先提交offset后消费,有可能会造成数据得漏消费 消费者事务 如果向完成consumer端得进准一次性消费,那么需要Kafka消费端将消费过程和提交offs…

Bootloader Design of PIC18 series MCU - 进阶篇

1.遭遇到问题 在:PIC18 Bootloader 设计基础 一文中,我们讨论了Bootloader与上层应用APP各自编译的方法。在ROM上的空间分配、以及跳转、中断的处理等内容。那篇文章包含了所有与PIC单片机Bootloader设计相关的技术问题。但是距离一个真正可用的Bootloa…

【C语言】多组输入

C系列文章目录 目录 C系列文章目录 一、什么是多组输入? 二、如何使用多组输入 2.1,试题举例讲解 2.2,错误解法 2.3,我们实现多组输入的思路 2.4,第一种正确的解法 2.5,第二种正确的解法 2.6&…

结合具体场景举例说明chatgpt预训练模型中Tokenization的原理

假设我们有一个场景,Alice想向Chatbot询问一部电影的推荐。她发送了一条消息:“你好,能给我推荐一部好看的电影吗?” 在这个场景中,Chatbot使用了ChatGPT预训练模型。首先,Chatbot需要对Alice的消息进行Tok…

视频无损放大修复工具:Topaz Video AI对Mac和Windows的系统要求

Topaz Video AI是一款基于人工智能技术的视频增强软件,旨在提供高质量的视频修复、增强和转换功能。它可以通过智能算法和图像处理技术,改善视频的清晰度、稳定性、降噪效果,还能进行视频转码和格式转换。 Mac:Topaz Video AI fo…

性能监控平台 | Prometheus+InfluxDB + Grafana!

在本文中,我将把几个常用的监控部分给梳理一下。前面我们提到过,在性能监控图谱中,有操作系统、应用服务器、中间件、队列、缓存、数据库、网络、前端、负载均衡、Web 服务器、存储、代码等很多需要监控的点。显然这些监控点不能在一个专栏中…

LabVIEW开发图像采集和图像处理程序

LabVIEW开发图像采集和图像处理程序 扫描电子显微镜(SEM)是一种功能强大的工具,广泛用于高分辨率的生物和半导体样品检测。然而,对于大面积或3D成像,SEM成像是一个耗时的过程。MBSEM旨在通过同时扫描多个像素来减少采…

怎么用JMeter操作MySQL数据库?看完秒懂!

近期用JMeter做接口测试,遇到了一个需要用到数据数据库的场景:一个关于数据报告的页面,需要将数据库里面的数据求和或者取均值之后,展示出来,如果要断言的话,需要连接数据库,通过写sql语句&…

OpenCV读取一张8位无符号单通道图像并显示

#include <iostream> #include <opencv2/imgcodecs.hpp> #include <opencv2/opencv.hpp> #include

Spring—事务及事务的传播机制

Spring—事务及事务的传播机制 &#x1f50e;事务的定义&#x1f50e;Spring—事务的实现铺垫Spring 编程式事务Spring 声明式事务Transactional 的参数注意事项Transactional 的工作原理 &#x1f50e;Spring—事务的隔离级别MySQL—事务的隔离级别Spring—事务的隔离级别Spri…

Prometheus学习

Prometheus学习 promethueus exporter就是以 后台进程的方式运行在系统当中&#xff0c;不断去采集数据 1、红框框中是 prometheus基于数学算法输入的一个查询输入框 2.监控项的分类 3.数据采集的形式分类&#xff08;promethueus exporter就是以 后台进程的方式运行在系统当…

前端vue入门(纯代码)27_路由的query参数

安静地努力&#xff01;&#xff01;&#xff01; 【25.Vue Router--路由的query参数】 多级路由在src/router/index.js中【三级路由】的配置如下&#xff1a; // 该文件专门用于创建整个应用的路由器 import VueRouter from "vue-router"; //引入组件 import Abo…