Основы моделирования и базы данных

Физическая реализация. Часть 1

В материале изложена логика перехода от логического моделирования данных к физической реализации в конкретной системе управления базами данных. Рассматривается многообразие современных СУБД, критерии их выбора под специфику проекта и причины компромиссного выбора Microsoft SQL Server. Описывается архитектура «сервер – клиентское приложение», этапы установки бесплатной редакции SQL Server Express и среды Management Studio, настройка первого подключения и аутентификации. Финальная часть подводит к практическому созданию физической модели: использованию суррогатных ключей и подготовке к написанию скриптов таблиц.

Основные мысли

В результате изучения лекции слушатель будет способен:
1. Объяснять ключевые критерии выбора реляционной СУБД, исходя из характера нагрузки и типа хранимых данных.
2. Сравнивать реляционные и нереляционные решения, выделяя области их целевого применения.
3. Описывать клиент-серверную архитектуру на примере Microsoft SQL Server и Management Studio.
4. Выбирать подходящую редакцию SQL Server, учитывая лицензионную модель и функциональные ограничения.
5. Выполнять установку SQL Server Express и отдельную инсталляцию Management Studio.
6. Настраивать подключение к экземпляру сервера с использованием Windows-аутентификации или внутренней аутентификации SQL Server.
7. Обосновывать необходимость введения суррогатных ключей при переходе от даталогической схемы к физической реализации.
Показывать лекцию целиком
Краткое изложение
От логической модели к физической реализации

На предыдущем занятии была построена даталогическая схема сети кинотеатров в системе ERwin. Полученная схема содержит нетривиальные связи «многие ко многим» — как идентифицирующие, так и неидентифицирующие — с разной мощностью. Теперь предстоит стадия физического моделирования, то есть реализация этой схемы в рамках конкретной выбранной базы данных.

Многообразие рынка СУБД и критерии выбора

Спектр баз данных чрезвычайно широк: Microsoft SQL Server, MySQL, PostgreSQL и множество других. Крупных вендоров можно насчитать 10–15, не считая узкоспециализированных решений. Такое разнообразие поддерживается потому, что каждое решение обладает собственными достоинствами и недостатками, а идеальной СУБД, одинаково эффективной для любых задач, не существует.

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

Выбор СУБД — результат отдельного сложного исследования, учитывающего специфику решаемой задачи:
• соотношение количества запросов на чтение и запись;
• объём выгружаемых данных;
• сложность запросов (наличие внутренних соединений или их примитивный характер);
• количество одновременных транзакций.

Особую категорию составляют нереляционные (NoSQL) решения: колоночные, файловые, графовые базы данных. Пример — MongoDB, ориентированная на файловое хранение. Такие системы нацелены на хранение информации в неструктурированной исходной форме. Напротив, реляционные базы данных работают со структурированными табличными данными, которые являются конечной точкой любого аналитического процесса. Поэтому реляционные решения остаются обязательным элементом корпоративной ИТ-инфраструктуры. Данный курс посвящён именно реляционным СУБД.

Выбор Microsoft SQL Server как компромиссного решения

Для обучения используется Microsoft SQL Server — компромисс между масштабом и сложностью взаимодействия. Сервер имеет бесплатную открытую версию SQL Server Express, которую можно загрузить с сайта Microsoft. Начиная с версии 16, компания разделила поставку: отдельно загружается сервер базы данных, отдельно — клиентское приложение SQL Server Management Studio (SSMS). В предыдущих версиях они поставлялись единым пакетом.

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

Версии SQL Server различаются по редакциям:
Express — бесплатная, урезанная по функциональности.
Developer — бесплатная для разработчиков, но требует подтверждения статуса.
Standard и Enterprise — платные редакции с расширенными возможностями. Enterprise включает полный набор служб (аналитика, интеграция, отчёты) и лицензируется по числу ядер, что напрямую влияет на производительность за счёт параллельного выполнения инструкций.

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

Установка и первое подключение

Установка SQL Server Express достаточно проста: достаточно следовать мастеру, нажимая «Далее», и опционально задать имя экземпляра (instance). Экземпляр — это изолированный сервер базы данных; на одной физической машине может быть установлено несколько экземпляров (например, из соображений безопасности). В процессе можно назначить системного администратора, выбрав либо учётную запись Windows, либо создав внутреннего пользователя SQL Server.

