当前位置: 首页 > news >正文

关于政府补贴企业做网站的事石家庄疫情防控最新政策

关于政府补贴企业做网站的事,石家庄疫情防控最新政策,合肥网站建设合肥做网站,重庆网站建设联系电话文章目录 1 背景2 前言3 快速部署ES4 快速部署Kibana5 发送请求给ES5.1 打开Kibana控制台5.2 通过REST API发送请求5.3 通过curl发送请求5.4 添加数据5.4.1 添加单个document5.4.2 添加多个document 5.5 搜索数据5.5.1 搜索所有documents5.5.2 match查询 6 总结 1 背景 因电商项…

在这里插入图片描述

文章目录

  • 1 背景
  • 2 前言
  • 3 快速部署ES
  • 4 快速部署Kibana
  • 5 发送请求给ES
    • 5.1 打开Kibana控制台
    • 5.2 通过REST API发送请求
    • 5.3 通过curl发送请求
    • 5.4 添加数据
      • 5.4.1 添加单个document
      • 5.4.2 添加多个document
    • 5.5 搜索数据
      • 5.5.1 搜索所有documents
      • 5.5.2 `match`查询
  • 6 总结

1 背景

因电商项目发展的需要,商品数量越来越大,用户搜索的需求越来越高级(需要支持全文模糊搜索,并且性能要高),因此需要在项目中引入Elasticsearch。笔者0基础,简单看过一些关于Elasticsearch的知识点,今天通过Quick start快速切入Elasticsearch。后续会展开Elasticsearch的学习以及研究。

2 前言

  1. 笔者通过Elasticsearch的官方文档来学习,本文参考自:Quick start
  2. 建议读者先通篇阅读搭建ES的步骤,再回头仔细跟着敲命令搭建

3 快速部署ES

官方有提供试用版的ES云服务,笔者试用期已经过了,因此今天是通过Dokcer手动搭建ES(单节点集群)。

执行以下命令,创建ES容器:

docker network create elastic
docker pull docker.elastic.co/elasticsearch/elasticsearch:8.13.4
docker run --name es01 --net elastic -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" -t docker.elastic.co/elasticsearch/elasticsearch:8.13.4

启动成功后,会出现以下这段文字,含有Elasticsearch的秘密以及登录Kibana的token串,需要保存起来,后面会用到:

✅ Elasticsearch security features have been automatically configured!
✅ Authentication is enabled and cluster connections are encrypted.ℹ️  Password for the elastic user (reset with `bin/elasticsearch-reset-password -u elastic`):84fZ4PuywWr_unOcr+JHℹ️  HTTP CA certificate SHA-256 fingerprint:1ebd4a12d92c70ee71467917d89f10dad1d39aa92935b5f8671af20c38cd542fℹ️  Configure Kibana to use this cluster:
• Run Kibana and click the configuration link in the terminal when Kibana starts.
• Copy the following enrollment token and paste it into Kibana in your browser (valid for the next 30 minutes):eyJ2ZXIiOiI4LjEzLjQiLCJhZHIiOlsiMTcyLjIxLjAuMjo5MjAwIl0sImZnciI6IjFlYmQ0YTEyZDkyYzcwZWU3MTQ2NzkxN2Q4OWYxMGRhZDFkMzlhYTkyOTM1YjVmODY3MWFmMjBjMzhjZDU0MmYiLCJrZXkiOiJPV2FHMG84Qm85S1VKZVNRZkJPRTpyNlpWbl84dVE0MkE1NzN0NWw5aGZ3In0=ℹ️ Configure other nodes to join this cluster:
• Copy the following enrollment token and start new Elasticsearch nodes with `bin/elasticsearch --enrollment-token <token>` (valid for the next 30 minutes):eyJ2ZXIiOiI4LjEzLjQiLCJhZHIiOlsiMTcyLjIxLjAuMjo5MjAwIl0sImZnciI6IjFlYmQ0YTEyZDkyYzcwZWU3MTQ2NzkxN2Q4OWYxMGRhZDFkMzlhYTkyOTM1YjVmODY3MWFmMjBjMzhjZDU0MmYiLCJrZXkiOiJOMmFHMG84Qm85S1VKZVNRZkJPRDpxc0pkX1pFZ1FQcTJ3ODU5dURfOG1nIn0=If you're running in Docker, copy the enrollment token and run:`docker run -e "ENROLLMENT_TOKEN=<token>" docker.elastic.co/elasticsearch/elasticsearch:8.13.4`

为方便下面敲命令,我们在Shell客户端保存ES的秘密,执行以下命令:

export ELASTIC_PASSWORD="your_password"

将SSL证书从容器复制到本地电脑:

docker cp es01:/usr/share/elasticsearch/config/certs/http_ca.crt .

验证ES是否有启动成功:

curl --cacert http_ca.crt -u elastic:$ELASTIC_PASSWORD https://localhost:9200

4 快速部署Kibana

新开一个Shell客户端session,执行以下命令创建Kibana容器:

docker pull docker.elastic.co/kibana/kibana:8.13.4
docker run --name kibana --net elastic -p 5601:5601 docker.elastic.co/kibana/kibana:8.13.4

启动成功后,会弹出Kibana的访问地址,复制到浏览器访问即可,注意,如果Kibana是部署在centos虚拟机内,访问地址要用虚拟机的ip地址

