Архитектура программного обеспечения
Архитектура, ориентированная на базы данных или архитектура, ориентированная на данные, имеет несколько различных значений, обычно относящихся к архитектурам программного обеспечения , в которых базы данных играют решающую роль. Часто это описание призвано противопоставить проект альтернативному подходу. Например, характеристика архитектуры как «ориентированной на базу данных» может означать любую комбинацию следующих характеристик:
- использование стандартной системы управления реляционными базами данных общего назначения в отличие от настраиваемых структур данных и методов доступа в памяти или файлах . С развитием сложного программного обеспечения СУБД , большая часть которого либо бесплатна, либо включена в операционную систему , разработчики приложений стали все больше полагаться на стандартные инструменты баз данных, особенно ради быстрой разработки приложений .
- использование динамической логики, управляемой таблицами , в отличие от логики, реализованной в ранее скомпилированных программах . Использование табличной логики, то есть поведения, которое в значительной степени определяется содержимым базы данных, позволяет программам быть более простыми и гибкими. Эта возможность является центральной особенностью динамических языков программирования . См. также управляющие таблицы для таблиц, которые обычно закодированы и встроены в программы как структуры данных (т. е. не скомпилированы операторы), но могут в равной степени считываться из плоского файла , базы данных или даже извлекаться из электронной таблицы .
- использование хранимых процедур , которые выполняются на серверах баз данных , в отличие от большей зависимости от логики, работающей на серверах приложений среднего уровня в многоуровневой архитектуре . Степень, в которой бизнес-логику следует размещать на внутреннем уровне, а не на другом уровне, является предметом постоянных дискуссий. Например, Toon Koppelaars представляет подробный анализ альтернативных архитектур на базе Oracle , которые различаются размещением бизнес-логики, и приходит к выводу, что подход, ориентированный на базы данных, имеет практические преимущества с точки зрения простоты разработки и удобства обслуживания. [1]
- использование общей базы данных в качестве основы для взаимодействия между параллельными процессами в распределенных вычислительных приложениях в отличие от прямого межпроцессного взаимодействия через функции передачи сообщений и промежуточное программное обеспечение, ориентированное на сообщения . Потенциальное преимущество архитектуры, ориентированной на базу данных, в распределенных приложениях заключается в том, что она упрощает проектирование за счет использования обработки и индексирования транзакций, предоставляемых СУБД , для достижения высокой степени надежности, производительности и емкости. [2] Например, Base One описывает архитектуру распределенных вычислений, ориентированную на базу данных, для распределенных и кластерных вычислений и объясняет, как эта конструкция обеспечивает повышенную безопасность, отказоустойчивость и масштабируемость . [3]
- общая архитектура предприятия , которая отдает предпочтение общим моделям данных [4], а не позволяет каждому приложению иметь свою собственную, уникальную модель данных.
Была предложена даже экстремально ориентированная на базу данных архитектура, называемая архитектурой только РСУБД [5] [6] , в которой три классических уровня приложения хранятся в пределах РСУБД . Эта архитектура активно использует DBPL (язык программирования баз данных) СУБД. Примером программного обеспечения с такой архитектурой является Oracle Application Express (APEX).
Смотрите также
Рекомендации
- ^ [1] Ориентированный на базы данных подход к разработке приложений J2EE.
- ^ Линд П., Алм М. (2006), «Виртуальная химическая система, ориентированная на базу данных», J Chem Inf Model , 46 (3): 1034–9, doi : 10.1021/ci050360b, PMID 16711722.
- ^ Ориентированные на базу данных грид и кластерные вычисления
- ^ «Революция, ориентированная на данные». TDAN.com . Проверено 9 января 2017 г.
- ^ Висенте, Альфонсо; Эчеверри, Лорена; Сабигеро, Ариэль (2021). «Архитектура веб-приложений только для СУБД». XLVII Латиноамериканская компьютерная конференция (CLEI) 2021 г. стр. 1–9. doi : 10.1109/CLEI53233.2021.9640017. ISBN 978-1-6654-9503-5. S2CID 245387844.
- ^ Висенте, Альфонсо (30 июня 2023 г.). «В защиту экстремальной архитектуры, ориентированной на базы данных». Memoria Investigaciones en Ingeniería . 24 . дои : 10.36561/ing.24.9 . ISSN 2301-1106. S2CID 259690085.