Похоже, у вас есть два источника локального хранилища данных и удаленный сервер.
Этот вопрос о SO может помочь вам решить подходы к хранению данных на сервере.
Как только вы загрузили данные, используя что-то вроде класса NSURLConnection, изображения могут быть сохранены в файловой системе, используя writeToFile или тому подобное.
- (BOOL) writeToFile: (NSString *) путь атомарно: (BOOL) метод флага.
Вы можете сохранить остальные данные в sqlite. Мы использовали sqlite и инфраструктуру CoreData для сохранения данных для одного из наших приложений, и у нас это работало нормально. CoreData позволил нам взаимодействовать с базой данных без реальных запросов SQL.
Клиент iPhone находится на телефоне, а на стороне сервера у нас может быть база данных и веб-сервис, взаимодействующий с БД. Сам веб-сервис может быть реализован на языке сценариев, похожем на python или php. Клиент взаимодействует с веб-сервисом, который может возвращать данные в таких форматах, как XML или JSON. Таким образом, нет прямой связи между клиентом и БД. Однако клиент реализует код сетевой связи для связи с веб-сервисом.
На этой странице показано, как использовать веб-сервис на основе XML.