Kibana 的搭建與數據操作

前幾天寫了Elasticsearch 的安裝,這次來看Elasticsearch 的圖形界面工具kibana的搭建與數據測試。

這個搭建比較簡單,步驟如下:

首先下載安裝包,這個可以去官網下載。我下載的是7.6.1版本。

放到opt目錄,解壓:

<code>tar -xzf tar -xzf kibana-7.2.0-linux-x86_64.tar.gz/<code>

後續操作在 kibana-7.6.1-linux-x86_64 目錄內進行,為方便操作,將目錄名稱通過mv修改成kibana。

mv kibana-7.6.1-linux-x86_64 kibana

cd kibana

接著,編輯 ./config/kibana.yml

<code>server.port: 5601
server.host: "0.0.0.0"
elasticsearch.hosts: ["http://10..18.內.內:9200"]
i18n.locale: "zh-CN" # 配置中文界面,可選/<code>

最後,修改 ECS 安全組,放行 5601 端口

啟動 kibana

<code>./bin/kibana/<code>

瀏覽器訪問安裝kibana的機器地址,

http://外.外.外.外:5601/,可以看到如下界面:

Kibana 的搭建與數據操作

歡迎頁面首頁

我們這裡打開左邊欄,左下角的Kibana Dev Tools工具,

Kibana 的搭建與數據操作

dev tools

這裡就可以寫命令了,常用命令如下:

常用命令

集群信息

  • 查看集群是否健康
<code># 查看集群健康狀態
GET /_cluster/health/<code>
  • 查看節點列表
<code># 查看節點列表
GET /_cat/nodes?v/<code>

索引

  • 查看所有索引
<code># 查看所有索引
GET /_cat/indices/<code>
  • 查看某個索引的 mapping
<code># 查看某個索引的 mapping
GET /kibana_sample_data_ecommerce/_mapping/<code>
  • 查看某個索引的 settings
<code># 查看某個索引的 settings
GET /kibana_sample_data_ecommerce/_settings/<code>

創建索引

使用PUT命令,創建名稱為customer的索引

<code>PUT /customer?pretty/<code>

返回

<code>{  "acknowledged": true,  "shards_acknowledged": true,  "index": "customer"}/<code>

文檔

當索引創建完成後,我們就可以向索引插入數據了

插入一條ID為1的document

<code>PUT /customer/_doc/1?pretty
{  "name": "zhangSan"}/<code>

返回

<code>{  "_index": "customer",  "_type": "_doc",  "_id": "1",  "_version": 1,  "result": "created",  "_shards": {    "total": 2,    "successful": 1,    "failed": 0  },  "_seq_no": 0,  "_primary_term": 1}/<code>
  • 返回索引的所有文檔
<code># 返回索引的所有文檔
GET /customer/_search/<code>
  • 根據ID查看文檔
<code># 根據ID查看文檔
GET /GET /customer/_search/_doc/1/<code>
  • term 查詢精確匹配
<code># term 查詢精確匹配
GET /_search
{
"query": {
"term": {
"name": "zhangsan"
}
}
}
# 通過 Constant Score 將查詢轉換成一個 Filtering
# 避免算分,並利用緩存,提高性能
GET /_search
{
"query": {
"constant_score": {
"filter": {
"term": {
"name": "zhangsan"
}
}
}
}
}/<code>
  • 通配符模糊查詢
<code># 通配符模糊查詢
GET /_search
{
"query": {
"wildcard": {
"name": "*zhang*"
}
}
}
# 通過 Constant Score 將查詢轉換成一個 Filtering
# 避免算分,並利用緩存,提高性能

GET /_search
{
"query": {
"constant_score": {
"filter": {
"wildcard": {
"name": "*zhang*"
}
}
}
}
}/<code>

替換Document

把我們剛剛創建的zhangSan替換為liSi

<code>PUT /customer/_doc/1?pretty
{  "name": "liSi"}/<code>

返回

<code>{  "_index": "customer",  "_type": "_doc",  "_id": "1",  "_version": 2,  "result": "updated",  "_shards": {    "total": 2,    "successful": 1,    "failed": 0  },  "_seq_no": 1,  "_primary_term": 1}/<code>

與替換有相同功能的我們還可以更新

<code>POST /customer/_doc/1/_update?pretty{  "doc": { "name": "liSi" }}/<code>

刪除Document

刪除ID為1的記錄

<code>DELETE /customer/_doc/1?pretty/<code>

返回

<code>{  "_index": "customer",  "_type": "_doc",  "_id": "1",  "_version": 3,  "result": "deleted",  "_shards": {    "total": 2,    "successful": 1,    "failed": 0  },  "_seq_no": 2,  "_primary_term": 1}/<code>


刪除索引

<code>DELETE /customer?pretty/<code>

返回

<code>{  "acknowledged": true}/<code>


分享到:


相關文章: