Как хранить данные JSON на диске?
Я совершенно новичок в JSON, и мне, возможно, придется использовать его в будущем, поэтому я сделал некоторые чтения об этом. Есть много вопросов относительно JSON на SO. Я нашел кучу статей с помощью google, я читал json.org но я не понимал, как хранить данные JSON.
JSON is-это легкий формат обмена данными. Так как я храню свои данные? В ? В база данных? Разве это имеет значение?
Я могу использовать его для передачи данных jsTree (jsTree-это основанный на javascript компонент дерева кросс-браузера. Он упакован как плагин jQuery.) Это было бы с Wordpress. Я пытаюсь понять, как я буду хранить данные? В файле? Текстовый файл? В базе данных Wordpress? Какой из них быстрее? Лучше использовать?
ТЕКУЩЕЕ СОСТОЯНИЕ перед любым кодированием,нет приложения, работающего
- я готовлю исходные данные и до сих пор моя исходный файл csv 235KB in размер около 700lines (линия = будущих узлов/листьев). Я использую csv-файл только для сбора данных, затем я загружу / обновлю источник данных на веб-сервере.
- число будет расти скажем каждую неделю на 5-10.
- файл на моем локальном компьютере и сохраняются (почему-то) на сервере хостинга. Обратите внимание, что я буду использовать все приложение jsTree+JSON в Wordpress
- я думаю, я могу использовать это: теперь проанализируйте клиентскую сторону json с помощью Wordpress
4 ответов
Я думаю, первое, что нужно понять, это то, что JSON-это всего лишь один из способов представления информации. Вы можете хранить данные, как вам нравится. Если у вас есть реляционная база данных, вы, вероятно, можете придумать разумный способ преобразования данных и обратно.
{
"id": 321
"name" : "Jim",
"age" : 27,
"email" : "jim@jimsoft.com"
}
может быть представлен в XML как
<person>
<id>321</id>
<name>Jim</name>
<age>27</age>
<email>jim@jimsoft.com</email>
</person>
или может храниться в таблице, которая выглядит как
_______________________________________
| id | name | age | email |
========================================
|321 | Jim | 27 |jim@jimsoft.com |
----------------------------------------
Так что если вы можете хранить информацию, которую вы хотите. Вы просто нужен какой-то способ, чтобы сериализовать/восстановить данные в любой форме, вы хотите.
все, что было сказано, Если вам нужно магазине JSON и сохранение его в виде файла не будет работать, вы, вероятно, хотите посмотреть на CouchDB или в MongoDB. Они документно-ориентированных баз данных, хранятся документы JSON. Они позволят вам хранить любые документы JSON, которые вы хотите. Вы можете создавать представления и запрашивать данные напрямую без необходимости преобразование данных в различные формы.
Что-то вроде CouchDB-это база данных, которая хранит ее внутри файла. Большинство людей вообще не / хранят / JSON, они генерируют и отправляют его или анализируют и обрабатывают.
JSON-идеальный формат для сериализации данных, но к нему применяются те же предостережения, что и к любому другому формату сериализации. Вы храните XML в БД? Обычно нет. Разница в том, что XML приносит жертвы, чтобы включить использование людей, а JSON делает жертвы легко разбираемыми и быстрыми.
в формате JSON на самом деле это не замена CSV. Подумайте о CSV как о свободно сформированном табличном механизме сброса. Было бы не слишком разумно иметь экспорт JSON в excel.
погода вы храните его в базе данных или в файле на самом деле не имеет значения. Дело в том, что вам нужно иметь возможность получить его как строку (используя HTTP или какой-то серверный скрипт).
например, если вы сохраните его как файл с именем Data.json вы можете использовать ajax для его извлечения, но если вы храните его в базе данных, вам нужно использовать какой-то серверный сценарий (вы все равно можете использовать ajax).
Если у вас есть опыт работы с xml, просто подумайте о json как об одном и том же, это просто строковое представление данных.
JSON-это формат обмена. Вы можете сохранить его в файле или БД, если хотите, как и любой другой формат, хотя это хорошая идея зависит от того, что вы делаете.
вы говорите: "до сих пор мой исходный csv-файл имеет размер 235KB с размером около 700lines (узлы/листья)". Вы рассматриваете возможность перехода с CSV на JSON? (На самом деле ты не говоришь.) Вы также говорите: "число будет расти, скажем, каждую неделю на 5-10". Ни CSV, ни JSON не являются оптимальными для больших файлов это будет иметь инкрементные изменения применяются, за исключением CSV вы можете эффективно добавлять данные. Если добавление-это все, что вы делаете, вы можете придерживаться CSV, но если вам нужно сделать другие изменения, я, вероятно, разложу данные в БД, чтобы обновления могли быть сделаны эффективно.
на самом деле количество данных, о которых вы говорите, довольно мало, и с таким небольшим количеством обновлений в неделю вам, вероятно, не нужно беспокоиться об эффективности. Делай, что хочешь. :-)