本篇內容主要講解“ElasticSearch怎么添加索引”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“ElasticSearch怎么添加索引”吧!
建網站原本是網站策劃師、網絡程序員、網頁設計師等,應用各種網絡程序開發(fā)技術和網頁設計技術配合操作的協(xié)同工作。創(chuàng)新互聯(lián)公司專業(yè)提供成都網站設計、做網站,網頁設計,網站制作(企業(yè)站、響應式網站開發(fā)、電商門戶網站)等服務,從網站深度策劃、搜索引擎友好度優(yōu)化到用戶體驗的提升,我們力求做到極致!
1. 編寫索引內容
節(jié)點解釋:
settings:配置信息
"number_of_replicas": 0 不需要備份(單節(jié)點的ElasticSearch使用)
"mappings": 映射內容
"dynamic":false 是否動態(tài)索引,這里使用的是false,表示索引的固定的,不需要修改。
"properties": 屬性結構內容
"index":"true" 需要分詞處理的結構
type對應的數(shù)據(jù)類型,text文本(長字符串),integer數(shù)字,date時間,keyword單詞
elasticsearch 6.X版本的索引文件
{ "settings":{ "number_of_replicas": 0 }, "mappings":{ "house":{ "dynamic":false, "properties":{ "houseId":{"type":"long"}, "title":{"type":"text", "index":"true"}, "price":{"type":"integer"}, "area":{"type":"integer"}, "createTime":{"type":"date","format":"strict_date_optional_time||epoch_millis"}, "lastUpdateTime":{"type":"date", "format":"strict_date_optional_time||epoch_millis"}, "cityEnName":{"type":"keyword"}, "regionEnName":{"type":"keyword"}, "direction":{"type":"integer"}, "distanceToSubway":{"type":"integer"}, "subwayLineName":{"type":"keyword"}, "subwayStationName":{"type":"keyword"}, "tags":{"type":"text"}, "district":{"type":"keyword"}, "description":{"type":"text", "index":"true"}, "layoutDesc":{"type":"text", "index":"true"}, "traffic":{"type":"text", "index":"true"}, "roundService": {"type": "text", "index": "true"}, "rentWay":{"type":"integer"} } } } }
elasticsearch 7.X版本的索引文件
{ "settings":{ "number_of_replicas": 0 }, "mappings":{ "dynamic":false, "properties":{ "title":{"type":"text", "index":"true"}, "price":{"type":"integer"}, "area":{"type":"integer"}, "createTime":{"type":"date","format":"strict_date_optional_time||epoch_millis"}, "lastUpdateTime":{"type":"date", "format":"strict_date_optional_time||epoch_millis"}, "cityEnName":{"type":"keyword"}, "regionEnName":{"type":"keyword"}, "direction":{"type":"integer"}, "distanceToSubway":{"type":"integer"}, "subwayLineName":{"type":"keyword"}, "subwayStationName":{"type":"keyword"}, "tags":{"type":"text"}, "district":{"type":"keyword"}, "description":{"type":"text", "index":"true"}, "layoutDesc":{"type":"text", "index":"true"}, "traffic":{"type":"text", "index":"true"}, "roundService": {"type": "text", "index": "true"}, "rentWay":{"type":"integer"} } } }
2. 創(chuàng)建索引
使用Postmen發(fā)送創(chuàng)建索引請求
(1)地址欄后半段是索引名稱
(2)請求使用的PUT方式,選擇Body,raw形式,采用JSON格式發(fā)送
創(chuàng)建成功的顯示結果:
{ "acknowledged": true, "shards_acknowledged": true, "index": "house" }
在ElasticSearch-Head里查看結果:
3. 創(chuàng)建索引時的報錯:
錯誤1:Root mapping definition has unsupported parameters
原因:ElasticSearch7.X之后的版本默認不在支持指定索引類型,默認索引類型是_doc(隱含:include_type_name=false),所以在mappings節(jié)點后面,直接跟properties就可以了。
問題2:Could not convert [title.index] to boolean
原因:也是新版本的問題,之前版本的index屬性寫法是"analyze",現(xiàn)在只能設置true, false, "true","false"
到此,相信大家對“ElasticSearch怎么添加索引”有了更深的了解,不妨來實際操作一番吧!這里是創(chuàng)新互聯(lián)網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續(xù)學習!