Определение целевых СУБД и драйверов
Следующим вопросом является то, какие целевые СУБД для приложения доступны и какие драйверы поддерживают эти СУБД? Так как универсальные приложения, как правило, имеют высокую совместимость, вопрос целевых СУБД наиболее применим к пользовательским и вертикальным приложениям. Однако вопрос о целевых драйверах применяется ко всем приложениям, так как драйверы значительно отличаются скоростью, качеством, поддержкой функций и доступностью. Кроме того, если драйверы будут распространяться вместе с приложением, необходимо учитывать затраты и доступность планов лицензирования.
Для многих пользовательских приложений целевые СУБД очевидны: они являются существующими DBMS, к которым приложение предназначено для доступа. DBMS, в которые планируется миграция в будущем, также следует учитывать. Однако основным вопросом для этих приложений является драйвер или драйверы, которые следует использовать с ними. Для других пользовательских приложений — тех, которые не предназначены для доступа к существующей СУБД— целевые СУБД можно выбрать на основе поддержки функций, параллельной поддержки пользователей, доступности драйверов и доступности.
Для вертикальных приложений целевые СУБД обычно выбираются на основе поддержки функций, доступности драйверов и рынка. Например, вертикальное приложение, предназначенное для малого бизнеса, должно нацелено на СУБД, доступные для этих предприятий; Вертикальное приложение, разработанное как надстройка для существующих СУБД, должно быть предназначено для широко используемых СУБД.
При выборе целевых СУБД следует учитывать различия между классическими и серверными базами данных. Классические базы данных, такие как dBASE, Paradox и Btrieve, менее мощны, чем серверные базы данных. Так как они обычно получают доступ через менее мощные подсистемы SQL, найденные в большинстве драйверов на основе файлов, они часто не поддерживают полную поддержку транзакций, поддерживают меньше одновременных пользователей и имеют ограниченный SQL. Однако они недорогие и имеют большую установленную базу.
Серверные базы данных, такие как Oracle, DB2 и SQL Server, обеспечивают полную поддержку транзакций, поддерживают множество одновременных пользователей и имеют широкие возможности SQL. Они гораздо дороже и имеют меньшую установленную базу. С другой стороны, цены на программное обеспечение, как правило, выше, несколько смещают меньший потенциальный рынок.
Таким образом, целевые СУБД иногда можно выбирать на основе функций, необходимых приложению и целевому рынку приложения. Например, система ввода заказов для крупных корпораций может не нацелена на классические базы данных, так как они не имеют достаточной поддержки транзакций. Аналогичная система, разработанная для малого бизнеса, может исключить большинство баз данных сервера на основе затрат. Разработчики универсальных приложений могут использовать обе функции, но избежать использования расширенных функций, найденных в базах данных сервера.