2016-07-04 42 views
0

我們正在構建一個可視化大型數據集的網站。數據集使用crossfilter.js加載到服務器(NodeJS和Express)上,並通過公開不同的端點將數據發送到構建可視化的網站。如何從一個NodeJS Web服務器向不同的用戶提供不同的數據?

到目前爲止,服務器僅能夠爲服務器啓動時加載的數據集提供可視化。要更改數據集,需要重新啓動服務器。我們現在正在嘗試允許用戶更改他正在顯示的數據集。問題是我們不知道什麼是最好的方法。該necesary步驟將是未來的:

  • 用戶提供了新的數據集
  • 服務器加載此數據集而不改變該數據集,其他用戶正在使用
  • 的服務器能夠提供每個用戶都有正確的數據集。

基本上,我們的不確定性是關於如何將多個數據集加載到內存中。服務器可能會變得過載。

任何建議?

+0

我自己並沒有真正的專業知識來回答這個問題,但如果您提到您的數據存儲/檢索方式(如您正在使用的數據庫系統,等等)。把它放在標籤中。 –

+0

正如我所解釋的,數據來自數據集(csv,json)。因此,我們沒有使用任何數據庫系統。 –

+0

啊,我不熟悉csv/json數據使用的那個術語,我的不好。 –

回答

0

對於內存管理,您有幾個選擇。您可以爲所有內容分配足夠的內存,並溢出交換。或者,更復雜的是,將文件存儲在磁盤上,並使數據集遵循緩存模式。使用固定大小的lru緩存將允許您擁有磁盤空間的數據集數量儘可能多,但要注意的是,當數據集從磁盤讀取到內存中時,返回的用戶可能不得不等待一兩秒鐘。

相關問題