Сохранение извлеченных данных на диске - PullRequest
1 голос
/ 22 марта 2011

Я создаю приложение для iPhone, которое получает информацию с сервера при каждом запуске.Однако я планирую использовать извлеченные данные за последний месяц / несколько месяцев / год для вычисления некоторых средних значений.

Я думал о сохранении их в NSUserDefaults с использованием словарей (связывая дату со значением)., но я только что вспомнил, что существует что-то вроде основных данных.Видя, что у меня нет опыта работы с основными данными, я не знаю, лучше ли это.Если это не так, я мог бы сэкономить время, которое я использовал бы, изучая его иначе.

Данные поступают в формате XML, и я каждый раз получаю несколько наборов одинакового ответа (для разных мест накарта).Количество наборов может меняться, так как пользователь может добавить больше мест.В настоящее время я сохраняю необработанные данные на диск для загрузки только в случае сбоя при следующем запуске.Тем не менее, я также хочу сохранить некоторые конкретные значения из этого XML таким образом, чтобы я мог легко получить к нему доступ.Каков был бы лучший способ сделать это?

Редактировать: Мне также нужно знать, насколько быстры / эффективны основные данные.В настоящее время я передаю NSArrays с NSDictionaries для наборов данных во время этого сеанса.Для сохранения данных, которые длятся дольше, чем данные ядра сеанса, идеально, я обнаружил, что очень много (просто нужно найти хороший способ связать сущность с датой), мне просто нужен совет по эффективности.

Ответы [ 2 ]

2 голосов
/ 22 марта 2011

Если вы собираетесь работать с большими объемами данных, возможно, в любом случае лучше попробовать Core Data, в конце концов, это не так сложно, и есть множество хороших руководств, где вы можете их изучить.Существуют различные настройки для типа хранилища, вы можете использовать базу данных sqlite или xml-файл.

По мнению ребят из Apple, использование Core Data должно быть быстрым и эффективным для использования памяти, в отличие отрешения, поэтому это предпочтительный путь.

1 голос
/ 22 марта 2011

Базовым данным будет проще манипулировать данными и запрашивать данные с использованием предикатов.Базовые данные поддерживают даты, так что вы даже можете найти элементы в диапазонах дат.

...