2016-01-13 6 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 пользователей сделают то же самое, общая запись будет 100 000 в день.

+0

100 000 записей в день не очень большие. –

+0

@ GordonLinoff, сколько было бы очень больших? –

+0

100 000 записей в день около 36 миллионов строк в год. Это большой, но не терабайт данных, которые будут «очень большими». Такой объем легко обрабатывается реляционными базами данных. Это немного больше одной вставки в секунду (зевая). –

ответ

2

База данных sql - единственный способ пойти. Любое распределение SQL сможет справиться с этим с легкостью. То, что вы делаете на сервере, не должно влиять на латентность. У вас есть много вариантов, включая шифрование ваших данных, в зависимости от дистрибутива SQL, чтобы сделать вашу базу данных безопасной. Предполагая, что индексирование является надежным, SQL будет более эффективным, чем цикл через файловую систему, а затем разбор файлов JSON.

+0

Я согласен с файлами JSON, файловая система будет сильно фрагментирована с множеством небольших файлов, не заполняющих каждый блок диска. – Orden

+0

спасибо за ответ .. –