Хранение данных сайта - JSON против SQL - PullRequest
4 голосов
/ 21 июня 2011

Я управляю веб-сайтом, созданным с нуля на PHP и широко использующим AJAX для загрузки страниц внутри сайта.

В настоящее время созданный мною интерфейс 'admin' хранит HTML для каждой страницы, заголовок страницы, пользовательский CSS для этой страницы и некоторые другие атрибуты в JSON в каталоге файлов (например, example.com/hi будет иметь свои данные хранится в example.com/json/hi/data.json).

Является ли это более эффективным (с точки зрения производительности), чем использование базы данных (MySQL) для хранения всего содержимого?

EDIT: Я понимаю, что прямой доступ к файловой системе более эффективен, чем использование базы данных, но я не просто получаю содержимое файла; Мне нужно использовать json_decode для разбора JSON в объект / массив сначала для работы с ним. Удар производительности от этого незначителен?

Ответы [ 2 ]

2 голосов
/ 21 июня 2011

Ваша манера звучит не очень плохо, на самом деле я раньше использовал не очень удачное решение, и оно отлично справляется со своей работой. Но вы можете подумать о более мощном хранилище, как только ваш админ вырастет или возникнет необходимость разделить вещи. Так как есть два способа:

SQL: использование реляционной базы данных, такой как Postgre или MySQL

No-SQL : что, похоже, больше вас интересует, вот почему.

Учитывая, что вы используете ajax для связи и json для хранения, есть MongoDB . Нет SQL подход к хранилищу, который использует синтаксис JSON для запросов. Там даже есть Интерактивное учебное пособие для него!

Когда дело доходит до выступлений, никто не звучит быстрее. Оба движка обычно написаны на C или C ++, то есть для лучшей производительности. Тем не менее, для такой простой структуры, как вы описали, нет более быстрого способа, чем прямой доступ к файлам.

1 голос
/ 21 июня 2011

Это зависит от того, для чего вы используете эти данные.

Если вы обслуживаете только «статические» файлы с почти одинаковыми данными все время, тогда даже статические HTML-файлы рекомендуются для чахнинга.

Если, с другой стороны, вы обрабатываете данные и отображаете их в нескольких формах (поиск, пользовательская статистика и т. Д.), Тогда намного лучше хранить их в какой-то БД

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...