После установки в списке служб отображаются процессы SQL Server. В расширенных редакциях дополнительно присутствуют службы аналитики, интеграции и отчётов, формирующие архитектуру хранилища данных.

При запуске Management Studio открывается окно подключения, где необходимо указать:
• тип сервера (сервер базы данных, аналитики, отчётов или интеграции);
• имя сервера (локального или удалённого — по IP либо именованному названию);
• способ аутентификации (Windows-аутентификация или SQL Server-аутентификация).

При локальной установке и Windows-аутентификации достаточно выбрать текущего администратора системы. При использовании SQL Server-аутентификации сервер оперирует собственным списком учётных записей. В промышленной среде Management Studio устанавливается на клиентских машинах и подключается к удалённому серверу.

Подготовка к физическому моделированию

Цель — реализовать полученную даталогическую схему на физическом уровне. ERwin позволяет автоматически выгрузить готовый скрипт для создания таблиц, однако решено отказаться от этого по двум причинам. Во-первых, необходимо самостоятельно научиться создавать базу данных и таблицы. Во-вторых, физическое решение будет отличаться введением суррогатных ключей — искусственных идентификаторов, упрощающих связи и повышающих производительность. Такой подход позволяет освоить общие принципы, не углубляясь в настройку конкретного инструмента.

Далее будет продемонстрировано создание базы данных и таблиц в Management Studio с использованием суррогатных ключей, что составит содержание следующей части.

Краткие итоги

Переход от логического проекта к физическому воплощению базы данных невозможно осуществить без осознанного выбора целевой СУБД. Разнообразие доступных сегодня систем — реляционных и нереляционных — ставит архитектора перед необходимостью многофакторного анализа: соотношение операций чтения и записи, сложность запросов, ожидаемый объём данных, бюджет и требования к масштабированию. Отказ от иллюзии существования универсальной СУБД заставляет вырабатывать критерии, в которых технические характеристики и модель лицензирования рассматриваются как неразрывное целое.

Принятие Microsoft SQL Server в качестве компромиссной платформы для обучения демонстрирует прагматичный подход: система сочетает достаточную для промышленной эксплуатации функциональность с относительно низким порогом входа. Появление бесплатной редакции Express и отдельно распространяемой графической среды Management Studio сделало полный цикл разработки доступным вне зависимости от бюджета. Разделение серверной и клиентской частей, впервые реализованное в шестнадцатой версии, не только отражает реальную клиент-серверную архитектуру предприятий, но и формирует у начинающего специалиста правильное понимание распределения ролей: сервер отвечает за хранение и обработку данных, а клиент — за интерфейс взаимодействия.

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

Рынок СУБД и критерии выбора

Современный рынок предлагает десятки систем: Microsoft SQL Server, MySQL, PostgreSQL и множество других. Каждая обладает специфическими достоинствами и недостатками, а универсального идеального решения не существует. При выборе учитываются:
• стоимость и модель лицензирования (на ядро, без привязки, гибрид);
• организация хранения на файловом уровне;
• оптимизация под доминирующий тип данных и профиль нагрузки.

Критически важны параметры будущей эксплуатации: соотношение запросов на запись и чтение, объём извлекаемых данных, сложность запросов и наличие соединений. Существуют также нереляционные (NoSQL) системы — колоночные, файловые, графовые (например, MongoDB). Они хранят неструктурированные исходные данные, тогда как реляционные базы данных работают со структурированной табличной информацией, необходимой для конечного анализа. Компании, как правило, используют оба класса решений, но реляционная СУБД остаётся обязательным элементом. Данный курс сфокусирован именно на реляционных технологиях.

Выбор Microsoft SQL Server и его редакции

Для обучения выбран Microsoft SQL Server — компромисс между масштабом и удобством освоения. Сервер имеет бесплатную редакцию SQL Server Express, загружаемую с сайта Microsoft. Начиная с 16-й версии, SQL Server Management Studio (SSMS) распространяется отдельно от сервера. Это клиентское графическое приложение позволяет подключаться к серверу, создавать таблицы, выполнять запросы и управлять объектами, заменяя командную строку.

