簡體   English   中英

如何在 Solr 中計算來自“生存時間”(TTL) 的文檔的過期字段值?

[英]How expiration field values for documents from a “time to live” (TTL) is calculated in Solr?

我瀏覽了 Java-doc @ DocExpirationUpdateProcessorFactory 它說:

DocExpirationUpdateProcessorFactory 提供了兩個與文檔“過期”相關的功能,可以單獨使用,也可以組合使用:

  • 從“生存時間”(TTL)計算文檔的過期字段值
  • 根據過期字段定期從索引中刪除文檔

但它沒有指定如何從 ttl 字段計算 expireField 值。

任何人都可以幫助理解它是如何計算的?

ttlFieldName - 此進程應在處理的每個文檔中查找的字段名稱,默認為_ttl_ 如果文檔中存在指定的字段名稱,則文檔字段值將被解析為相對於 NOW 的日期數學表達式,並將使用expirationFieldName將結果添加到文檔中。

這意味着您可以在_ttl_字段中使用+2 HOURS之類的術語,以使文檔在被索引后兩小時內過期。 然后,此日期值將存儲在expirationFieldName字段中。

來自Cloudera 關於該功能介紹的文檔

當前時間為: 2016-10-26 20:14:00

_ttl_定義為:+2HOURS

這將導致到期值為2016-10-26 22:14:00

Lucidworks 對該功能的描述中還有更多示例

{ "id"             : "live_2_minutes_b",
  "time_to_live_s" : "+120SECONDS"            
},

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM