192.168.244.130有elasticsearch的。
elasticsearch7.2.0安装:https://www.cnblogs.com/xiaobaixie/p/11210595.html
我的es的软件地址:
进入到bin目录:
安装不能是root:https://www.cnblogs.com/gcgc/p/10297563.html
报错:https://www.jianshu.com/p/2285f1f8ec21
报错:https://www.cnblogs.com/hellxz/p/11057234.html
linux新建用户:https://blog.csdn.net/sinat_34886122/article/details/88353871
设置读写权限:https://blog.csdn.net/qq_34937383/article/details/77977590
https://zhidao.baidu.com/question/168639379.html
---
https://blog.csdn.net/he19970408/article/details/107359861/
重启es:https://blog.csdn.net/qq_26230421/article/details/80349711
---
三个报错:
https://blog.csdn.net/liyantianmin/article/details/81589795
https://blog.csdn.net/weixin_39643007/article/details/108435139
https://blog.csdn.net/happyzxs/article/details/89156068
访问:http://192.168.244.133:9200/
---3-1---
---3-2---
mapping相当于关系性数据库的表结构,定义了每个字段的类型。
---4-1---
put一般是指定資源id的。
---4-2---
新增索引:
---4-3---
映射:
不加映射时候的请求:
加映射:
properties。
批量请求:
---
修改:
text是可以分词的。
案例:
不可修改字段的类型。
修改字段就是新加字段。
---4-4---
20210322
文档的crud。
1.新增文档
这个式默认的一个类型。必须是_doc。
如何查看文档:
不指定id是给你生成一个id
实验不存在:
通过文档创建索引。
_doc。
---
修改文档:
这个可以修改的:
同理:
---
_source是十分重要的
索引存的是所有的_mapping。
总结:
1.获得elasticsearch的状态:(GET)192.168.244.130:9200/
2.新增文档(新增文档会覆盖老的文档的):(PUT)192.168.244.130:9200/nba/_doc/1
字段的mapping是要满足要求的,mapping是不分文档的。
{
"age" : "333",
"message" : "louis is good",
"add": "1",
"allstar":"1",
"rrr":"rrr"
}
3.删除文档:(DELETE)192.168.244.130:9200/nba/_doc/1
4.新增索引:(PUT)192.168.244.130:9200/dba
5.获得索引:(GET)192.168.244.130:9200/dba
6.删除索引:(DELETE)192.168.244.130:9200/dba
7.批量获得索引:(GET)192.168.244.130:9200/dba,cba
8.获取所有索引:(GET)192.168.244.130:9200/_all
9.获取所有索引(详细信息):(GET)192.168.244.130:9200/_cat/indices?v
10.判断索引是否存在:(HEAD)192.168.244.130:9200/dba
11.关闭索引:(POST)192.168.244.130:9200/dba/_close
12.打开索引:(POST)192.168.244.130:9200/dba/_open
13.新增映射(映射是在索引下面得不是下面的):(PUT)192.168.244.130:9200/nba/_mapping
{
"properties": {
"name": {
"type": "text"
},
"team_name": {
"type": "text"
},
"position": {
"type": "keyword"
},
"play_year": {
"type": "keyword"
},
"jerse_no": {
"type": "keyword"
}
}
}
14.获取映射:(GET)192.168.244.130:9200/nba/_mapping
15.批量获取映射:(GET)192.168.244.130:9200/nba,dba/_mapping
16.获取所有映射:(GET)192.168.244.130:9200/_mapping
17.获取所有映射:(GET)192.168.244.130:9200/_all/_mapping
18.修改映射(不可修改字段的类型,修改字段就是新加字段):(PUT)192.168.244.130:9200/_all/_mapping
{
"properties": {
"name": {
"type": "text"
},
"team_name": {
"type": "text"
},
"position": {
"type": "keyword"
},
"play_year": {
"type": "keyword"
},
"jerse_no": {
"type": "keyword"
}
}
}
19.新增文档(会自动创建映射,此时要是不存在字段的话按照是不是加双引号看是不是字符串,存在的话long必须是123或者"123"):(PUT)192.168.244.130:9200/nba/_doc/1
{
"namefdy":"哈登",
"team_namefdy":"火箭",
"positionfdy":"得分后卫",
"play_yearfdy":"10",
"jerse_nofdy":"13"
}
20.查看文档:(GET)192.168.244.130:9200/nba/_doc/1
21.不指定id新增文档:(PUT)192.168.244.130:9200/nba/_doc
{
"name":"库里",
"team_name":"勇士",
"position":"组织后卫",
"play_year":"10",
"jerse_no":"30"
}
22.开启/关闭新增文档自动创建索引:(PUT)192.168.244.130:9200/_cluster/settings
{
"persistent": {
"action.auto_create_index": "true/false"
}
}
23.查看是否开启自动创建索引:(GET)http://192.168.244.130:9200/_cluster/settings
24.指定操作类型(创建名字一样的文档不覆盖):(PUT)192.168.244.130:9200/nba/_doc/1?op_type=create
25.查看多个文档:(POST)192.168.244.130:9200/_mget
{
"docs" : [
{
"_index" : "nba",
"_type" : "_doc",
"_id" : "1"
},
{
"_index" : "nba",
"_type" : "_doc",
"_id" : "2"
}
]
}
26.查看多个文档:(POST)192.168.244.130:9200/nba/_mget
{
"docs" : [
{
"_type" : "_doc",
"_id" : "1"
},
{
"_type" : "_doc",
"_id" : "2"
}
]
}
27.查看多个文档:(POST)192.168.244.130:9200/nba/_doc/_mget
{
"docs" : [
{
"_id" : "1"
},
{
"_id" : "2"
}
]
}
28.查看多个文档:(POST)192.168.244.130:9200/nba/_doc/_mget
{
"ids" : ["1", "2"]
}
29.修改文档(必须是POST):(POST)192.168.244.130:9200/nba/_update/1
{
"doc": {
"name": "哈登",
"team_name": "火箭",
"position": "双能卫",
"play_year": "10",
"jerse_no": "13"
}
}
30.向_source字段,增加一个字段(必须是POST):(POST)192.168.244.130:9200/nba/_update/1
{
"script": "ctx._source.age = 18"
}
31.从_source字段,删除一个字段(必须是POST):(POST)192.168.244.130:9200/nba/_update/1
{
"script": "ctx._source.remove(\"age\")"
}
32.根据参数值,更新指定文档的字段(POST)192.168.244.130:9200/nba/_update/1
{
"script": {
"source": "ctx._source.age += params.age",
"params": {
"age": 4
}
}
}
32.根据参数值,更新指定文档的字段(POST)192.168.244.130:9200/nba/_update/5
{
"script": {
"source": "ctx._source.allstar += params.allstar",
"params": {
"allstar": 4
}
},
"upsert": {
"allstar": 1
}
}
34.删除文档:(DELETE)192.168.244.130:9200/nba/_doc/1
---4-5---
一个字段可以对应多个文档的。
这个是可以查出来的,因为是分词了。
---4-6---
分词器:
只有text的才会被分词的。
案例:
看下之前的文档。
换个需求,只能通过shooter!查询到,其他是查询不到的。
第一步:新建索引
192.168.244.130:9200/nba/my_inidex
插入一条记录:
搜索:
---4-7---
分词是不可以拆分的,必须完全匹配分词,除非是match_phrase_prefix,分词你要完全匹配我的分词差一点都不可以的。
下载IK分词器:https://github.com/medcl/elasticsearch-analysis-ik/releases/tag/v7.2.0
---4-8---
常见的字段类型
案例:
插入记录:
案例:
存入数据:
{
"name": "哈登",
"team_name": "火箭",
"position": "得分后卫",
"play_year": 10,
"jerse_no": "31",
"age_range":{
"gte":20,
"lte":40
}
}
---
复杂的数据类型
案例:
专用的数据类型:
---
数据类型总结:字符串 数值 布尔 二进制 范围 日期 数组 对象 专用(IP)
---4-9---
kibana安装
启动报错:https://blog.csdn.net/yjt520557/article/details/89816841
拒绝访问:https://blog.csdn.net/hdblocal/article/details/80840903
访问地址:http://192.168.244.130:5601/app/kibana#/home/tutorial_directory/sampleData?_g=()
---4-10---