讓solr的查詢效能更上一層樓
大家總是中意用調整各種啟動引數去讓軟體得到提升,其實這對軟體本身質量的提高並沒有什麼意義,純粹是小聰明而已。提高軟體質量首先要從要從架構和策略開始著手,只有這樣才有可能得到自己滿意的結果。
Solr的查詢是基於Field的,以Field為基本單元,例如一個文章站要索引
- classArticle
- {
- String title;
- String content;
- String tags;
- }
- 查詢引數: q=title:big && content:six
Solr會順序執行兩次 field查詢,這個開銷非常大。有個實際的案例:50萬條記錄,一次在6,7個欄位上檢索,24 core的伺服器也需要10-20ms
如果把title和content 合併,那隻需要查詢一次,效能可以提升50%
在生成索引xml的時候,把title和content填入同一個欄位,就能達到這種效果,但是產生新的問問題
無法對title和content的查詢分別指定權重了,一般來說,title的權重要高於content
Solr給出一種解決方法:在schema中使用 copyField
上述的Article Schema可以寫成如下這種格式,就能達到效果
- 這種schema定義方式,既可以對單個field指定查詢權重,也可以在泛查詢的時候提升效能,同時生成索引資料的時候不需要多寫任何程式碼。
本文為Anyforweb技術分享部落格,需要了解網站建設相關,請訪問anyforweb.com。
相關文章
- 程式設計師如何讓自己的工作更上一層樓程式設計師
- 讓你的Mac閱讀體驗更上一層樓——Bookends for MacMac
- 利用Q5讓遊戲應用更上一層樓遊戲
- 瞭解這12個概念,讓你的JavaScript水平更上一層樓JavaScript
- Office 2021:打造專業品質,讓辦公更上一層樓
- 《星露穀物語》製作人:如何讓成功更上一層樓
- ON1 Effects 2023:讓照片特效更上一層樓 mac啟用版特效Mac
- 如何使用kafka增加topic的備份數量,讓業務更上一層樓Kafka
- Solr複雜查詢一:函式查詢Solr函式
- 運維難度“更上一層樓”——不存在的運維
- 告別瑣碎工作:資料專案,讓你的職業發展更上一層樓
- 分散式 SQL 使資料庫更上一層樓 - thenewstack分散式SQL資料庫
- 預設密碼“admin"將被禁止,安全更上一層樓密碼
- 嘗試讓查詢更簡單
- 優思學院|QC七大管理工具,讓你的管理水平更上一層樓
- 學會這12個框架,你的薪資和level能更上一層樓框架
- 更上一層樓: Android 11 首個開發者預覽版到來Android
- Solr 客戶端查詢語法Solr客戶端
- “雙龍抬頭”,沙孚智慧零售助力您的財富更上一層樓
- .Net 下 Solr 入門學習系列(四)Solr查詢引數整理Solr
- 資料保障更上一層樓 紅塔證券與新華三做了這件事
- 搬磚 1-5年 的 Java 程式設計師,如何讓自己的職業生涯更進一層樓?變得更值錢?Java程式設計師
- 如何設計一個更通用的查詢介面
- UData查詢引擎最佳化-如何讓一條SQL效能提升數倍SQL
- 用hash cluster表提高查詢效能 (一)
- ClickHouse的查詢效能優勢
- 0629_層次查詢
- 剖析Elasticsearch的IndexSorting:一種查詢效能優化利器ElasticsearchIndex優化
- 【搜尋引擎】Solr全文檢索近實時查詢優化Solr優化
- solr研磨之效能調優Solr
- 離線查詢與線上查詢
- [譯] SQLite 底層查詢原理SQLite
- 資料的儲存和查詢分離不利查詢效能 - thenewstack
- EntityFramework優化:查詢效能Framework優化
- 利用leftJoinsub建立子查詢讓查詢語句groupBy和orderBy一起使用
- 樓梯有n個臺階,上樓可以一步上1階,也可以一步上兩階。一共有多少種上樓的方法?
- 以賽促學、以賽促練 | 綠盟科技助力吉林大學網路安全人才培養更上一層樓
- 如何查詢上標
- 效能優化之分頁查詢優化