ПРИНЦИПЫ ПРИМЕНЕНИЯ РЕЛЯЦИОННЫХ БАЗ ДАННЫХ НА ПРЕДПРИЯТИЯХ ГРАЖДАНСКОГО СЕКТОРА

Алтынпара Артём Вячеславович1, Хизриев Умар Ибрагимович1
1Военно-медицинская академия имени Кирова

Аннотация
В настоящий момент с базой данных мы сталкиваемся чуть ли не каждый день, посещая различные сайты, видео-хостинги, заказывая товары в интернет-магазинах, делая запросы в государственные инстанции или добавляя нового сотрудника в отдел вместо уволившегося. Но что делать дальше? Как правильно оформить заявку на соответствующий товар (услугу) или какой интерфейс сделать, чтобы пользователю было просто ориентироваться? Какую систему управления базами данных использовать? Какие нужны для этого запросы? Архитектура?
На все эти вопросы есть только один ответ: качественное администрирование. Попытаемся в этом разобраться.

Ключевые слова: , , , , , ,


Рубрика: 05.00.00 ТЕХНИЧЕСКИЕ НАУКИ

Библиографическая ссылка на статью:
Алтынпара А.В., Хизриев У.И. Принципы применения реляционных баз данных на предприятиях гражданского сектора // Современные научные исследования и инновации. 2022. № 10 [Электронный ресурс]. URL: https://web.snauka.ru/issues/2022/10/98944 (дата обращения: 19.04.2024).

Введение

Актуальность разработки (цель исследования) обоснована тем, что в некоторых случаях, особенно на предприятиях, возникают случаи обнаружения некорректной информации в базе данных. Это может быть связано либо с неправильным поисковым запросом, либо с неправильной структурой самого запроса. В первом случае виноват пользователь. Во втором – администратор. Есть ещё одна проблема – торможение (долгий отклик на запрос) самого приложения. Это может быть связано либо с высокой загруженностью серверов, на которых располагаются данные, либо с неправильно подобранной архитектурой (двухзвенной, трёхзвенной).

Перед тем, как приступить к исследованию, необходимо дать определение первостепенным терминам:

1.База данных – совокупность экземпляров различных типов записей и отношений между записями и элементами. База данных – совокупность взаимосвязанных хранящихся вместе данных при наличии минимальной избыточности, допускающей их оптимальное использование одним или несколькими приложениями.

2.IDEF1X ‒ язык моделирования данных для разработки семантики моделей данных. IDEF1X используется для формирования графических представлений информационных моделей, которые отражают структуру и семантику информации внутри среды или системы.

4.PhpMyAdmin – это бесплатный программный инструмент, написанный на PHP, предназначенный для управления администрированием MySQL через Web.

5.MySQL – это система управления реляционными базами данных с открытым исходным кодом (СУРБД), работающая по модели клиент-сервер.

6.Объектно-реляционные СУБД (ОРСУБД) – реляционные СУБД, поддерживающие некоторые технологии, реализующие объектно-ориентированный подход (объекты, классы и наследование реализованы в структуре БД и языке запросов).

7.Транзакция – последовательность операций над БД, рассматриваемых СУБД как единое целое. Инициализируется пользователем или прикладной программой.

Материалы и методы

Предположим, перед нами стоит решение трёх задач:

Задача 1: начислить заработную плату для каждого сотрудника своей фирмы с учётом его социальных надбавок и премий, занести информацию в первый файл.

Задача 2: провести учёт кадрового состава (т. е. занести исходные данные во внешнюю память с возможностью их удаления, корректирования и добавления) во второй файл.

Задача 3: произвести учёт экономии фонда оплаты труда в связи с болезнью некоторых сотрудников. Изменения занести в третий файл.

Это типичные ситуации, возникающие в каждом отделе кадров любой организации. При этом возникают закономерные недостатки:

1.Информация дублируется. В файлах будут присутствовать поля ФИО,

ОКЛ, ПРЕМ и т.д.

2.При внесении изменений (например, фамилии) приходится вносить одно значение в разные файлы и, как следствие, тратить дополнительное время.

