我目前正在開發一個處理事件的應用程序。因此,在 Elasticsearch 中,我們確實有一個名為 Event 的文檔。以前,我們只有一種事件(唯一事件發生在 5 月 13 日上午 9 點至上午 11 點),排序很簡單(按 start_date 排序)我們最近添加了一個新功能,允許我們創建重復事件,這意味著我們現在在 Elasticsearch 中有 2 個級別(父子關系)。我們可以有一個父事件,從 5 月 12 日下午 2 點到 5 月 14 日下午 6 點,與該事件相關聯,例如,我們每天都有孩子。所以我們有:5 月 12 日 2PM-6PM、5 月 13 日 2PM-6PM、5 月 14 日 2PM-6PM。實際排序的問題在于,當我們在 5 月 12 日晚上 10 點時,我們會在列表頂部找到重復事件,然后是唯一事件。我想進行排序,其中最近的日期具有更高的優先級。在這種情況下,唯一事件應該是列表中的第一個。為了實現這一點,我在重復事件父節點上索引了節點子節點,以便讓子節點 start_date。這個想法是從每個重復事件的子節點中獲取最近的日期,并使用每個唯一事件的 start_date 對該日期進行排序。我對elasticsearch沒有很大的經驗,所以我有點卡住了,我在文檔中看到了很多信息(父子,嵌套對象,腳本等)但我不知道如何處理案件。如果您有任何問題,我希望我已經正確解釋了自己,請隨時問他們,我很樂意為您提供更多信息。
- 2 回答
- 0 關注
- 276 瀏覽
添加回答
舉報
0/150
提交
取消