Доступные редакции:
Express — бесплатная, ограниченная по функциям.
Developer — бесплатна для разработчиков при подтверждении статуса.
Standard и Enterprise — платные. Enterprise лицензируется по числу ядер, что даёт параллельное исполнение инструкций и включает полный набор служб (аналитика, интеграция, отчёты).

Установка Express проста: достаточно запустить мастер, нажимать «Далее» и опционально задать имя экземпляра (instance). Экземпляр — изолированный сервер; на одной машине их может быть несколько, например, ради безопасности. В процессе выбирается администратор: текущий пользователь Windows или внутренний пользователь SQL Server.

Подключение и Management Studio

При запуске Management Studio открывается окно подключения, где указываются:
• тип сервера (сервер базы данных);
• имя сервера (локальное или IP удалённой машины);
• метод аутентификации: Windows-аутентификация (учётная запись ОС) или SQL Server-аутентификация (внутренние учётные записи).

В рабочей среде Management Studio устанавливается на клиентских компьютерах и соединяется с удалённым сервером. Установка обеих компонент не требует специальных знаний.

Подготовка к физическому моделированию

Итоговая цель — реализовать даталогическую схему в SQL Server. ERwin позволяет выгрузить готовый скрипт, но намеренно выбран ручной способ. Это позволяет:
• научиться самостоятельно создавать базу данных и таблицы;
• осознанно внедрить суррогатные ключи — искусственные идентификаторы вместо составных естественных ключей, что упрощает связи и улучшает производительность.

Дальнейшие шаги будут посвящены непосредственному написанию скриптов и созданию таблиц в Management Studio с использованием суррогатных ключей.

Выводы

1. Идеальной универсальной СУБД не существует, выбор всегда определяется конкретной прикладной задачей и профилем нагрузки.
2. Реляционные и нереляционные системы не конкурируют, а дополняют друг друга: конечный анализ почти всегда опирается на структурированные реляционные данные.
3. Microsoft SQL Server избран как компромиссная платформа, сочетающая промышленные возможности с доступным бесплатным вариантом для обучения.
4. SQL Server Express — полноценная бесплатная редакция, достаточная для освоения физического моделирования и небольших проектов.
5. Начиная с версии 16 сервер базы данных и Management Studio поставляются раздельно, отражая реальную клиент-серверную архитектуру.
6. Экземпляр (instance) позволяет изолировать несколько независимых сред на одном физическом сервере, что важно для безопасности и тестирования.
7. Аутентификация может выполняться средствами Windows или внутренними учётными записями SQL Server; выбор влияет на управление доступом.
8. Лицензирование Enterprise-редакции по числу ядер напрямую связывает стоимость с вычислительной мощностью и параллелизмом.
9. Физическая модель будет отличаться от даталогической введением суррогатных ключей, упрощающих связи и повышающих производительность.
10. Освоение ручного создания таблиц и баз данных принципиально важнее автоматической кодогенерации, так как формирует понимание внутренних механизмов.
11. Установка Express и Management Studio не требует специальных знаний и сводится к стандартному мастеру с минимальным набором решений.
12. Понимание критериев выбора СУБД и архитектуры «сервер-клиент» — необходимый фундамент для дальнейшей разработки физической модели.

Вопросы для самопроверки

1. Какие основные факторы определяют выбор реляционной СУБД для конкретного проекта?
2. Чем принципиально отличаются реляционные базы данных от нереляционных (NoSQL) решений?
3. Почему Microsoft SQL Server назван компромиссным вариантом для обучения?
4. Какие редакции SQL Server доступны и по какому принципу они лицензируются?
5. В чём различие между Windows-аутентификацией и аутентификацией SQL Server при подключении?
6. Для чего на одном физическом сервере может быть установлено несколько экземпляров SQL Server?
7. Какую роль выполняет SQL Server Management Studio и почему она была отделена от сервера?
8. Какие компоненты, помимо ядра базы данных, входят в расширенную редакцию Enterprise и для чего они нужны?
9. Что такое суррогатный ключ и зачем он вводится на этапе физического моделирования?
10. Почему в учебном процессе отказываются от автоматической выгрузки скрипта из ERwin и предпочитают создавать таблицы вручную?
11. Какие настройки необходимо указать в окне первого подключения Management Studio?
12. В чём практический смысл разделения серверной и клиентской частей при развёртывании промышленной системы?
Вернуться к учебному плану