标签:点击 yml 需要 settings 指定 elastics 浏览器 inf man
1.下载软件https://elasticsearch.cn/download/
#点击上面的网址 下载rpm包
yum install elasticsearch-7.6.1-x86_64.rpm -y #安装
vi /etc/elasticsearch/elasticsearch.yml #修改以下配置
network.host: 0.0.0.0
#修改监听端口为全局
discovery.seed_hosts: ["host1"]
systemctl restart elasticsearch.service #启动服务
测试访问
#能显示这个页面说明成功了
#用Google浏览器的的应用商店搜索
#输入ip:9200访问
#安装advanced rest client
https://www.sojson.com/ #一个在线转换json 格式化的工具
安装Postman 软件
https://dl.pstmn.io/download/latest/win64 #下载
win7 如果无法安装 就更新KB2533623补丁
创建空索引:
PUT /haoke
{
"settings": {
"index": {
"number_of_shards": "2",#分片数
"number_of_replicas": "0"#副本数
}
}
}
#用elasticsearch-head看,已经有一个索引了
DELETE /haoke
{
"acknowledged": true
}
#成功返回200 响应码()
#在打开elasticsearch-head 看,发现索引已经没有了
URL规则:
POST /{索引}/{类型}/{id}
POST http://50.1.1.111:9200/haoke
{
"id":1001,
"name":"张三",
"age":20,
"sex":"男"
}
#在切到查看工具能看到多出一条记录
不指定id插入数据:
POST 50.1.1.111:9200/haoke/user/
{
"id":1002,
"name":"张三",
"age":20,
"sex":"男"
}
#可以看到url里不加ID _id字段将自动生成
PUT 50.1.1.111:9200/haoke/user/1001
{
"id":1001,
"name":"张三",
"age":21,
"sex":"女"
}
#看结果反馈,可以看到版本+1了
#看软件,能看到id为"1001"的性别确实变成了"女"
POST 50.1.1.111:9200/haoke/user/1001/_update
{
"doc": {
"age": 23
}
}
#看结果反馈,版本已经到第3版了。
#数据内容也确实被改变了
DELETE 50.1.1.111:9200/haoke/user/1001
在Elasticsearch中,删除文档数据,只需要发起DELETE请求即可。(不需要json代码)
#需要注意的是,result表示已经删除,version也更加了。如果删除一条不存在的数据,会响应404:
说明:
删除一个文档也不会立即从磁盘上移除,它只是被标记成已删除。Elasticsearch将会在你之后添加更多索引的时候才会在后台进行删除内容的清理,因为
#数据依然不在
搜索数据之前先多插点数据
#上面是插入的数据,下面我要搜索 画圈的的数据
GET 50.1.1.111:9200/haoke/user/BsuAzXAB_G2CqNSlIVLu
#get 不需要其他参数
GET 50.1.1.111:9200/haoke/user/_search
#看结果反馈,有5条记录,且能看到原始数据
GET 50.1.1.111:9200/haoke/user/_search?q=age:20
#只找到了一条记录
Elasticsearch提供丰富且灵活的查询语言叫做DSL查询(Query DSL),它允许你构建更加复杂、强大的查询。
DSL(Domain Specific Language特定领域语言)以JSON请求体的形式出现。
POST 50.1.1.111:9200/haoke/user/_search
{
"query": {
"match": { #match只是查询的一种
"age": 21
}
}
}
#找到一条记录,且年龄是21
POST 50.1.1.111:9200/haoke/user/_search
{
"query": {
"bool": {
"filter": {
"range": {
"age": {
"gt": 21
}
}
},
"must": {
"match": {
"sex": "男"
}
}
}
}
}
#找到两条同时满足年大于21且性别为男性。、
POST 50.1.1.111:9200/haoke/user/_search
{
"query": {
"match": {
"name": "张三 李四"
}
},
"highlight": {
"fields": {
"name": {}
}
}
}
聚合
POST 50.1.1.111:9200/haoke/user/_search
{
"aggs": {
"all_interests": {
"terms": {
"field": "age"
}
}
}
}
#看结果反馈,能看到每个年龄都有1个人
标签:点击 yml 需要 settings 指定 elastics 浏览器 inf man
原文地址:https://blog.51cto.com/13620944/2477642