上一篇:ElasticSearch(8)—IK分詞器
1.Rest風格介紹
method | url地址 | 方法描述 |
---|---|---|
PUT | localhost:9200/索引名稱/類型名稱/文檔id | 創建一個指定id的文檔 |
POST | localhost:9200/索引名稱/類型名稱 | 創建一個隨機id的文檔 |
POST | localhost:9200/索引名稱/類型名稱 /_search | 查詢所有文檔數據 |
POST | localhost:9200/索引名稱/類型名稱 /_update | 修改文檔 |
GET | localhost:9200/索引名稱/類型名稱 /文檔id | 查詢指定id的文檔 |
DELETE | localhost:9200/索引名稱/類型名稱 /文檔id | 刪除指定id的文檔 |
使用Kibana插件和head插件來進行測試:
命令語法(可以使用postman/http/kibana執行命令):
操作類型(GET/PUT/POST/DELETE) /索引名稱/類型名稱/文檔id
{
請求體
}
- 創建一個索引
在elasticsearch-head中查看:
2.字段類型(type)
在es中的數據類型有以下幾種:
2.1 核心數據類型
- 字符串(text、keyword)
- 數值(long、integer、short、byte、double、float、half_float、scaled_float)
- 日期(date)
- 日期納秒(date_nanos)
- 布爾(boolean)
- 二進制(binary)
- 範圍(integer_range、float_range、long_range、double_range、date_range)
2.2 複雜數據類型
- 對象(object 用於單個JSON對象)
- 嵌套(nested 用於JSON對象數組)
2.3 地理數據類型
- Geo_point(用於表示lat/lon座標點)
- Geo_shape(用於表示複雜形狀(如多邊形))
2.2 專門的數據類型
- IP(用於IPv4和IPv6地址)
- Completion(提供自動完成建議)
- 令牌數 (token_count 用於計算字符串中令牌數量)
……
ES有多種數據類型,但是我們一般最常使用的還是幾種核心的數據類型。那如何指定ES中的字段數據類型呢?
類似於mysql建表一樣,先創建一個index索引庫同時指定字段使用的數據類型:
然後再使用es-head插件查看剛創建的index庫:發現新建了一個index2,且該庫中無數據。
庫已經建好 了,字段的數據類型也指定好了,現在只需要向該庫中插入數據就可以了:
再次使用es-head插件查看索引: