簡體   English   中英

Solr-查詢嵌套的子文檔

[英]Solr - Querying on nested child documents

我有一個父文檔中有兩個子文檔的要求。 例如,被索引的文檔看起來像這樣,

{
"id":123,
"name":"nithin",
"_childDocuments_":[
{
"id":"22"
"place":"blr",
"parent_id":123,
"street":"inagar"
},
{
"id":"23"
"place":"tvm",
"parent_id":123,
"street":"bakery"
}
]
}

在這里,名字nithin有兩個子文檔,分別具有不同的位置和街道。 我的要求是查詢所有具有特定地點和/或街道的父母。 可以說blr和面包店。 如果我發出一個查詢說(blr和面包店),它將不會返回任何結果。 我不能使用BLR或Bakery,因為我想要一個子文檔應具有BLR和Bakery的父文檔。 我該如何實現?

我認為實現目標的最佳方法是通過Block Join Parser功能。

您需要進行一些更改-為父文檔引入一些標記。 在Solr詞匯表中,“父過濾器”將需要它。 因此,假設每個父文檔將具有content_type:parentDocument (僅出於示例目的),您將能夠使用BJQ(塊聯接查詢)查找所有父文檔,例如:

{!parent which="content_type:parentDocument"}(+place:blr +street:bakery)

請記住,您需要按照Solr Wiki上的描述,將父子文檔一起索引(在同一塊中)(但是據我所知 ,這樣做應該是一件好事)。

暫無
暫無

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

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