8. Kibana的安裝
Kibana是一個針對Elasticsearch的開源分析及可視化平臺壹哺,使用Kibana可以查詢斗躏、查看并與存儲在ES索引的數(shù)據(jù)進(jìn)行交互操作,使用Kibana能執(zhí)行高級的數(shù)據(jù)分析啄糙,并能以圖表、表格和地圖的形式查看數(shù)據(jù)沈堡。
用root用戶上傳和安裝
# 1.下載Kibana
- https://www.elastic.co/downloads/kibana
# 2. 安裝下載的kibana
- rpm -ivh kibana-6.2.4-x86_64.rpm
# 3. 查找kibana的安裝位置
- find / -name kibana
# 4. 編輯kibana配置文件
- [root@localhost /]# vim /etc/kibana/kibana.yml
# 5. 修改如下配置
- server.host: "192.168.202.200" #ES服務(wù)器主機(jī)地址
- elasticsearch.hosts: ["http://192.168.202.200:9200"] #ES服務(wù)器地址
# 6. 啟動kibana
- systemctl start kibana
systemctl stop kibana
systemctl status kibana
# 7. 訪問kibana的web界面
- http://192.168.202.200:5601/ #kibana默認(rèn)端口為5601 使用主機(jī):端口直接訪問即可
9. Kibana的基本操作
9.1 索引(Index)的基本操作
PUT /dangdang/ 創(chuàng)建索引
DELETE /dangdang 刪除索引
DELETE /* 刪除所有索引
GET /_cat/indices?v 查看索引信息
9.2 類型(type)的基本操作
創(chuàng)建類型
1.創(chuàng)建/dangdang索引并創(chuàng)建(product)類型
PUT /dangdang
{
"mappings": {
"product": {
"properties": {
"title": { "type": "text" },
"name": { "type": "text" },
"age": { "type": "integer" },
"created": {
"type": "date"
}
}
}
}
}
注意: 這種方式創(chuàng)建類型要求索引不能存在
Mapping Type: : text , keyword , date ,integer, long , double , boolean or ip
查看類型
GET /dangdang/_mapping/product # 語法:GET /索引名/_mapping/類型名
9.3 文檔(document)的基本操作
添加文檔
PUT /ems/emp/1 #/索引/類型/id
{
"name":"趙小六",
"age":23,
"bir":"2012-12-12",
"content":"這是一個好一點的員工"
}
查詢文檔
GET /ems/emp/1
返回結(jié)果:
{
"_index": "ems",
"_type": "emp",
"_id": "1",
"_version": 1,
"found": true,
"_source": {
"name": "趙小六",
"age": 23,
"bir": "2012-12-12",
"content": "這是一個好一點的員工"
}
}
刪除文檔
DELETE /ems/emp/1
{
"_index": "ems",
"_type": "emp",
"_id": "1",
"_version": 2,
"result": "deleted", #刪除成功
"_shards": {
"total": 2,
"successful": 1,
"failed": 0
},
"_seq_no": 1,
"_primary_term": 1
}
更新文檔
1.第一種方式 更新原有的數(shù)據(jù)
POST /dangdang/emp/1/_update
{
"doc":{
"name":"xiaohei"
}
}
2.第二種方式 添加新的數(shù)據(jù)
POST /ems/emp/1/_update
{
"doc":{
"name":"xiaohei",
"age":11,
"dpet":"你好部門"
}
}
3.第三種方式 在原來數(shù)據(jù)基礎(chǔ)上更新
POST /ems/emp/1/_update
{
"script": "ctx._source.age += 5"
}
ES的使用語法風(fēng)格為:
<REST Verb> /<Index>/<Type>/<ID>
REST操作 /索引/類型/文檔id
批量操作
1. 批量索引兩個文檔
PUT /dangdang/emp/_bulk
{"index":{"_id":"1"}}
{"name": "John Doe","age":23,"bir":"2012-12-12"}
{"index":{"_id":"2"}}
{"name": "Jane Doe","age":23,"bir":"2012-12-12"}
2. 更新文檔同時刪除文檔
POST /dangdang/emp/_bulk
{"update":{"_id":"1"}}
{"doc":{"name":"lisi"}}
{"delete":{"_id":2}}
{"index":{}}
{"name":"xxx","age":23}
注意:批量時不會因為一個失敗而全部失敗,二十繼續(xù)執(zhí)行后續(xù)操作,批量在返回時按照執(zhí)行的狀態(tài)開始返回
ES 索引index 類型 type 映射mapping 文檔document
1僧免、索引相關(guān)操作
GET /_cat/indices?v
DELETE /ems
PUT /ems
2捏浊、類型和映射操作
PUT /ems
{
"mappings": {
"emp":{
"properties":{
"name":{"type":"keyword"},
"age":{"type":"integer"},
"bir":{"type":"date"},
"intr":{"type":"text"}
}
}
}
}
GET /ems
GET /ems/_mapping
3、文檔相關(guān)操作 添加文檔 刪除 修改 查詢
添加PUT 索引 類型 _id
PUT /ems/emp/2
{
"name":"nonono",
"age":30,
"bir":"2021-01-20",
"intr":"是個好人金踪!"
}
添加POST 可以自己產(chǎn)生_id
POST /ems/emp
{
"name":"gao",
"age":24,
"bir":"2021-01-20",
"intr":"是個好人呢!"
}
查詢
GET /ems/emp/2
刪除
DELETE /ems/emp/1
DELETE /ems/emp/k5wWF3cBnFadSB2r3KKQ
更新
1法希、不保留原始數(shù)據(jù)更新(先刪除再插入)
POST /ems/emp/k5wWF3cBnFadSB2r3KKQ
{
"name":"小明"
}
2靶瘸、保存原始數(shù)據(jù)的更新 (可以像dept,這樣去新增字段)
POST /ems/emp/k5wWF3cBnFadSB2r3KKQ/_update
{
"doc":{
"name":"gaogao",
"age":25,
"dept":"研發(fā)部"
}
}
3著觉、腳本更新script
POST /ems/emp/k5wWF3cBnFadSB2r3KKQ/_update
{
"script": "ctx._source.age+=3"
}
文檔批量操作 _bulk(批量操作) 添加(index) 刪除(delete) 更新(update)
PUT /ems/emp/_bulk
{"index":{"_id":"3"}}
{"name":"Ngnono","age":33,"bir":"2020-01-20","inr":"我也是個好人"}
{"delete":{"_id":"1"}}
{"update":{"_id":"2"}}
{"doc":{"name":"小霸王","intr":"這是一個游戲機(jī)"}}