ElasticSearch
安装
docker run --name elasticsearch1 -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" -e ES_JAVA_OPTS="-Xms512m -Xmx512m" -d elasticsearch:7.17.6
ik分词器
docker exec -it elasticsearch1 /bin/bash
cd /elasticsearch/plugins/
elasticsearch-plugin install \
https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v7.11.1/elasticsearch-analysis-ik-7.17.6.zip
测试
- 9300 端口为 Elasticsearch 集群间组件的通信端口
- 9200 端口为浏览器访问的 http协议RESTful 端口
索引操作
创建索引
向 ES 服务器发 PUT 请求 :http://124.221.56.14:9200/student
查看所有索引
GET http://124.221.56.14:9200/_cat/indices?v
查看单个索引
GET http://124.221.56.14:9200/student
删除索引
DELETE http://124.221.56.14:9200/student
文档操作
创建文档
POST http://124.221.56.14:9200/student/_doc
POST http://124.221.56.14:9200/student/_doc/2
{ json }
查看文档
GET http://124.221.56.14:9200/student/_doc/2
修改文档
和添加文档一样
修改字段
POST http://124.221.56.14:9200/student/update/2
映射操作
创建映射
PUT http://124.221.56.14:9200/student/_mapping
{
"properties": {
"name":{
"type": "text",
"index": true
},
"sex":{
"type": "text",
"index": false
},
"age":{
"type": "long",
"index": false
}
}
}
查看映射
GET http://124.221.56.14:9200/student/_mapping
高级查询
查询所有文档
http://124.221.56.14:9200/student/_search
{
"query": {
"match_all": {}
}
}
匹配查询
{
"query": {
"match": {"name":"zhangsan"}
}
}
多字段匹配,或
{
"query": {
"multi_match": {
"query": "zhangsan",
"fields": ["name","nickname"]
}
}
}
关键字精确匹配查询,不分词
{
"query": {
"term": {
"name": {
"value": "zhangsan"
}
}
}
}
多关键字精确匹配查询,不分词,或
{
"query": {
"terms": {
"name": ["zhangsan","lisi"]
}
}
}
.............
Kibana
安装
docker run --name kibana1 --link=elasticsearch1:elasticsearch -p 5601:5601 -d kibana:7.17.6
进入容器
docker exec -it kibana1 /bin/sh
vi /usr/share/kibana/config/kibana.yml
使用
elasticsearch-head安装
docker run -d --name elasticsearch-head -p 9100:9100 mobz/elasticsearch-head:5
使用