3.Потенциальная возможность противоречивости данных (в один файл изменения внесены, в другой – нет).

Все три задачи можно решать, используя общую информационную базу из двух типов записей (находятся в некотором отношении).

В этом случае для решения задач используется некоторый вид данных, формируемый на основе интеграции записей.

Для описания этого вида данных, собственно, и вводится новое понятие – «база данных».

Роль интерфейса между прикладными программами и БД (базой данных), обеспечивающего их независимость, играет программный комплекс – система управления базами данных (СУБД). Её архитектура должна обеспечивать разграничение пользовательского и системного уровней.

Также необходимо дать каждому пользователю своё, отличное от других представление о свойствах хранимых данных.

Говоря об архитектуре, стоит рассматривать два подхода: 2–уровневый (созданный в 1971 году рабочей группой CODASYL и состоящий из системного и пользовательского представлений) и 3–уровневый (созданный в 1978 году комитетом SPARC ANSI и состоящий из внешнего, внутреннего и концептуального уровней).

Касательно внешнего (пользовательского) уровня он относится к основному приложению, с которым взаимодействует БД в режиме реального времени. (к примеру, можно взять программу 1С). Внешнее представление – несколько внешних схем, соответствующих разным пользовательским представлениям данных. Также каждый тип пользователей может применять свой язык общения с БД. Какой бы базовый язык высокого уровня ни использовался, он должен включать в себя подъязык работы с данными (SQL).

Для БД на концептуальном уровне имеется одна концептуальная схема, которая содержит:

1.Сущности, их атрибуты и связи между сущностями.;

2.Ограничения, накладываемые на данные;

3.Семантическую информацию о данных;

4.Обеспечение поддержки целостности данных

Данный уровень поддерживает каждое внешнее представление – любые доступные пользователю данные вычисляются и доступны именно здесь.

Этот уровень не содержит сведений о методах хранения данных.

На внутреннем уровне находится внутренняя схема, описывающая физическую реализацию БД (оптимальная производительность и использование дискового пространства).

Информация, хранимая на внутреннем уровне, распределяет дисковое пространство для сохранения данных и индексов, описывает подробности сохранения записей, сведения о размещении записей, сведения о сжатии данных и выбранных методах шифрования.

Сейчас повсеместно используется трёхуровневая архитектура. Её назначение в том, чтобы низкоуровневые функции никак не влияли на высокоуровневые, в логической независимости (защищённости внешних схем от изменений в концептуальной схеме) и физической (защищенности концептуальной схемы от изменений, во внутренней схеме).

С точки зрения пользователя СУБД реализует следующие высокоуровневые функции:

1.хранение данных;

2.изменение данных;

3.обработка данных;

4.получение выходных документов.

Высокоуровневые функции, в свою очередь, используют следующие низкоуровневые функции:

1.поддержка словаря данных;

2. управление данными во внешней памяти;

3. управление буферами оперативной памяти;

4. управление транзакциями;

5.ведение журнала изменений БД;

6.поддержка целостности и безопасности данных;

7.управление параллельным доступом

Говоря про типовую организацию современной СУБД, стоит отметить два важнейших аспекта:

Ядро СУБД – программный комплекс, обеспечивающий непосредственное выполнение физических операций над БД. Основная резидентная часть СУБД. В архитектуре «клиент-сервер» – основная составляющая серверной части системы.

Среда – совокупность интерфейсных модулей, обеспечивающих связь пользователей с ядром и через него с БД. Включает пользовательские интерфейсы и утилиты администратора БД (АБД).

1. менеджер данных (управление данными во внешней памяти);

2. менеджер буферов (управление буферами оперативной памяти);

3. менеджер транзакций (управление транзакциями);

4. менеджер журнала (журнализация)

Функции компонентов взаимосвязаны. Компоненты взаимодействуют по продуманным протоколам.

Ядро СУБД имеет собственный интерфейс. Он недоступен пользователям напрямую. Используется в программах, производимых компилятором SQL, и утилитах БД.

