Назад | Перейти на главную страницу

Какое приложение базы данных лучше всего включить в распространяемое приложение?

MySQL против SQLite, например? Я понимаю, что MySQL сложнее установить и настроить ... Будет ли SQLite или другой db лучше подходить в этом отношении?

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

MySQL - требует настройки - требует создания схемы при установке - очень быстро - много механизмов хранения - имеет много полезных вещей, которые отсутствуют в SQLite

SQLite - требуется только библиотека (и языковые привязки в некоторых случаях, например sqlite3-ruby) - переносимость - вы можете перераспределять базу данных вместе с приложением - требуется регулярная оптимизация (VACUUM) - не слишком быстро - почти невозможно использовать со многими (100.000. 000+) записей

Следует помнить об одном ключевом элементе: лицензии.

Если вы идете коммерческим путем со своим приложением, имейте в виду, что либо вам нужно распространять его по GPL2 (в этом случае вам, среди прочего, нужно сделать исходный код доступным), либо вам нужно получить лицензия от Oracle (предположительно против с трудом заработанных, холодных денег).

Напротив, SQLite находится в всеобщее достояние так что вы можете делать с ним все, что хотите.

При этом sqlite очень легко встроить, поэтому, вероятно, это будет самый простой путь, если его набор функций и профиль производительности работают на вас.