嗨,在我的系統中將有一個主節點和n個從節點,其中主節點將傳入請求分配給它的一個從節點。爲了利用緩存內容,我想跟蹤從節點已經服務的最後50個請求(傳入請求的散列)(假設最後50個請求已經存在於緩存中,那麼該節點將快速提供請求)。 據我研究,布隆過濾器中的刪除很困難。但它也可以通過計數過濾器來完成。是否真的有可能讓布隆過濾器像一個移動的窗口一樣(例如在50請求之後它應該從前端刪除以適應新的請求)。是否真的有可能這樣做還是有其他過濾器像布隆過濾器(它應該足夠快以檢查元素的存在)。布隆過濾器可以單獨存儲最後50個數據內容
5
A
回答
5
如果你只記錄了50件事情,那麼我認爲布隆過濾器不是一個合適的數據結構。如果數據不能保存在內存中,並且想要執行預過濾以消除某些遠程數據結構(如遠程數據庫)中的不必要查找,那麼Bloom過濾器就非常好。如果你只有50個元素,那麼使用類似散列表的東西來存儲這些值幾乎肯定會更好,因爲在最短的空間開銷下,您可以在預期的O(1)時間內得到確切的答案。
如果你想跟蹤你所看到的最後50個元素,可以考慮查看一個鏈接哈希表,它支持O(1)時間內的插入,查找,刪除和刪除最老的所有內容。 Java的LinkedHashMap
在這裏應該很棒。
希望這會有所幫助!
相關問題
- 1. 布隆過濾器是在10分鐘後容量
- 2. 使用布隆過濾器
- 3. 組合布隆過濾器
- 4. 布隆過濾器設計
- 5. 過濾器根據表中單獨DB
- 6. 提取cassandra的布隆過濾器
- 7. MySQL按位操作,布隆過濾器
- 8. 爲什麼布隆過濾器需要多個哈希函數?
- 9. 哪個散列函數在布隆過濾器使用
- 10. 將數據存儲到存儲器中的獨立存儲器
- 11. 本地存儲中的過濾器內容
- 12. 如何在單獨的頁面上存儲表單數據的部分內容?
- 13. 根據單詞過濾內容
- 14. 簡單的內容過濾器WordPress的
- 15. 存儲將被過濾的數據(內存中)的最佳方式?
- 16. 存儲最後發佈
- 17. 如何分配單獨的內存來存儲機密數據?
- 18. 克隆後的SVG過濾器SVG
- 19. 我可以通過lpc1768本身單獨讀寫數據到海量存儲閃存驅動器嗎?
- 20. AngularJS:只顯示最後一個標籤上的過濾內容
- 21. 數據存儲在兩個過濾器上的提取替代?
- 22. 使用多個過濾器的數據存儲查詢
- 23. CFGRID - 替換多個列上的數據存儲或過濾器
- 24. 啓動過濾器後重置jQuery的ListView可摺疊內容
- 25. Google容器引擎節點可以訪問數據存儲嗎?
- 26. 過濾器表格內容
- 27. TweetDeck列內容過濾器
- 28. UltraGrid表格過濾:我可以存儲和調用數據庫的過濾器設置嗎?
- 29. Emberjs過濾器內容以空白內容開始
- 30. 谷歌的AppEngine數據存儲過濾