2013-10-17 90 views
0

我有一些存儲爲json的數據,最好是將它們加載到mongodb或couchdb(可能在像Mongolab這樣的遠程主機上),平面文件json數據庫如http://fatfreeframework.com/jig,直接在服務器上解析文件PHP(或節點等)或其他方法?這些文件非常龐大,不得不將它們加載到內存中,但我對任何事情都是開放的。閱讀大型json文件的最佳做法?

+0

我認爲答案取決於你計劃用新格式的數據做什麼。 – hendr1x

+0

我將獲取一些值並通過ajax將它們發送給客戶端。 – jthomasbailey

+0

絕對將它們放入數據庫中。解析幾個GB的一個請求,這是瘋狂的談話。 – McGarnagle

回答

3

這聽起來像你想:

  1. 商店JSON格式
  2. 查詢特定的JSON文件
  3. 返回匹配文件的一小部分,大量的數據

我不會說CouchDB,但在MongoDB中這很容易:

  1. 使用mongoimport將您的JSON文檔加載到MongoDB中。

  2. 指數,你會使用ensureIndex()

  3. 使用find()命令查詢所需的文檔(criteria參數)並回傳目標的關鍵子集(projection參數)

被查詢的字段

這裏主要的限制是你的「巨大的」JSON文檔的大小。 MongoDB將每個文檔限制爲16MB,因此如果它們大於這個大小,你需要去掉一些數據或者做一些花哨的技巧來使它工作。如果他們符合這個限制,那麼MongoDB應該是一個很好的方法來滿足你的要求。