簡體   English   中英

Apache Solr模式配置

[英]Apache Solr Schema Configuration

因此,我對Apache Solr並不陌生,現在我確實知道如何處理。 我來自OO編程背景,因此首先讓我解釋一下對象關系:

以一個名為Movie的對象為例,它具有兩個文本字段,標題和描述。 電影可以由用戶與標簽相關聯。 這些標簽是特定於用戶的,其他用戶看不見。

因此,示例電影可能具有以下內容:

“電影標題”,“電影說明” User1Tags:“ tag1”,“ tag2” User2Tags:“ action”,“ somethingElse”

我需要設計一個架構/ solr查詢,以便當user1搜索影片時,如果他們鍵入“ action”,則上面的影片將不會顯示。 這是因為user2將“動作”與“電影標題”而不是user1相關聯。

我考慮過的事情:

1)過濾器查詢-這些查詢似乎不起作用,因為一旦建立了每部電影的索引,我就看不到如何避免將所有用戶標簽都綁定到電影的索引。

2)電影與標簽關聯的獨立核心,每次搜索僅執行兩個查詢。 我知道我可以用這種方法來做,但是對我來說,再做一個核心似乎太過分了。

我還有其他選擇嗎? 還是有辦法實現1? 還是最簡單的選擇就是選擇2,這就是知道自己在Solr上做什么的人會怎么做?

有多少用戶?

如果不是很多,則可以具有動態字段tag_user1,tag_user2並修改eDismax字段列表以使其匹配或不匹配,例如通過使用字段名稱別名。

另一個選項是在值前加上用戶ID。 因此標簽字段將具有:user1_tag1,user1_tag2,user2_action,user2_somethingElse。 然后,在查詢鏈中需要一個自定義過濾器,該過濾器將為搜索令牌加上請求的用戶前綴,因此只有前綴值會匹配。

暫無
暫無

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

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