Самое эффективное хранение данных - PullRequest
1 голос
/ 08 марта 2011

Мне нужно преобразовать / преобразовать / обработать TransXchange дамп данных, чтобы уменьшить размер данных, поскольку некоторые из файлов xml могут иметь размер до 400 МБ.У меня есть следующие опции:

  • База данных Sqlite
  • CSV-файлы
  • Двоичная сериализация
  • ?

Чтоявляется лучшим способом уменьшения размеров файлов, чтобы их можно было использовать в приложении Windows Phone 7?

РЕДАКТИРОВАТЬ: я собираюсь создать приложение для планирования поездки, которое позволит пользователям указывать источник и пункт назначения.Затем приложение представит доступные услуги.Внизу у нас есть пятнистое покрытие мобильной широкополосной связи, поэтому я стремлюсь иметь автономное приложение.

Ответы [ 2 ]

5 голосов
/ 08 марта 2011

Этот анализ превосходен для того, чтобы показать вам время сериализации: http://www.eugenedotnet.com/2010/12/windows-phone-7-serialization-comparison/

Для размера ... Довольно легко догадаться, что двоичный файл меньше, чем sqlite (или Sterling), который, в свою очередь, меньше, чемCSV

Однако, если вы рассматриваете обработку 400 МБ данных на телефоне ... тогда я бы сказал, что вы делаете не то, что нужно - отправьте обработку на сервер (в облако?) Ипросто просмотрите итоговые результаты по телефону - подумайте «тонкий клиент».

(Выкл, чтобы вымыть мне рот после всех этих жаргонных слов!)

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

Главный вопрос: что вы собираетесь делать с этими данными?

Если вам просто нужно сохранить данные и файлы в порядке, лучше всего подойдет двоичная сериализация + сжатие (zlib, lzo ...).

CSV вам не поможет.. Вероятно, будет занимать больше, чем XML.

База данных (например, Sqlite) - это самые дорогие условия хранения, но вы можете легче управлять данными и искать их.

...