Транзакция – последовательность операций над БД, рассматриваемых СУБД как единое целое. Инициализируется пользователем или прикладной программой. Транзакция либо успешно выполняется, и СУБД фиксирует произведенные изменения во внешней памяти, либо ни одно из этих изменений не фиксируется (происходит откат). Поддержание механизма транзакций – обязательное условие для любых СУБД (особенно важно для многопользовательских).

Затрагивая тему СУБД стоит их классифицировать:

1.Иерархические СУБД – основаны на иерархической модели. Первые СУБД, 1950–60 годов. (Information Management System фирмы IBM).

2.Сетевые СУБД – основаны на сетевой модели. Первая сетевая СУБД разработана Чарльзом Бахманом в 1960 г. (IDS – Integrated Data Store корп. General Electric).

3.Реляционные СУБД – управляют реляционными базами данных. Практически все разработчики современных приложений баз данных ориентируются на РСУБД.

4.Объектно-ориентированные СУБД – основаны на объектной модели данных (данные – объекты, наделенные свойствами и использующие методы взаимодействия с другими объектами.

5.Объектно-реляционные СУБД (ОРСУБД) – реляционные СУБД, поддерживающая некоторые технологии, реализующие объектно-ориентированный подход (объекты, классы и наследование реализованы в структуре БД и языке запросов). ОРСУБД являются широко известные Oracle Database, Informix, DB2, PostgreSQL.

Все вышеперечисленные СУБД действуют по одному большому паттерну, называемому «Big Data» – совокупности подходов, инструментов и методов обработки структурированных и неструктурированных данных огромных объемов и многообразия для получения воспринимаемых результатов, в условиях непрерывного прироста, распределения по многочисленным узлам вычислительной сети.

Определяющими характеристиками для данного паттерна являются «три V»:

1.объем (Volume) – в смысле физического объема;

2.скорость (Velocity) – в смысле скорости прироста и необходимости высокоскоростной обработки и получения результатов);

3.многообразие (Variety) – в смысле возможности одновременной обработки различных типов структурированных и полуструктурированных данных.

Результаты и их обсуждение

Родоначальником всех современных СУБД является NoSQL. Она применялась к БД, в которых делается попытка решить проблемы масштабируемости и доступности за счет атомарности и согласованности данных. На данный момент самыми распространёнными СУБД являются Oracle 12c, Microsoft sql server и MySQL. В чём же преимущества каждой из них? Какие недостатки в них обнаружены?

Oracle 12c – предназначена для облачных сред и может быть размещена на одном или нескольких серверах, это позволяет управлять базами данных, которые содержат миллиарды записей. Некоторые из функций новейшей версии Oracle включают в себя grid framework и использования как физических, так и логических структур.

Преимущества:

1.Самые свежие инновации и впечатляющий функционал уже внедрены в этом продукте, поскольку компания Oracle стремится держать планку даже на фоне других разработчиков СУБД.

2.Оракул является крайне надёжной, фактически это эталон надёжности среди подобных систем.

Недостатки:

1.Стоимость Oracle может оказаться непомерно высокой, особенно для небольших организаций.

2.Система может потребовать значительных ресурсов уже сразу после установки, поэтому возможно потребуется модернизировать оборудование для внедрения Oracle.

Идеально подходит для крупных организаций, которые работают с огромными базами данных и разнообразными функциями.

MySQL – одна из самых популярных СУБД для веб-приложений. Фактически, является универсальным стандартом для веб-серверов, которые работают под управлением операционной системы Linux. MySQL – это бесплатный пакет программ, однако новые версии выходят постоянно, расширяя функционал и улучшая безопасность. Существуют специальные платные версии, предназначенные для коммерческого использования. В бесплатной версии наибольший упор делается на скорость и надежность, а не на полноту функционала, который может стать и достоинством, и недостатком – в зависимости от области внедрения.

Преимущества:

1.Распространяется бесплатно.

2.Прекрасно документирована.

3.Предлагает много функций, даже в бесплатной версии.

