2015-03-25 32 views
0

我有一個由光傳感器生成的實時時間序列數據,並且呈現爲公共JavaScript文件中的變量(每20毫秒刷新一次)變量。我怎樣纔能有效地將它們存儲到mongo中?有誰能給我一些關於最佳實踐的建議嗎?如何在mongodb中有效存儲快速更改的時間序列數據?

+0

這個問題不清楚。首先,我們需要知道「快速變化」實際上意味着什麼。這可能意味着每分鐘一次和每微秒一次之間的任何事情。那麼我們需要知道您實際存儲在數據庫中的信息 - 只是當前值或所有值的歷史記錄?然後我們需要知道你實際上將要處理的數據 - 在設計MongoDB數據庫模式時,如何查詢它是最重要的因素。 – Philipp 2015-03-25 09:28:59

回答

1

這聽起來像是使用mongodb的Capped Collections的好例子。

Capped集合是固定大小的集合,支持基於插入順序插入和檢索文檔的高吞吐量操作。封閉式集合的工作方式與循環緩衝區類似:一旦集合填滿其分配的空間,它就會通過覆蓋集合中最早的文檔爲新文檔騰出空間。

你可以插入每一個光傳感器測量如在加蓋的收藏一個新的文檔,那麼你就可以有效地檢索以相同的順序進行測量,因爲他們插入,也不用擔心用完存儲空間。

相關問題