Последнее десятилетие ХХ в. характеризовалось широкой компьютеризацией всех видов деятельности человечества: от традиционных интеллектуальных задач научного характера до автоматизации производственной, торговой, коммерческой, банковской и других видов деятельности. В условиях рыночной экономики конкурентную борьбу успешно выдерживают только предприятия, применяющие в своей деятельности современные информационные технологии [1].
Именно ИТ, наряду с прогрессивными технологиями материального производства, позволяют существенно повышать производительность труда и качество продукции и в то же время значительно сокращать сроки постановки на производство новых изделий, отвечающих запросам и ожиданиям потребителей. Все сказанное в первую очередь относится к сложной наукоемкой продукции, в том числе к продукции военно-технического назначения [1].
Ведение любой системы, и особенно когда система техническая, характеризуется большим количеством разнообразных параметров, которые необходимо учитывать.
Например, авиационная техника в этом смысле весьма показательна. Наиболее удобным современным средством представления многоуровневой информации об основных параметрах авиадвигателей и их конструктивных элементах является информация различных систем управления базами данных. По такой информации возможно в детальном разрезе оценить параметры изделия и возможности коллектива, его создавшего. Аналогичный анализ можно проводить не только по двигателю в целом, но и по любому его элементу – вплоть до таких базовых элементов, как подшипники. Такую многоуровневую информацию об основных параметрах двигателей и других изделий и техники, и их конструктивных элементах удобно представить в виде баз данных систем управления данными о продукте. Поэтому так важно выбрать подходящую для таких целей не только СУБД, но и технологию которая позволит выполнять такую сложную и необходимую работу [3].
База данных представляет собой структурированный набор данных. Данные, как правило, организованы для моделирования соответствующих аспектов реальности, таким образом, что поддерживают процессы, требующие эту информацию [2].
Почти все современные системы основаны на реляционной (relational) модели управления базами данных. Название «реляционная» связано с тем, что каждая запись содержит информацию, относящуюся только к одному объекту. В таких базах данные не дублируются, а связываются по определенным полям.
Можно выделить три основные функции СУБД:
– определение данных (Data definition) – вы можете определить, какая именно информация будет храниться в вашей базе данных, задать структуру данных и их тип (например, максимальное количество цифр или символов), а также указать, как эти данные связаны между собой. В некоторых случаях вы можете также задать форматы и критерии проверки данных;
– обработка данных (Data manipulation) – данные можно обрабатывать самыми различными способами. Можно объединять данные с другой связанной с ними информацией и вычислять итоговые значения;
– управление данными (Data control) – вы можете указать, кому разрешено знакомиться с данными, корректировать их или добавлять новую информацию. Можно также определить правила коллективного пользования данными.
Известный СУБД включают Oracle, FoxPro, IBM DB2, ЛИНТЕР, Microsoft Access, Microsoft SQL Server, MySQL, Postgre SQL и SQLite. База данных обычно не портативный разных СУБД, но разных СУБД могут взаимодействовать в некоторой степени с помощью стандартов, как SQL и ODBC вместе, чтобы поддержать одно приложение, построенное более чем одну базу данных. СУБД также должна обеспечивать эффективную во время исполнения для правильной поддержки (например, с точки зрения производительности, доступности и безопасности), как многие базы данных конечным пользователям по мере необходимости.
Способ классификации баз данных включает в себя тип их содержимого, например: документ текста, статистические или мультимедийные объекты. Другой способ заключается в их области применения, например бухгалтерский учет, музыкальные композиции, фильмы, банковское дело, производство или страхование.
В настоящее время для построения информационных систем применяются различные системы управления базами данных (СУБД), различающиеся как своими возможностями, так и требованиями к вычислительным ресурсам. Все многообразие применяемых СУБД, однако, можно свести к двум основным их классам: персональные и многопользовательские.
К первому классу относятся СУБД, ориентированные на работу на персональном компьютере (dBASE, FoxPro, MS Access и т.п.). Изначально они поддерживали работу с данными только одного пользователя. Вся СУБД такого класса выполняется как единая программа, таблицы базы данных представляются отдельными файлами на диске того же персонального компьютера. С развитием локальных сетей разработчики СУБД этого класса стали приспосабливать их к работе в сетевой среде, в которой потенциально стало возможным организовать доступ к данным с нескольких персональных компьютеров, включенных в локальную сеть. Файлы базы данных при этом размещаются на файловом сервере. На каждом же рабочем месте работает собственная копия программы-СУБД и прикладная программа, и на их выполнение могут оказывать существенное влияние характеристики компьютера этого рабочего места. Таким образом, при наличии в сети N рабочих мест с одними и теми же данными работают N копий программы-СУБД, одними и теми же данными управляют сразу N копий СУБД. Ошибка в выполнении одной из копий не будет замечена другими копиями. При выполнении запросов к базе данных копия СУБД может либо производить поиск данных в удаленных файлах на файловом сервере, либо копировать все файлы, в которых ведется поиск в свою локальную файловую систему. В первом случае возникают проблемы одновременного доступа к данным при их изменении. Данные, над которыми производятся изменения, должны быть заблокированы. Средства файлового сервера позволяют выполнять блокировку на уровне файлов, но не на уровне записей, что существенно снижает эффективность параллельной работы с базой данных многих пользователей. Во втором же случае, во-первых, требуется передача по сети больших объемов информации, а во-вторых, получается, что разные рабочие места работают с разными копиями данных и эти копии могут стать неидентичными [4, 7].
СУБД второго класса изначально создавались для выполнения на больших компьютерах и обеспечения параллельной работы многих пользователей. Такие СУБД, как правило, состоят из ядра, постоянно присутствующего в памяти (сервера), и большого количества программ-агентов, обслуживающих запросы конечных пользователей и прикладных программ (клиентов). В этом случае и ядро СУБД, и данные находятся на одном и том же компьютере. Одна копия СУБД управляет одной копией данных. Единая управляющая система позволяет эффективно организовать одновременный доступ к данным многих агентов, предотвращая конфликты между ними. Ошибка в работе СУБД локализована и может быть эффективно исправлена самой же СУБД. При работе в условиях сети ядро СУБД выполняет запросы агентов на выборку данных и передает по сети только результаты выборки. Поскольку быстродействие современных дисковых систем обычно выше, чем скорость передачи данных по сети, уменьшение объема передаваемых данных существенно увеличивает общую эффективность работы системы. При этом не накладывается никаких ограничений на масштаб сети, агенты могут быть связаны с ядром СУБД через любую сеть и любые протоколы передачи данных. Многопользовательские СУБД обладают также неоспоримыми преимуществами в таких аспектах, как надежность, безопасность, доступность. Многопользовательские СУБД с самого начала своей истории использовали в качестве интерфейса запросов язык SQL, отсюда произошло одно из их альтернативных названий – SQL-серверы. Хотя в последнее время подмножества SQL становятся доступными и в персональных СУБД, но в эти подмножества не включаются средства обеспечения безопасности и параллельного доступа к данным – те средства, которые персональные СУБД обеспечить просто не могут [4, 7].
При выборе базы данных очень важно выбрать базу данных, которая в наибольшей степени соответствует предъявляемым к информационной системе требованиям, т.е. необходимо определиться, какая модель автоматизации реализуется (автоматизация документооборота). В первую очередь при выборе СУБД необходимо принимать во внимание следующие факторы:
1) максимальное число пользователей, одновременно обращающихся к базе;
2) характеристики клиентского ПО;
3) аппаратные компоненты сервера;
4) серверную операционную систему;
5) уровень квалификации персонала.
Необходимо пояснить, что объектно-реляционных баз данных (ORD), или объектно-реляционная система управления базами данных (ОРСУБД), является система управления базами данных (СУБД) похож на реляционную базу данных, но с объектно-ориентированной модели базы данных: объекты, классы и наследование непосредственно поддерживается в схемах баз данных и в языке запросов. Кроме того, как и с надлежащимм реляционными системами, она поддерживает расширение модели данных с пользовательских типов данных и методов [5].
Объектно-реляционная база данных можно сказать, что обеспечит золотую середину между реляционными базами данных и объектно-ориентированных баз данных (ООСУБД). В объектно-реляционных баз данных, данный подход по существу, что реляционных баз данных: данные хранятся в базе данных и манипулировать коллективно с запросами в языке запросов, а на другом полюсе находятся ООСУБД, в котором база данных является по существу постоянным хранилищем объектов для программного обеспечения написана на объектно-ориентированном языке программирования, с помощью программирования API для хранения и извлечения объектов, и мало или нет конкретная поддержка для запросов [5].
Современная жизнь немыслима без эффективного метода объединения информационных ресурсов и информационных систем. Важной категорией являются СУБД, от которых во многом зависит эффективность работы любого предприятия или компании.
Ниже приведены примеры различных типов баз данных. Некоторые из них не являются основным потоком типов, но большинству из них было уделено особое внимание (например, в исследованиях) из-за требования конечных пользователей. Некоторые существуют как специализированные СУБД, а некоторые их виды функциональность включена в существующие общего назначения СУБД [6].
1. Активная база данных. Активная база данных представляет собой базу данных, которая включает события архитектуры, которые могут реагировать на условия как внутри, так и вне базы данных. Возможные области применения включают мониторинг безопасности, оповещения, сбора статистики и авторизации. Большинство современных реляционных баз данных включают активные функции базы данных в виде триггера базы данных.
2. Облако базы данных. Облако базы данных представляет собой базу данных, которая опирается на облачные технологии. Обе базы данных и большая часть СУБД находятся удаленно, «в облаке», а использование приложения конечным пользователям происходит через веб-браузер и Открытые API.
3. Информационное хранилище. Это Хранилища данных архивных данных из оперативных баз данных и часто от внешних источников, таких как фирмы маркетинговых исследований. Часто оперативные данные трансформируются на их пути в хранилище, то есть склад становится центральным источником данных для использования руководителями и другими конечными пользователями, которые не могут иметь доступ к оперативным данным. Операции в хранилище данных, как правило, связаны с объемной обработкой данных и, таким образом, это неудобно и неэффективно.
4. Распределенная база данных. Определение распределенной базы данных широко и может быть использовано в различных значениях. Обычно относится к модульной архитектуре СУБД, что позволяет сотрудничать с одной СУБД, в то время как управление единой базой данных распределено и функционирует через несколько компьютеров и различные объекты.
5. Документоориентированная база данных. Документоориентированная база данных представляет собой компьютерную программу, предназначенную для хранения, поиска и управления документоориентированных, или полуструктурированных данных, информации. Документориентированные базы данных являются одной из основных категорий так называемых NoSQL баз данных и популярность термина «документоориентированных баз данных» (или «хранилище документов») выросла с использованием термина NoSQL себя. Используемые данные и документы удобно хранить, управлять, редактировать и извлекать.
6. Встроенная база данных. СУБД «скрыта» от конечного пользователя и практически не требует текущего обслуживания. На самом деле это широкая категория, которая включает в себя технологии СУБД с различными свойствами и целевыми рынками. Термин «встроенные базы данных» может ввести в заблуждение, потому что только небольшое подмножество встраиваемых продуктов баз данных используется в режиме реального времени встроенных систем, таких как телекоммуникационные переключатели и устройства потребительской электроники.
7. Конечный пользователь базы данных. Эти базы данных состоят из данных, разработанных отдельными конечными пользователями. Примерами этого являются сборники документов, электронных таблиц, презентаций, мультимедийных и других файлов.
8. Федеративные базы данных и несколько баз данных. Объединения баз данных представляют собой интегрированную базу данных, которая включает в себя несколько различных баз данных, каждая со своей собственной СУБД. Она обрабатывается как единая база данных по базе данных объединения системы управления (FDBMS), который прозрачно интегрируется несколько автономных СУБД, возможно, различных типов (что делает его гетерогенных баз данных). Учредители баз данных связаны между собой через сеть, и могут быть географически децентрализованы. Иногда этот термин используется в качестве синонима для баз данных объединения, хотя оно может относиться к менее интегрированным (например, без FDBMS и управляется интегрированной схемой) группам баз данных, которые сотрудничают в рамках одного приложения. В этом случае обычно промежуточное распределение ключей, которые обычно включает в себя атомную протокол фиксации (ACP), например, двухфазный протокол фиксации, что обеспечивает распределение (глобальной) сделок (по сравнению с местными сделками, ограничивается одной СУБД) среди участвующих баз данных.
9. Граф базы данных. Граф базы данных является своего рода NoSQL базы данных, которая использует графовые структуры с узлами, ребрами и свойства для представления и хранения информации. Главный узел (граф) базы данных, который может хранить любой граф, отличается от специализированных баз данных, таких как граф triplestores и сетевых баз данных.
10. Гипермедиа баз данных. Можно просматривать базу данных, в то время как поисковые роботы и другие программные обеспечения обеспечивают эквивалент индекса базы данных для поддержки поиска и других видов деятельности.
11. Гипертекст базы данных. В базе любое слово или фрагмент текста, представляющий объект, например другую часть текста, статьи, фотографии или фильма, может быть связан с этим объектом. Гипертекст базы данных особенно полезен для организации большого количества разрозненной информации.
12. In-Memory Database. Базы данных в памяти представляют собой базу данных, которая в основном находится в оперативной памяти, но обычно хранится резервной копией в энергонезависимом хранилище. Такие базы данных используются, когда время отклика является критическим.
13. База знаний. Представляет собой особый вид базы данных для управления знаниями, также предоставляют средства для сбора, организации и извлечения информации из таких баз знаний.
14. Оперативные базы данных. Эти базы данных хранят подробные данные о деятельности организации. По существу каждая крупная организация на Земле использует такие базы данных (пример, базы данных клиентов).
15. Параллельные базы данных. Такие СУБД стремятся улучшить производительность за счет распараллеливания таких задач, как загрузка данных, построение индексов и оценке запросов. Параллельные базы данных улучшают обработку и ввод / вывод информации за счет использования нескольких центральных процессоров (CPU) (включая многоядерные процессоры ) и способов хранения информации в параллели между собой. В параллельной обработке многие операции выполняются одновременно, в отличие от последовательной обработки.
Системы без разделения, иногда их называют массовой параллельной обработкой. В этом случае каждый процессор имеет свою оперативную, дисковую память. В этом случае база данных распределена между всеми дисковыми устройствами. Такая архитектура обеспечивает более высокий уровень масштабируемости, а оптимальная производительность будет тогда, когда данные будут вместе, т.е. они будут на кластере. Распределенность снижает производительность.
Параллельные СУБД могут использовать большое число вспомогательных технологий, которые позволяют повысить производительность обработки сложных запросов за счет применения технологии распараллеливания, таких операций, как соединение, сортировка и т.д.
Также необходимо забывать и о безопасности хранения информации в базе данных. Так как чтобы БД хорошо защищала информацию в ней, необходимо чтобы она следовала следующим условиям безопасности: контроль доступа, шифрование, аудит – и имела правильную структуру данных (проектирование баз данных).
Библиографическая ссылка
Прохорова А.М. КЛАССИФИКАЦИЯ И РАЗЛИЧИЯ СОВРЕМЕННЫХ СУБД // Фундаментальные исследования. – 2016. – № 11-1. – С. 80-84;URL: https://fundamental-research.ru/ru/article/view?id=40931 (дата обращения: 17.08.2024).