有誰知道任何對基於位置的索引有原生支持的數據庫(SQL或NoSQL)嗎?數據庫位置索引
爲了澄清,在很多情況下,我需要維持一個基於頭寸的收款,訂單或頭寸由外部實體(用戶,外部服務等)維護。通過維護,我的意思是集合中的項目順序會經常更改,但並不基於記錄中的任何數據字段,就維護集合的服務而言,順序完全是任意的。該服務需要提供一個接口,允許按位置插入CRUD函數(在Pos X後插入,在Pos Y中刪除等)以及操縱位置(從pos X移到pos Y)。
我知道有解決方法,你可以做到這一點,我已經實現了很多自己,但這似乎是一個非常基本的方式來索引數據。所以我不禁感到現在必須有一個現成的解決方案。
我唯一看到的就是Redis的List數據類型,儘管它按位置排序,但它相當有限(與具有多個索引的表相比),而Redis更適合作爲Cache比持久數據存儲。
最後我問這是因爲我有一個需求,需要用戶可能包含10,000條記錄的訂購集合。
Postgres的數組讓人浮想聯翩,但是你無法真正做到你想要的CRUD內容。雖然你可以編寫可以做到這一點的函數。而對於整數數組,這已經可以作爲擴展 –
@a_horse_with_no_name我不知道關於postgres數組,謝謝你。他們在列上,所以不是一個索引,但可能是有用的,我會玩。擴展名是[intarray](https://www.postgresql.org/docs/9.5/static/intarray.html)嗎? –
您可以對列進行索引以加快查找速度。 'intarray'提供了額外的操作符和函數來處理整數數組(僅限整數) –