2016-01-13 29 views
0

我正在創建一個將大量數據存儲在服務器中的應用程序。例如待辦事項列表。哪個更好的SQL數據庫或json文件?

用戶來了,每天寫下他的待辦事項列表,如100個任務列表。所以,所有的任務都會像列表(100個字符串)一樣顯示給他。

這將是更好地存儲數據:

  1. SQL表

    todo_table(datetime, user_id, todo_string) 
    
  2. 一個JSON文件

    對於每個用戶都會有一個文件夾,和一天之內的文件夾就像 -

    abc_user(文件夾)

    --> 12/01/16(folder) --> json file 
    --> 13/01/16(folder) --> json file 
    --> 14/01/16(folder) --> json file 
    

    ..和其他用戶類似。

    每個JSON文件將有對象的數組像

    [ 
        { 
         "time":"12:05", 
         "task":"Wake up" 
        }, 
        { 
         "time":"01:10", 
         "task":"Read" 
        }, 
        { 
         "time":"03:15", 
         "task":"Dance" 
        } 
        . 
        . 
        . 
    ] 
    

請告訴我,這將是與延遲,效率,安全性更好的辦法。

SQL可以處理單個表中的大量數據嗎?請記住,每個用戶每天最多可以輸入100個參賽作品,如果有1000個用戶參賽,每天的參賽作品總數將爲10萬。

+0

每天100,000個條目不是很大。 –

+0

@GordonLinoff多少會是非常大的? –

+0

每天100,000個條目每年約有3600萬行。這是很大的,但不是太大的數據「太大」。關係數據庫很容易處理這樣的數量。它每秒稍多於一個插入(打哈欠)。 –

回答

2

一個sql數據庫是唯一的出路。 SQL的任何分發都可以輕鬆處理。你在服務器上做什麼不應該影響延遲。您有很多選擇,包括對數據進行加密,具體取決於SQL分發以確保您的數據庫安全。假設你的索引是穩定的,SQL將比在文件系統中循環,然後解析JSON文件更高效。

+0

我同意,使用JSON文件時,文件系統將高度碎片化,大量小文件未填滿每個磁盤塊。 – Orden

+0

謝謝你的答案.. –

相關問題