elasticsearch基本知识

1进入官网下载最新版本-.默认9200端口
2.进入https://github.com 下载header插件,提供界面话操作界面和搜索,rest请求模拟
3.下载node.js,利用npm工具下载东西,-进入head插件的目录-cd ….然后用(用管理员权限运行,否则会报错,无权限)npm install命令下载相关文件(需要该文件夹下有package.json文件),最后用npm run start 启动插件
若是npm install出错,那就清理缓存
npm cache verify
npm cache clean
npm cache clean –force
解决方法:
1. npm run clean (clean npm)
2. delete node_modules directory from my project structure.
3. install dependencies again using npm install

4.es插件和head是属于不同的进程,存在跨域问题,需要修改es的配置文件
修改F:\elasticsearch-6.3.2\config\elasticsearch.yml
在文件最后面加上 –>http.cors.enabled: true
–>http.cors.allow-origin: “*”

5.分布式安装插件-建立一个主节点和两个从节点—-注意配置文件 :后面要空一格
修改F:\elasticsearch-6.3.2\config\elasticsearch.yml
在文件末尾加上
cluster.name:wali
node.name:master
node.master:true
network.host:127.0.0.1 默认端口9200
2.复制出两份elasticsearch-6.3.2文件用来分别设置从节点,随后启动从节点的进程
cluster.name: wali–集群名字要一样
node.name: slave1
network.host: 127.0.0.1默认端口9200会冲突,所以要指定端口
http.port: 8200
discovery.zen.ping.unicast.hosts: [“127.0.0.1”]用于找到master,要不然找不到主节点

新版本的elasticsearch的bin目录下也有service.bat命令可以安装启动服务。
if errorlevel 1 goto x86
set EXECUTABLE=%ES_HOME%\bin\elasticsearch-service-x64.exe
set SERVICE_ID=elasticsearch-service-x64
set ARCH=64-bit
goto checkExe
:x86
set EXECUTABLE=%ES_HOME%\bin\elasticsearch-service-x86.exe
set SERVICE_ID=elasticsearch-service-x86《———-设成不同的id即可分别启动windowu服务———–》

基础概念
1.索引:含有相同属性的文档集合——英文字母小写+_相当于数据库里的database
2.类型:索引可以定义一个或多个类型,文档必须属于一个类型——相当于数据库里的table
3.文档:文档是可以被索引的基本数据单元——相当于数据库里的一行记录

分片:每个索引有多个分片,每个分片是一个lucene索引—>分担单个索引的压力-默认五个分片、一个备份
备份:拷贝一个分片就完成了分片的备份

RESTFul API
1.API基本格式 http://:/<索引>/<类型>/<文档id>
2.常用HTTP动词 GET/PUT/POST/DELETE

创建索引
一、插入
1.指定文档id插入
使用http put请求
eg:发送put请求 http://127.0.0.1:9200/people/man/1 —–>peopel索引、man类型、1文档
传送的数据
{
“name”:”瓦力”,
“country”:”China”,
“age”:30,
“date”:”1995-11-17”
}
2、自动产生文档id插入
使用http post请求
eg 发送 http://127.0.0.1:9200/people/man/
二、修改
1.直接修改文档
使用http post请求
eg。http://127.0.0.1:9200/people/man/1/_update—>update关键词
{
“doc”:{
“name”:”谁是瓦力”
}
}
2.脚本修改文档
{
“script”:{
“lang”:”painless”,
“inline”:”ctx._source.age=params.age”,
“params”:{
“age”:100
}
}
}
三、删除操作
发送http delete请求 127.0.0.1:9200/people/man/1/
四、查询操作
1.简单查询
127.0.0.1:9200/book/_search
2.条件查询
{
“query”:{
“match”:{
“name”:”唐”
}
},
“sort”:[
{“age”:{“order”:”desc”} }
]

}
3.聚合查询
{
“aggs”:{
“group_by_word_count”:{
“terms”:{
“field”:”age”
}
}
}
}
高级查询
1.子条件查询 特定字段查询所指特定值
(1)、query context :在查询过程中,出来判断文档是否满足查询条件外、ES还会计算一个_score来标识匹配的程度
(2)、filter context只判断该文档是否满足条件
常用查询
全文本查询:针对文本类型数据
字段级别查询: 针对结构化数据、如数字、日期等
{
“query”:{
“match”:{
“age”:”100”
}
}
}
(2)、filter context:
2、复合条件查询、 以一定的逻辑组合子条件查询

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值