2
我需要將我的SOLR索引分成兩部分。事實證明,我已經有了一個STRING字段,代表我需要的分區信息。意思是,一種將被搜索的記錄是字符串字段存在於記錄中並且包含一個值的地方,另一種是它不包含任何值的地方。所有查詢都必須指定要搜索的分區。現在,使用負面字段查詢(如-strFld:[* TO *]
)來搜索該字段會更快嗎,還是創建新的布爾字段會更好/更快?將其稱爲「hasStrFld」,然後搜索?因此,當strFld不存在時hasStrFld爲false。同樣,當StrFld中有數據時,hasStrFld爲true。SOLR模式設計問題:字段缺席或布爾字段?
其他考慮事項:將來索引可能被劃分爲第三個分區,使布爾不適合和負面查詢不合適,並且使用枚舉值的字段成爲一個考慮因素的可能性非常低。然而,今天的可能性相當低,今天的快速性能要比明天的可擴展性要大得多。