2012-06-18 2 views
3

Я пишу приложение, которое будет включать взаимодействие с базой данных. Приложение будет использоваться пользователями из шкалы от 100 до 1000, и база данных должна иметь возможность хранить до 100 000 строк данных.Лучший выбор базы данных для моего приложения C#

Раньше я использовал Microsoft Access, но мои пользователи должны были установить механизм базы данных Microsoft для доступа к моему приложению для работы по назначению. Я хочу, чтобы мое приложение было как можно легким/переносным, так что есть ли какие-то лучшие альтернативы, когда пользователям не потребуется устанавливать какие-либо сторонние компоненты для запуска моего приложения?

+2

Это очень сильно зависит от того, является ли это клиентским приложением, где они будут хранить данные на своей локальной машине, или если это клиент-серверное приложение, где они будут работать с локальным графическим интерфейсом, который взаимодействует с сервером в другом месте. Можете ли вы указать это требование? – djdanlib

+0

это клиентский сервер или веб-приложение? – Brian

+1

Как написано, этот вопрос слишком широко открыт. Расценивается ли стоимость? Какое приложение? Какое знание у вас/вашей компании есть в поддержке базы данных? –

ответ

1

В зависимости от того, будет ли БД на стороне сервера или на стороне клиента.

Если это серверная сторона, это зависит от вас, я бы лично пошел SQL Server, как я знаю, что лучше всего, или даже mySql/phpMyAdmin комбо. Но если он находится на клиентской машине, попробуйте SQLite (просто предупреждение, хотя это точно так же, как следует из названия, LITE, поэтому многие более сложные SQL могут не поддерживаться). SQLite может быть именно тем, что вы ищете, в зависимости от сложности вашего проекта.

ТАКЖЕ: SQLite поддерживается также на iPhone, Blackberry и Android. Поэтому, если вы хотите пойти на мобильный, никаких проблем.

+0

Именно то, что я ищу. Благодарю. – user1295450

+0

Несомненно. Пожалуйста, примите ответ, если он вам поможет, нажав галочку. – PaulG

+0

SqLite не предназначен для такого типа нагрузки. Его лучше всего использовать с помощью механизма базы данных, который работает как служба (SQLServer, MySql, Oracle и т. Д.). – tsells

1

Приложение может подключаться к базе данных облаков (например, SQL Azure). Это не потребует каких-либо сторонних компонентов, и оно будет доступно из любого места или любого устройства.

1

Посмотрите на mongoDB, это не реляционная база данных с открытым исходным кодом, которая подняла популярность. Его тоже очень быстро.

+0

И это WEB ШКАЛА! – djdanlib

1

Вам нужна только одна база данных для всех пользователей или у каждого пользователя есть своя база данных? Если это будет на стороне сервера, я бы предпочел SQL-серверы (например, MSSQL, MySQL). Но для клиентов сторона SQLLite выполнит эту работу.

0

Вы должны подумать над тем, подходит ли модель SaaS, другими словами, если вы могли бы воспользоваться хостингом всех своих баз данных пользователей в облаке и позволить клиентам обращаться к нему с помощью удаленной системы. В вашем сценарии я бы рассмотрел модель SaaS, если: (1) вашим пользователям необходимо увеличить свою индивидуальную базу данных за пределами возможностей их локальной машины, (2) необходимо обмениваться данными между базами данных разных пользователей - или, возможно, это может привести к хорошим функциям, которых у вас нет в вашей системе сегодня, или (3) пользователям требуется перетащить, чтобы запускать базу данных на своей локальной машине, из-за ресурсов, которые она использует, время работы, резервные копии и т. д. Если какой-либо из них иногда верен, размещение всех баз данных в облаке с каким-то многоуровневым соглашением может быть хорошим решением и сделает ваше приложение максимально легким, потому что вам вообще не нужно включать базу данных.

Смежные вопросы