我們有拉特和長記錄的對象。 另外每個對象都有創建日期。如何通過函數結果實現快速排序?
用戶可以從任何地方登錄並查看對象。 我們需要通過一些特殊的索引來顯示對象的排序,這些索引是根據對象的新鮮程度以及與當前用戶的距離來計算的。
可以說我們在紐約和澤西島有對象。 如果您從紐約登錄,您應該在頂部看到New-Yorks對象,然後看到Jersey對象。但是,舊紐約的物品應該低於新球衣的物品。
我們可以近似函數F =在一天<對象新鮮感> + <從當前用戶點距離對對象的公里數的地方>
我們使用PostgreSQL用於存儲數據,我們可以真的只是排序等功能並得到我們需要的東西。 問題是我們擔心它會工作得很慢,因爲我們打算到達像1k-10k對象和100-300個位置,並且應用程序必須很快返回結果(因爲它就像應用程序中最重要的東西一樣)
用戶將從不同的地方添加對象。
如何提高此類查詢的性能您有任何想法嗎?
對不起,沒有得到它,根據什麼?那麼該函數將接收當前用戶的兩個參數< lat, long >。物體的「新鮮度」每天都會改變。 –
@ user909291你能否更詳細地解釋如何實現<>?它是表中的某個數字或日期/時間戳列嗎? 「新鮮度每天都在變化」是什麼意思,每天(或每晚)有沒有工作計算新的<>並更新整個表格? –
krokodilko
不,不。首先它還沒有實施,我們只是在想它。說「新鮮」我的意思是從創建日期開始的天數。我們將有日期時間字段(創建日期)。但是我們可以創建工作,無論如何,如果它有意義 –