搜尋

首頁  >  問答  >  主體

mongodb - mongo儲存空間問題

本人剛入行手遊服務端開發,目前在跟一個項目,裡面主要用到mongo db來存儲數據,這兩天糾結於mongo存儲空間的問題:使用數組格式來存儲數據和使用記錄類型格式來存儲數據,哪一種儲存更加節省空間?

  1. 記錄類型格式

    {
       “playerId”:1234,
       “username”:“bob”
       “desc”:“play game”
    }
  2. 數組格式:

{1234,“bob”,“play game”}

問題擴充

  1. 如果使用陣列格式出庫和入庫會不會亂序?例如入庫
    {1,2,3},讀取讀出來會不會成了{2,3,1},目前測試好像不會亂序。我想知道一些mongo底層原理,有什麼好的推薦(網站,書籍,問答)?

  2. 通常你們會比較傾向使用哪種格式來儲存資料?為什麼?

可能問題問得不是很好,望見諒。

黄舟黄舟2796 天前848

全部回覆(4)我來回復

  • 为情所困

    为情所困2017-04-28 09:06:14

    傾向於第一種

    1. 不用那麼在意儲存空間,目前專案中5KW的數據,每條數據10個key左右,索引加數據總的儲存空間也沒有很大,大概不超過100G。

    2. 第一種格式對於查詢更友善。

    3. 本身mongo就是文檔型資料庫,資料會以bson結構儲存(類似json)。

    數組亂序這個不會。

    回覆
    0
  • 世界只因有你

    世界只因有你2017-04-28 09:06:14

    作為文檔性數據,為什麼不選用更方便好用的json来存呢。无论是解析还是装载,都比数组更方便啊。如果用json 還可以避免你說的順序問題。本人猜測資料順序是不會亂的,及時你用數組。依據是mongo是依照檔案空間儲存順序儲存的

    回覆
    0
  • 高洛峰

    高洛峰2017-04-28 09:06:14

    使用 記錄類型格式 來儲存.
    易讀, 易查詢, 易統計. 資料不只是儲存的, 更要易用.
    資料庫層面佔用空間可以忽略, 硬碟是最便宜的資源.

    只要你邏輯上用的資料結構是有序的, 那麼存和讀取都是有序的.

    回覆
    0
  • PHPz

    PHPz2017-04-28 09:06:14

    還是樓上所說json

    回覆
    0
  • 取消回覆