5 发送请求给ES

5.1 打开Kibana控制台

按照下图操作,打开Kibana控制台:

在这里插入图片描述

5.2 通过REST API发送请求

在控制台输入

GET /?pretty

点击运行即可,如下图所示:

在这里插入图片描述

5.3 通过curl发送请求

新开一个Shell客户端的session,发送以下命令,其中$ELASTIC_PASSWORD替换成Elasticsearch的密码:

curl --cacert http_ca.crt -u elastic:$ELASTIC_PASSWORD https://localhost:9200

5.4 添加数据

简单介绍ES中的数据概念:ES中的数据被叫做document,类比关系型数据库中的一行记录,ES中的数据是以JSON结构存储的。ES将document存在可搜索的索引

5.4.1 添加单个document

在Kibana中执行以下命令:

POST books/_doc
{"name": "Snow Crash", "author": "Neal Stephenson", "release_date": "1992-06-01", "page_count": 470}

响应报文的格式如下:

{"_index": "books","_id": "O0lG2IsBaSa7VYx_rEia","_version": 1,"result": "created","_shards": {"total": 2,"successful": 2,"failed": 0},"_seq_no": 0,"_primary_term": 1
}

_id是document在索引中具有唯一标识的作用,可以类比关系型数据库中的主键ID。

5.4.2 添加多个document

执行以下请求,注意,使用 _bulk 端点在一次请求中添加多个文档。批量数据必须是换行符分隔的 JSON (NDJSON)。每行都必须以换行符 (\n) 结尾,包括最后一行。:

POST /_bulk
{ "index" : { "_index" : "books" } }
{"name": "Revelation Space", "author": "Alastair Reynolds", "release_date": "2000-03-15", "page_count": 585}
{ "index" : { "_index" : "books" } }
{"name": "1984", "author": "George Orwell", "release_date": "1985-06-01", "page_count": 328}
{ "index" : { "_index" : "books" } }
{"name": "Fahrenheit 451", "author": "Ray Bradbury", "release_date": "1953-10-15", "page_count": 227}
{ "index" : { "_index" : "books" } }
{"name": "Brave New World", "author": "Aldous Huxley", "release_date": "1932-06-01", "page_count": 268}
{ "index" : { "_index" : "books" } }
{"name": "The Handmaids Tale", "author": "Margaret Atwood", "release_date": "1985-06-01", "page_count": 311}

5.5 搜索数据

5.5.1 搜索所有documents

执行以下命令:

GET books/_search

响应报文中的_source就是构建索引的时候原始的JSON对象

5.5.2 match查询

执行以下命令,查询name中带有brave的document:

GET books/_search
{"query": {"match": {"name": "brave"}}
}

6 总结

  1. 通过官网的Quick start快速上手实操ES查询,使用了Docker部署ES和Kibana,Kibana充当提供控制台的角色,ES充当数据库的角色
  2. 可以通过2种方式发送请求:HTTP REST API;CURL命令,本质也是HTTP
  3. ES中有索引概念,索引中含有多个document,document是由一些JSON Object构成的
  4. 添加document有2个接口:添加单个documentPOST {索引名}/_doc;添加多个documentPOST /bulk,请求参数的格式如下:
{ "index" : { "_index" : "books" } }
{"name": "Revelation Space", "author": "Alastair Reynolds", "release_date": "2000-03-15", "page_count": 585}
  1. 搜索数据有2个接口:全量查GET {索引名}/_search;match查GET {索引名}/_search,请求参数使用如下结构:
{"query": {"match": {"name": "brave"}}
}
http://www.hengruixuexiao.com/news/53750.html

相关文章:

  • 管理咨询网站福州短视频seo获客
  • 松滋市住房和城乡建设局网站外贸网站平台都有哪些 免费的
  • 北京南站停车场收费标准福州网站seo优化公司
  • 自助建网站教程手机网站免费客服系统
  • 网店代运营哪家公司好南京seo优化公司
  • flash个人网站首页模板站长工具查询域名信息
  • ifm网站做啥的小红书搜索指数
  • 网站怎么做中英文切换seo是对网站进行什么优化
  • python课web网站开发网络营销成功案例分析
  • 人跟狗做网站qq代刷网站推广免费
  • 深圳住房和建设局网站公开招标做网站的网络公司
  • 一个网站的优势有哪些西安建站推广
  • 湖南省百川电力建设有限公司网站培训网站建设
  • 删除wordpress缓存文件优帮云排名优化
  • 做服装的网站百度应用下载安装
  • 做类似交易猫的网站成都竞价托管多少钱
  • 营销网站建设制作网络营销工具的特点
  • 招商网站建设定做百度账号快速登录
  • 什么网站做h5没有广告网站排名推广
  • 设计软件solidworksseo范畴有哪些
  • 企业怎么做网站做网站的公司百度网盘下载官网
  • 广州市城市建设网站网络营销专业是干什么的
  • 十堰 网站建设竞价推广教程
  • 永久网站域名seo网络优化师招聘
  • 泰安网站建设怎么样app推广赚钱
  • 国外外贸b2c网站设计域名查询138ip
  • 网站开发的技术意义教育机构退费纠纷找谁
  • wordpress邮件验证码首页优化公司
  • 建设高端网站公司seo要点
  • 有网站了怎么做app沈阳cms模板建站