| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Базы данных под .NET > Посоветуйте базу данных для C# (.net3.5,.net4 |
| Автор: alexplato 9.9.2012, 13:11 |
| При написании программных продуктов, часто сталкиваюсь с задачей хранить большие объемы данных (300000 - 500000 записей, возможно даже больше). Насколько я понимаю, самым правильным решением является использование здесь баз данных. Таким образом, я сформировал набор требований, которые предъявляю к провайдеру базы данных: 1. Производительность и скорость (объемы информации описал выше. Например это могут быть 500000 записей, хранящих информацию (различные параметры) об объектах недвижимости); 2. Возможность автоматической установки базы данных вместе с моим приложением (например посредством создания инсталлятора в Inno Setup) - чтобы пользователь не утруждал себя лишними действиями для установки еще и базы данных (грубо говоря - чтобы он даже не знал о ее существовании). 3. Работоспособность на популярных ОС (win7,xp,vista) 32 и 64 разрядных. 4. Бесплатная лицензия для коммерческого распространения Уже пробовал разные решения. Сначала использовали sqlite - но при увеличении базы данных, тем более до таких объемов, он работает слишком медленно. Затем задействовали mssql express - но его инсталляция - это какой то ужас (то есть автоматическое скачивание и установка, настроенные в рамках проекта InnoSetup - это не проблема, но вот дальнейшее использование - постоянные проблемы то с правами, то с названием сервера базы, то еще непонятно с чем). Очень нравится вариант mysql - но, насколько я понимаю, его нельзя распространять с коммерческим приложением (точнее можно, но для этого нужно купить commercial license). Еще недавно слышал про firebird, но не пробовал что это за птица такая. Кстати - будет ли нарушением коммерческой лицензии mysql, если Innosetup будет при установке моей программы, автоматически скачивать с официального сайта и устанавливать mysql? Но основной вопрос - какая БД будет соответствовать всем вышеперечисленным требованиям? Также - если у вас есть большой опыт в данном вопросе - готов заплатить за консультацию по данному вопросу и создание небольшого примера инсталлятора десктопного приложения, который будет параллельно автоматически устанавливать базу данных (соответствующую вышеперечисленным требованиям), с которой данное приложение в дальнейшем сможет взаимодействовать. |
| Автор: fedyunina 9.9.2012, 16:54 |
| по-моему, первые 2 пункта и 4й совешенно не совместимы |
| Автор: alexplato 9.9.2012, 17:25 | ||
я бы рассмотрел и платную, но стоимость той же mysql - впечатляет |
| Автор: erm0l0v 17.9.2012, 12:41 |
| Если база локальная то лучше SQL Compact вы решения не найдете. Работает быстро и лишней памяти не жрется. По сравнению с тем же MSSQL при чтении данных объемом в X кб у вас память приложения увеличится на X кб + память под необходимые классы, а в MSSQL на 2*X кб плюс необходимые классы. Да и ставить ничего не надо. Если же база для нескольких машин то тут уже нужно выбирать в зависимости от сервера. |
| Автор: Uvs 6.8.2013, 06:38 |
| Пробуйте Firebird |