4.Пакет MySQL включен в стандартные репозитории наиболее распространённых дистрибутивов операционной системы Linux, что позволяет устанавливать её элементарно просто.

5.Поддерживает набор пользовательских интерфейсов.

6.Может работать с другими базами данных, включая DB2 и Oracle.

Недостатки:

1.Придётся потратить много времени и усилий, чтобы заставить 2. MySQL выполнять несложные задачи, хотя другие системы делают это автоматически, например: создавать инкрементные резервные копии.

2.Отсутствует встроенная поддержка XML или OLAP.

3.Для бесплатной версии доступна только платная поддержка.

Идеально подходит для: организаций, которым требуется надежный инструмент управления базами данных, но бесплатный.

Ещё одной из популярных СУБД является программный продукт – Microsoft SQL-сервер. Это система управления базами данных, движок которой работает на облачных серверах, а также локальных серверах, причем можно комбинировать типы применяемых серверов одновременно. Вскоре после выпуска Microsoft SQL Server 2016, Microsoft адаптировала продукт для операционной системы Linux, а на платформе Windows он работал изначально.

Преимущества:

1.Продукт очень прост в использовании.

2.Текущая версия работает быстро и стабильно.

3Движок предоставляет возможность регулировать и отслеживать уровни производительности, которые помогают снизить использование ресурсов.

4.Вы сможете получить доступ к визуализации на мобильных устройствах.

5.Он очень хорошо взаимодействует с другими продуктами Microsoft.

Недостатки:

1.Цена для юридических лиц оказывается неприемлемой для большей части организаций.

2.Даже при тщательной настройке производительности SQL Server способен задействовать все что есть.

3.Сообщается о проблемах с использованием службы интеграции для импорта файлов.

4.Есть смысл покупать лицензию на этот продукт, если уже имеется ряд программ Microsoft.

Идеально подходит для: крупных организаций, которые уже используют ряд продуктов Microsoft.

Заключение

Если сравнивать частоту использования реляционных баз данных на момент времени 2017 года и по настоящее время, то лидирующие позиции будут занимать MySQL и MS SQL Server. Первая – из-за того, что есть открытый исходный код СУБД и поддержка веб приложений, что очень актуально. Вторая – из-за бесплатной поддержки, частичного русификатора и интуитивно понятного интерфейса.


Библиографический список
  1. Что такое MySQL/ Hostinger.ru – [Электронный ресурс]. – (дата обращения 19.12.2020).
  2. PhpMyAdmin для .NET / phpmyadmin.net – [Электронный ресурс]. –(дата обращения 19.12.2020).
  3. ER-модель / Wikipedia.org – [Электронный ресурс]. – (дата обращения 19.12.2020).
  4. Что такое Java / Zen.yandex.ru – [Электронный ресурс]. – (дата обращения 19.12.2020).
  5. XAMPP/ Wikipedia.org – [Электронный ресурс]. – (дата обращения 19.12.2020).
  6. NetBeanse / Wikipedia.org – [Электронный ресурс]. – (дата обращения 19.12.2020).
  7. Малков, О. Б. Работа с Transact-SQL [Текст]: учеб. пособие / О. Б. Малков, М. В. Девятерикова; Минобрнауки России, ОмГТУ. – Омск: Изд-во ОмГТУ, 2015.
  8. Евсеева О. Н. Работа с базами данных на языке C#. Технология АDO.NET [Текст]: учеб. пособие / О. Н. Евсеева, А. Б. Шамшев. – Ульяновск: УлГТУ, 2009. – 170 с.


Количество просмотров публикации: Please wait

Все статьи автора «Алтынпара Артём Вячеславович»


© Если вы обнаружили нарушение авторских или смежных прав, пожалуйста, незамедлительно сообщите нам об этом по электронной почте или через форму обратной связи.

Связь с автором (комментарии/рецензии к статье)

Оставить комментарий

Вы должны авторизоваться, чтобы оставить комментарий.

Если Вы еще не зарегистрированы на сайте, то Вам необходимо зарегистрироваться:
  • Регистрация