Необработанные ресурсы и база данных SQLite - PullRequest
4 голосов
/ 07 марта 2011

Я создаю приложение, которое будет использовать много данных, которые, для всех намерений и целей, являются статическими.Я предполагал, что было бы наиболее разумно использовать базу данных SQLite для обработки этих данных.Мне интересно, имеет ли смысл просто использовать XML-файл (ы) и затем обращаться к нему как к необработанному ресурсу.Имейте в виду, что вероятно будет много данных, порядка сотен отдельных частей.

Правильно ли я предполагаю, что SQLite лучше всего подходит как для управления памятью, так и для общих соображений проектирования, или SQLite не имеет смысла, если данные в основном статичны?

Ответы [ 3 ]

4 голосов
/ 07 марта 2011

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

  • Будет проще:
    • Извлечь данные
    • Фильтровать данные
    • Сортировка данных
  • Использование файлов XML вызовет некоторые проблемы с производительностью из-за способа синтаксического анализа XML в SAX или DOM.
  • Это будет прощедля вас, чтобы обновить этот набор данных в будущем (представьте, что вы хотите добавить больше данных в следующем выпуске)
0 голосов
/ 17 апреля 2014

Думали ли вы, что ваши данные украдены (из базы данных sqlite)? Потому что в качестве базы данных sqlite любой пользователь с правами root может просто извлечь файл db и использовать его

0 голосов
/ 07 марта 2011

Кристиан прав.База данных дает вам лучшее время доступа и позволяет изменять данные очень удобным способом.XML может быть лучшей идеей в случае древовидных структур данных.

На мой взгляд, здесь есть 2 вопроса:

  1. какие данные вы храните?
  2. Вы разрешаете пользователю изменять эти данные (например, вприложение или с помощью Блокнота)

Есть также один большой недостаток XML - это в конечном итоге открытый текст.Так что каждый может прочитать это.Чтобы предотвратить это, вам придется зашифровать данные (а это требует дополнительных усилий).В случае XML использование методов маршалинга (JiBX, Castor, JAXB) может быть удобным и может также снизить потребление памяти.

Пожалуйста, опишите, какие данные вы храните в БД, чтобы мы могли найти лучший ответ.

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