js实现日历框上一日下一日_一日三项令人兴奋的Lucene功能
js實(shí)現(xiàn)日歷框上一日下一日
昨天是富有成效的一天:突然,Lucene有了三個(gè)令人興奮的新功能。
表達(dá)式模塊
昨天提交的第一個(gè)功能是新的expressions模塊 。 這使您可以使用任意String表達(dá)式定義用于排序的動(dòng)態(tài)字段。 內(nèi)置了對(duì)JavaScript解析的支持,但是如果您想創(chuàng)建自己的語法,則解析器是可插入的。
例如,您可以使用表達(dá)式定義排序字段
sqrt(_score) + ln(popularity)如果您想主要通過相關(guān)性來提供混合排序,并通過受歡迎度字段來提高混合排序。
該代碼非常易于使用。 在TestDemoExpressions.java單元測(cè)試用例中,有一些不錯(cuò)的示例,這些將??在Lucene的下一個(gè)穩(wěn)定版本(4.6)中提供。
可更新的數(shù)字文檔值字段
第二個(gè)功能也是昨天提交的,它是可更新的數(shù)字文檔值字段 ,可讓您使用IndexWriter上的新updateNumericDocValue方法更改以前索引的數(shù)字值。 它可以與近實(shí)時(shí)閱讀器配合使用,因此您可以更新一些文檔的數(shù)值,然后重新打開新的近實(shí)時(shí)閱讀器以查看更改。
該功能目前僅是主干,因?yàn)槲覀兛梢越鉀Q一些涉及特別有爭(zhēng)議的布爾值的剩余問題。 當(dāng)前它也不適用于稀疏字段,即,僅當(dāng)該文檔已首先對(duì)該字段建立索引時(shí),您才能更新該文檔的值。
結(jié)合使用這兩個(gè)功能,您可以使用功能強(qiáng)大的用例,在這些用例中,您可以根據(jù)隨時(shí)間變化的混合字段進(jìn)行排序。 例如,也許您測(cè)量用戶單擊搜索結(jié)果中每個(gè)文檔的頻率,然后使用該頻率更新popularity字段,然后將該popularity字段用于混合排序。 這樣,當(dāng)您向用戶學(xué)習(xí)哪些文檔很受歡迎而哪些文檔不受歡迎時(shí),搜索結(jié)果的排名就會(huì)隨著時(shí)間而變化。
當(dāng)然,使用自定義外部代碼以前總是可以使用這種功能,但是現(xiàn)在有了表達(dá)式和可更新的doc值,實(shí)現(xiàn)起來就變得微不足道了!
免費(fèi)文字建議
最后,第三個(gè)功能是一個(gè)新的建議程序?qū)崿F(xiàn),即FreeTextSuggester 。 它是與現(xiàn)有建議完全不同的建議者:它不是從有限的預(yù)建建議范圍中進(jìn)行建議,而是使用簡(jiǎn)單的ngram語言模型來基于1個(gè)或2個(gè)先前標(biāo)記預(yù)測(cè)可能的建議的“長尾巴”。
在ShingleFilter ,它使用ShingleFilter創(chuàng)建ngram,并使用FST存儲(chǔ)和查找生成的ngram模型。 雖然將多個(gè)ngram模型緊湊地存儲(chǔ)在單個(gè)FST中,但是FST仍然會(huì)變得很大。 建立在AOL查詢?nèi)罩旧系?克,2克和1克模型為19.4 MB(查詢本身為25.4 MB)。 這是受到Google方法的啟發(fā)。
可能不會(huì)單獨(dú)使用此建議者,而是當(dāng)您的主要建議者找不到任何建議時(shí)作為備用。 您可以通過Google查看這種行為。 嘗試搜索“ the fast and”,您將看到建議仍然是完整的查詢。 但是,如果您鍵入的下一個(gè)單詞是“ burning”,那么google(到目前為止!)突然沒有完整的建議,并退回到其自由文本方法。
翻譯自: https://www.javacodegeeks.com/2013/09/three-exciting-lucene-features-in-one-day.html
js實(shí)現(xiàn)日歷框上一日下一日
總結(jié)
以上是生活随笔為你收集整理的js实现日历框上一日下一日_一日三项令人兴奋的Lucene功能的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 玉字五行属什么 玉字五行是属什么
- 下一篇: apache camel_探索Apach