[英]Solr schema setup help for complex data
我正在嘗試在Solr中設置字段來進行復雜的搜索。
我希望用戶能夠根據他們在白天和時間段內提供的營業時間和服務來查找組織。
示例: Find all organizations open Monday at 3pm offering childcare service and Spanish speakers.
這些字段是:
- day of week open (long)
- open time (long)
- close time (long)
- services offered (long)
- languages spoken (long)
我知道我可以將數組字段與范圍查詢一起使用來搜索任何一個字段,但是我不確定如何關聯相關數據。 如果僅在星期三提供托兒服務,那么我不希望該組織在搜索星期一時出現。
這很大程度上取決於您需要什么樣的查詢。 通常,不可能僅通過一個示例查詢來設計整個架構,但這是一個開始:
name: string/text
services: multiValued string
languages: multiValued string
opentime: multiValued string
servicestime: multiValued string
樣本文件:
name: Foo org
services: childcare, something_else
languages: English, Spanish
opentime: Monday 9AM, Monday 10AM, ..., Monday 4PM, Tuesday 9AM, ..., Tuesday 4PM
servicestime: childcare Monday 9AM, ..., childcare Monday 12PM
您的示例查詢:“查找所有在星期一下午3點開放的提供托兒服務和西班牙語發言人的組織”可以轉換為此架構: servicestime:"Monday 3PM" AND languages:Spanish
(暗示如果它在星期一下午3點提供服務,組織是開放的)。
通常,在設計Solr架構時,您將擁有特定於場景的字段。 請記住,它不是關系數據庫,您的數據應該非規范化。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.