【ELK】【ElasticSearch】3.es入門基本操作


docker安裝elasticSearch步驟

==================================================================

本篇參考:

https://www.cnblogs.com/chenmc/p/9516100.html

http://nullpointer.pw/%E5%92%8C%E6%88%91%E4%B8%80%E8%B5%B7%E6%89%93%E9%80%A0%E4%B8%AA%E7%AE%80%E5%8D%95%E6%90%9C%E7%B4%A2%E4%B9%8BElasticSearch%E5%85%A5%E9%97%A8.html

==================================================================

1.基礎概念

Index 索引---DB數據庫

Type 類型---數據表

Document 文檔---表中一條記錄

Field 字段---記錄中的每個列屬性

Shard 分片---對索引進行分片,分布於集群各個節點上,降低單個節點的壓力

Replica 備份---拷貝分片就完成了備份

 

2.基本語法

接口均符合Rest風格

API基本格式:

http://<IP>:<PORT>/<Index>/<Type>/<Document的ID>

常用HTTP請求方法:

GET/PUT/POST/DELETE

 

 

3.對於Index索引的介紹和使用

 

3.1索引類型

  結構化索引:mappings指定了的。可通過PostMan直接調用接口創建,也可以通過kibana的Dev Tools調用接口創建。【文章下面講】

  非結構化索引:mappings未指定的,是空的{},可以通過elasticSearch-head創建【參考:https://www.cnblogs.com/chenmc/p/9510514.html

  

 3.2操作索引

  3.2.1 創建名為people的索引[Index],其中指定mappings,包含一個名為man的類型[Type]

  url地址:

http://192.168.92.130:9200/people

  請求方式:

PUT

  請求體格式:

raw   
JSON(application/json)

  請求體:

{
    "settings":{
        "number_of_shards":3,
        "number_of_replicas":1
    },
    "mappings":{
        "man":{
            "properties":{
                "name":{
                    "type":"text"
                },
                "country":{
                    "type":"keyword"
                },
                "age":{
                    "type":"integer"
                },
                "date":{
                    "type":"date",
                    "format":"yyyy-MM-dd HH:mm:ss||yyyy-MM-dd||epoch_millis"
                }
            }
        }
    }
}

 

  

  注意:

    1》請求方式必須是PUT,否則會報錯:

    "error": "Incorrect HTTP method for uri [/people] and method [POST], allowed: [PUT, GET, HEAD, DELETE]"

    

    2》關於請求體的解讀:

         

    3》關於text和keyword數據類型的區別

      keyword數據類型和text數據類型都是字符串類型

      keyword數據類型不會被分詞,可用以存儲 姓名、郵箱地址、郵政編碼等這類型的文本內容,可以用來檢索過濾、排序、聚合。keyword字段只能用自身來進行檢索!

      text數據類型會被分詞。text數據類型用來索引長文本,在建立索引之前即根據配置的分詞器進行分詞,搜索是也會根據配置的分詞器進行搜索,沒配置則使用默認分詞器。text類型不會進行排序和聚合。

    4》其他數據類型查看

      https://www.cnblogs.com/sxdcgaq8080/p/10207262.html

 

 4.通過Rest接口操作數據

  4.1插入數據

    4.1.1指定文檔id插入數據

PUT http://ip:port/index/type/id

    

    

    4.1.2不指定文檔id,則自動產生文檔id插入數據

POST  http://ip:port/index/type

    

 

  4.2修改數據

POST  http://ip:port/index/type/id/_update

     

  4.3刪除數據

  

  4.4刪除索引  

 

5.通過Rest接口查詢數據

  5.1根據ID查詢

GET  http://ip:port/index/type/id

    

 

  5.2指定條件查詢,分頁,排序

POST  http://ip:port/index/_search

    注意請求體

    

    

  5.3分組查詢

    

    

  5.4 聚合計算

    

    

 

 

 

 

  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM