建表 ElasticSearch建表命令

2021-09-08 13:31:41 字數 1738 閱讀 1719

使用google外掛程式postman

傳送方式為put

192.168.2.11:9200/indexname

文字raw,資料為json格式

,

"typename":,

"title":,

"author":,

"summary":,

"contextsrc":,

"context":,

"keywords":,

"publishdate":,

"createtime":,

"modifytime":,

"deletetime":,

"url":,

"isdeleted":}}

}}

屬性說明:

properties表示表的字段

type字段型別,所有得字段都設定成了string,是因為在查詢和編碼過程中,有些型別不能很好的被轉換,例如boolean

store是否儲存,屬性有yes或者no,無論那種屬性都會被儲存,但如果設定成no,在查詢的時候是無法用此屬性作為查詢項的,基於拓展和業務方便維護,建議使用yes

index是否索引,屬性有not_analyzed(分詞不分析)、analyzed(分詞分析)、no(不分析不分詞)

analyzer使用哪種分詞器,在安裝es的時候會自己安裝分詞器,例如ik分詞器,在此指定分詞的時候使用的是哪種分詞器

search_analyzer使用哪種分詞器,但不是在入庫的時候,而是在做查詢的時候使用哪種分詞器

ignore_above對超過ignore_above的字串,analyzer 不會進行處理;所以就不會索引起來。導致的結果就是最終搜尋引擎搜尋不到了。這個選項主要對not_analyzed字段有用,這些字段通常用來進行過濾、聚合和排序。而且這些欄位都是結構化的,所以一般不會允許在這些欄位中索引過長的項。

format日期格式要求,例如設定為"yyy-mm-dd hh:mm:ss||yyyy-mm-dd||epoch_millis" 

dynamic表示是否使用動態對映,屬性有

true預設值,動態新增字段

false忽略新字段

strict如果碰到陌生字段,丟擲異常

settings表示設定

num_of_shards設定分片數量,預設為5

num_of_replicas設定副本數量,預設為1

elasticsearch建表遇到的坑

坑一 在本地環境可以在es中建表,在開發環境或者測試環境則建表失敗 org.springframework.util.resourceutil.getfile方法獲取的檔案是絕對路徑上,在jar包中就無法找到該檔案路徑,於是就需要用classpathresource獲取檔案流來解決jar包讀取檔案的...

ElasticSearch效能優化官方建議

es是設計成乙個搜尋引擎的,只擅長返回匹配查詢較少文件,如果需要返回非常多的文件需要使用scroll。因為es是基於lucene來索引和儲存資料的,所以對稠密的資料更有效。lucene能夠有效的確定文件是通過乙個整數的文件id,無論有沒有資料都會話費乙個位元組儲存id。稀疏主要影響norms和doc...

mysql建表建索引6 mysql建表建索引

建表 create table sj projects id int 11 not null auto increment,title varchar 255 not null default comment 專案名稱 platform id int 11 not null default 0 co...