Проектирование баз данных в кратком изложении. Основные этапы разработки баз данных

Наверное, у каждого в детстве были книжки-раскраски. И сделать черно-белую картинку цветной не составляло труда. Просто брали карандаши или краски и раскрашивали картинки в книжке. И какое было удовольствие смотреть, как постепенно черно-белая картинка становилась цветной . Теперь подобное можно проделать в фотошопе, взять и раскрасить черно-белое фото . В процессе раскрашивания будет интересно наблюдать, как меняется фотография. Есть много способов раскрасить черно-белое фото . Я предлагаю один из них. Найдем старую черно-белую фотографию и откроем ее в фотошопе.

1-Файл-открыть.

Прежде,чем приступить к раскраске,нужно посмотреть цветовой режим фотографии. Заходим:

2-Изображение-режим. Перевести фотографию в режим RGB , если она в другом цветовом режиме.

3-Разблокировать фоновый слой, в окне слоев кликнуть по слою "фон" два раза левой кнопкой мышки и, в появившемся окне кликнуть "ok".

Теперь можно приступать к раскраске.

4-Слой-новый-слой. Залить его каким нибудь цветом для фона:

5-Редактирование-выполнить заливку. В окне "заполнить" кликнуть по галочке на первой полосе и выбрать слово "цвет". Появившемся окно палитры цветов, здесь выбрать цвет- 51300d и "ok".

6-Перейти в окно слоев и выбрать для этого слоя режим наложения "цветность".

А фотография станет вот такой:

7-Слой-новый-слой. И сразу в окне слоев выбираем режим наложения "мягкий свет". На этом слое будем красить волосы.

8-На вертикальной панели инструментов кликнуть по кнопке цветов

и, окошке палитры цветов выбрать цвет- 442606. Кликнуть "ok".

9-На панели инструментов выбрать кисть , с мягким краем, размер 16-18 px. и закрасить волосы.

Если где-то закрасили больше, чем надо, можно стереть ластиком, только потом не забыть вернуть кисть. Немного смягчим волосы.

10-Фильтр-размытие-размытие по Гаусу, радиус 6.

Теперь вернемся в окно слоев, на слой с коричневой заливкой, кликнем по этому слою (он станет синим) и добавим к нему маску слоя. Для этого нужно кликнуть по кнопке создания маски. На полосе слоя появиться белый прямоугольник.

Сейчас нужно стереть фон с тех областей, которые будем раскрашивать. Но прежде проверить, что выбрана кисть, а не ластик, в окне слоев слой с маской активен (окрашен в синий цвет), на панели инструментов основной цвет и цвет фона черно-белый. Если цвета другие, то на клавиатуре нажать D (на английской раскладке).

Кистью начинаем стирать коричневый фон на фотографии там, где будет раскрашено.Чтобы удобно было стирать, выбрать на панели инструментов zoom , а вверху такой и, кликнув по фотографии,увеличить ее. Вернуть инструмент кисть, стираем фон кистью.

Стереть фон с лица, рук, с букета цветов, ботинка и цветов на шляпе. Если в каком -нибудь месте стерли больше, то пойти в "редактирование-шаг назад".

Раскрашивать каждую область будем на новом слое.

11-Слой-новый-слой. В окне слоев выбрать режим наложения "мягкий свет". Это слой для лица.

Кликнуть по кнопке цвета на панели инструментов, выбрать цвет f3c28e и кистью раскрасить лицо и руки.

12-Слой-новый-слой, режим наложения "мягкий свет". Здесь красим губы.

Опять кликнуть по кнопке цвета и выбрать цвет b13a48. Кистью с мягким краем покрасить губы.

13-Слой-новый слой, режим наложения "мягкий цвет". Сделаем румянец на щеках. Взять кисть с мягким краем, размер 28 px , цвет, как на губах и кликнуть по каждой щеке.

14-Фильтр-размытие-по Гаусу, радиус 20-25.

16-Слой-новый-слой, режим наложения "мягкий свет". Красим глаза.

17-Клик по кнопке цветов, выбрать цвет для радужки 22406с и кистью с мягким краем,размером с радужку, кликнуть по одному глазу, потом по другому.

18-Слой-новый-слой, режим наложения "цветность". На этом слое покрасим ботинок, цветы в букете и на шляпе. Кликнуть по кнопке цвета, выбрать цвет f48693 .

19-Слой-новый-слой. Режим наложения "цветность" .Этот слой для листьев букета. Цвет 263621.

У каждого из нас имеется дома старый семейный альбом или просто какие-то старые черно-белые фото. А как вам такая идея - взять и сделать фото цветными, наполнить их красками?

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

Открываем наше черно-белое фото с помощью программы Photoshop и в первую очередь мы видим, что фото заблокировано - это видно по замочку у слоя. Разблокируем его, чтобы в дальнейшем можно было с ним работать, кликнув 2 раза левой кнопкой мыши по этому замочку.

Теперь приступаем к раскрашиванию! Сначала давайте раскрасим задний фон фото, сделаем его зеленым, для этого выделяем слой нашего фото кликнув по нему 1 раз левой кнопкой мыши и выбираем в верхнем меню панели "Слои" - "Новый корректирующий слой" - "Цветовой баланс".

После данной манипуляции появится всплывающее окошко с настройками корректирующего слоя, просто нажимаем "ОК", оставляя настройки по умолчанию. После этого в правом верхнем углу появится панелька с "ползунками", с помощью которой мы и настроим цвет нашего фона. Подвигайте "ползунки" и добейтесь необходимого вам оттенка.

Таким образом мы получили второй слой, на котором наше фото стало полностью зеленого оттенка. Теперь мы раскрасим гепарда, для этого снова выделим слой с черно-белым фото, кликнув по нему 1 раз левой кнопкой мыши в нижнем правом углу панели программы, а слой с зеленом оттенком на время скроем, кликнув 1 раз левой кнопкой мыши по значку "Глаз" около данного слоя.

Теперь будем выделять гепарда, для этого воспользуемся инструментом "Быстрое выделение", выберем данный инструмент в левой панели программы и настроим его размер. После этого приступим к выделению гепарда, удерживая левую кнопку мыши выделаем необходимую нам область, если залезли за край или выделилась слишком большая область, ее можно подтереть, удерживая клавишу "Alt" и левую кнопку мыши.

Выделив гепарда снова выбираем в верхнем меню "Слои" - "Новый корректирующий слой" - "Цветовой баланс" и опять же перемещая ползунки добиваемся необходимого нам оттенка.

Во время раскрашивания у вас в любом случае будут залезать поля слоев друг на друга, чтобы это исправить (стереть или добавить) необходимо выбрать нужный слой, кликнув по нему левой кнопкой мыши и с помощью инструмента "ластик" подтереть ненужные края слоя. Если же необходимо наоборот немного дорисовать слой, то выберите инструмент "кисть" и белым цветом закрасьте погрешности. Для мягких переходов выбирайте "мягкую кисть" и режим нажима можете выставить менее 100%.

И так, у нас теперь имеется 3 слоя - это черно-белое фото, изображение зеленого оттенка и выделенный гепард желто-коричневого оттенка. Теперь подставляем гепарду наш зеленый фон, для этого снова включим видимость нашего изображения с зеленым оттенком, выделим его (кликнув левой кнопкой мыши) и просто с помощью инструмента "Ластик" сотрем на нем гепарда, тем самым проявится наш слой с раскрашенным гепардом.

Края гепарда (волоски и т.п.) аккуратно стирайте мягким ластиком, при этом можете регулировать нажим ластика, в местах, где необходима полу-прозрачность слоя. Для удобства не забывайте регулировать размер ластика. В случае помарки (если стерли лишнее), подкрасьте данное место кисточкой белого цвета.

Ну и глаза гепарда раскрашиваем таким же способом: выделаем слой с оригиналом фото, выделаем глаза инструментом "Быстрое выделение" и создаем новый корректирующий слой с необходимым цветовым балансом. Я сделал их ярко-желтыми).

Для того, чтобы цветовой баланс сделать более ярким, в панельке настройки тона (той самой, что с ползунками), выберите в разделе "Тон" метку "Света", как на скриншоте ниже и отрегулируйте ползунками яркость.

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

​Одна из самых знакомых тем превращении сепии в цвет - это «Волшебник страны Оз».

Примечание переводчика: речь идёт о фильме «Волшебник страны Оз», фильм начинается в сепии, а потом появляются цвета, что для кинематографа того времени было уникально.

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

Раскрашивание сепии или чёрно-белой фотографии может показаться настоящим испытанием, на это может потребоваться время и терпение, хотя это может быть намного проще, чем вы думаете. Сегодня я покажу вам процесс раскрашивания фотографии в программе Adobe Photoshop.

Итоговый результат:

Исходные материалы

Изображение, которое я собираюсь использовать в данном уроке, представлено на скриншоте ниже:

Примечание: фотография взята на сайте http://www.loc.gov/

На мой взгляд, с чёрно-белой фотографией намного проще работать, чем с сепией, поэтому первое, что я сделал - это преобразовал фотографию. Это всего лишь моё личное предпочтение, и вам не обязательно это делать, если хотите и вам нравится работать с сепией, то работайте с сепией.

Примечание переводчика: автор преобразовал фотографию в тонах сепии в чёрно-белое изображение с помощью коррекции Чёрно-белое (Black and White).

1. Выберите нужный режим для изображения

Как только вы загрузили фотографию, вам необходимо убедиться, чтобы режим изображения был выставлен на RGB, а не на режим Градация серого (Grayscale), даже если ваше изображение монохромное или чёрно-белое. Чтобы проверить режим, для этого идём Изображение - Режим (Image >Mode), теперь посмотрите, чтобы напротив режима RGB стояла галочка.

2. Начинаем раскрашивать крупные фрагменты изображения

Шаг 1

С помощью инструмента Быстрое выделение ( Quick Select tool), выделите небо или любой другой крупный фрагмент изображения, который представлен одним цветовым оттенком.

С помощью инструмента Быстрое выделение (Quick Select tool), выделите фрагмент изображения, который представлен одним цветовым оттенком, например, небо.

Шаг 2

Нажмите кнопку Уточнить край (Refine Edge).

Используйте инструмент Уточнить край (Refine Edge), чтобы улучшить границы выделенной области.

Шаг 3

В появившемся окне настроек инструмента Уточнить край (Refine Edge), поставьте галочку в окошке Умный радиус (Smart Radius). Я поменял значение радиуса на 5 рх, но вы можете установить другое значение радиуса, которое лучше всего подходит к вашему изображению. Я также увеличил значение Сгладить (Smoth) до 3 пикселей, чтобы смягчить жёсткие края. Вы можете также применить другие настройки данного инструмента, чтобы улучшить границы выделенной области. Когда вы будете готовы, нажмите кнопку "ОК’.

Подберите нужное значение для Умного радиуса (Smart Radius), а также для опции Сгладить (Smooth).

Шаг 4

Итак, мы создали активное выделение, теперь нажмите кнопку Добавить новый корректирующий слой (Add New Adjustment Layer) в нижней части палитры слоёв и в появившемся окне выберите опцию Цвет (Solid Color).

Добавьте корректирующий слой Цвет (Solid Color) через нижнюю часть палитры слоёв.

Шаг 5

Выберите тот цветовой оттенок, который на ваш взгляд больше подходит к небу на вашем изображении. Сейчас не важно, выбрали ли вы слишком яркий цветовой оттенок или нет, мы исправим это через минуту. Как только вы выбрали цветовой оттенок, нажмите кнопку ‘OK’ и вы увидите выделенный фрагмент на маске корректирующего слоя.

Выберите подходящий цветовой оттенок.

Шаг 6

Поменяйте режим наложения на Перекрытие (Overlay), и выбранный цвет будет выглядеть намного лучше. Если вас не устраивает выбранный цвет, то просто дважды щёлкните по голубому прямоугольнику рядом с маской, чтобы появилось окно Палитры цветов (Color Picker), выберите цветовой оттенок, который больше всего вам подходит.

Поменяйте режим наложения на Перекрытие (Overlay).

Шаг 7

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

Исправьте дефекты, оставшиеся после выделения.

3. Выберите фрагменты, имеющие схожие цветовые оттенки

Шаг 1

Повторите технику выделения, которая детально описана в предыдущих шагах, на этот раз выделите зелень моркови и арбуз. Огурец пока не выделяйте, чтобы у нас не все элементы были одного и того же оттенка зелёного цвета. На этот раз я поменял значение Сгладить (Smooth) до 2 рх при уточнении краёв, но опять же, используйте те значения, которые больше всего подходят вам.

Примените инструмент Уточнить край (Refine Edge) к зелени моркови.

Шаг 2

Не снимая активного выделения, добавьте новый корректирующий слой Цвет (Solid Color), точно так же, как вы проделывали это ранее, выберите оттенок зелёного цвета. На данный момент, сохраните степень Непрозрачности (O pacity) для каждого корректирующего слоя на уровне 100%. Это можно будет откорректировать позже, когда мы завершим работу над раскрашиванием.

Добавьте новый корректирующий слой Цвет (Solid Color), выберите оттенок зелёного цвета.

Шаг 3

Поменяйте режим наложения на Перекрытие (Overlay), а затем подберите подходящий цветовой оттенок. Проделайте то же самое для огурца, но только используйте другой оттенок зелёного цвета. Как только вы завершите раскрашивать овощи, далее, мы перейдём к раскраске кожи.

Поменяйте режим наложения на Перекрытие (Overlay).

Результат на данный момент урока.

4. Оттенок кожи и глаза

Шаг 1

Раскрашивайте мужчину и женщину по отдельности, т.к. не похоже, что у них один и тот же оттенок кожи. У мужчины, возможно, немного более обветренная кожа!

Выделите участки кожи, используя технику выделения, которую вы применяли ранее, а также примените уточнение края. Далее, когда вы нажмёте кнопку ‘OK’, нажмите клавишу ‘Q’, чтобы войти в режим Быстрой маски (Quick Mask), а затем с помощью кисти, прокрасьте глаза мужчины, а также другие участки изображения мужчины, к которым вы не хотите добавить оттенок кожи. Нажмите ещё раз клавишу ‘Q’, и вы увидите, что участки, которые были окрашены в красный цвет, не вошли в созданное выделение.

С помощью Быстрой маски (Quick Mask), выделите любые мелкие участки, которые вы не хотите включить в созданное активное выделение.

Шаг 2

При выборе оттенка кожи попробуйте применить несколько цветовых оттенков, чтобы посмотреть, какой цветовой оттенок подходит больше всего, но не забывайте, что из-за режима наложения Перекрытие (Overlay), цветовые оттенки не будут выглядеть по-настоящему ‘истинными’. Поэтому, используйте очень приглушённый розовый / коричневый оттенок вместо персикового цвета, в противном случае, у вас получится кожа с оранжевым свечением!

Выберите бледно-розовые или светло-коричневые оттенки вместо персикового цвета.

Шаг 3

Для раскраски глаз добавьте новый корректирующий слой Цвет (Solid Color) без предварительного создания какого-либо активного выделения, выберите цветовой оттенок. Щёлкните по маске корректирующего слоя, а затем, нажмите клавиши (Ctrl+I) для инверсии маски. Теперь с помощью белой кисти, прокрасьте глаза на маске. Если вы не видите глаз мужчины за стёклами очков, то уменьшите значение Непрозрачности (Opacity) корректирующего слоя до 40%, таким образом, добавив всего лишь лёгкий оттенок цвета.

Если вы раскрашиваете фотографию, где можно увидеть глаза, то запомните, что прокрашивать надо только зрачки глаз.

Добавьте корректирующий слой Цвет (Solid Color) без предварительного создания активного выделения

Мы завершили добавление оттенков кожи.

5. Губы и волосы

Шаг 1

Когда вы завершите раскрашивать кожу и глаза, мы можем добавить немного светотеней, прокрасив губы слегка другим оттенком. Выберите красный / коричневый цвет, а также используйте кисть с низкой непрозрачностью, чтобы добавить немного цвета.

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

Шаг 2

При прокрашивании волос старайтесь обращать внимание на цветовой тон волос на фотографии, чтобы подобрать более подходящий цветовой оттенок, даже если это будет сепия или чёрно-белая фотография. Для волос мужчины я использовал тёмный оттенок, уменьшив непрозрачность (Opacity) слоя до 90%, чтобы немного смягчить тон волос, т.к. очевидно, что мужчина уже пожилой. Что касается женщины, то не похоже, что у неё окрашенные волосы, поэтому я использовал тёмно-серый цвет.

Выберите естественный цвет волос и не забывайте про возраст при выборе оттенка волос.

6. Заключительные штрихи

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

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

Мы раскрасили изображение, но цвета выглядят слишком жестковато.

Поздравляю! Мы завершили урок!

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

Надеюсь, вам понравился данный урок!

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

Содержание проектирования баз данных и этапность

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

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

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

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

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

Это обстоятельство определяет возникновение следующего этапа – появления обеспеченной средствами конкретной СУБД концептуальной модели. Данный шаг соответствует этапу логического проектирования (создания логической модели).

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

Таким образом, основные этапы проектирования в детализированном виде представлены этапами:

  • инфологического проектирования,
  • формирования требований к операционной обстановке
  • выбора системы управления и программных средств БД,
  • логического проектирования,
  • физического проектирования

Ключевые из них ниже будут рассмотрены подробнее.

Инфологическое проектирование

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

  • описание типов объектов,
  • ограничения целостности, связанные с описанным типом,
  • процессы, приводящие к эволюции предметной области – переходу её в другое состояние.

Инфологическую модель можно создавать с помощью нескольких методов и подходов:

  1. Функциональный подход отталкивается от поставленных задач. Функциональным он называется, потому что применяется, если известны функции и задачи лиц, которые с помощью проектируемой базы данных будут обслуживать свои информационные потребности.
  2. Предметный подход во главу угла ставит сведения об информации, которая будет содержаться в базе данных, при том, что структура запросов может не быть определена. В этом случае в исследованиях предметной области ориентируются на её максимально адекватное отображение в базе данных в контексте полного спектра предполагаемых информационных запросов.
  3. Комплексный подход по методу «сущность-связь» объединяет достоинства двух предыдущих. Метод сводится к разделению всей предметной области на локальные части, которые моделируются по отдельности, а затем вновь объединяются в цельную область.

Поскольку использование метода «сущность-связь» является комбинированным способом проектирования на данном этапе, он чаще других становится приоритетным.

Локальные представления при методическом разделении должны, по возможности, включать в себя информацию, которой бы хватило для решения обособленной задачи или для обеспечения запросов какой-то группы потенциальных пользователей. Каждая из этих областей содержит порядка 6-7 сущностей и соответствует какому-либо отдельному внешнему приложению.

Зависимость сущностей отражается в разделении их на сильные (базовые, родительские) и слабые (дочерние). Сильная сущность (например, читатель в библиотеке) может существовать в БД сама по себе, а слабая сущность (например, абонемент этого читателя) «привязывается» к сильной и отдельно не существует.

Следует разделять понятия «экземпляр сущности» (объект, характеризующийся конкретными значениями свойств) и понятие «тип сущности» – объект, для которого характерно общее имя и список свойств.

Для каждой отдельной сущности выбираются атрибуты (набор свойств), которые в зависимости от критерия могут быть:

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

После этого производится спецификация атрибута, спецификация связей в локальном представлении (с разделением на факультативные и обязательные) и объединение локальных представлений.При числе локальных областей до 4-5 их можно объединить за один шаг. В случае увеличения числа, бинарное объединение областей происходит в несколько этапов.

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

Выбор системы управления и программных средств БД

От выбора системы управления БД зависит практическая реализация информационной системы. Наиболее значимыми критериями в процессе выбора становятся параметры:

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

Ошибки в выборе СУБД практически наверняка впоследствии спровоцируют необходимость корректировать концептуальную и логическую модели.

Логическое проектирование БД

Логическая структура БД должна соответствовать логической модели предметной области и учитывать связь модели данных с поддерживаемой СУБД. Поэтому этап начинается с выбора модели данных, где важно учесть её простоту и наглядность.

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

Здесь тоже находит отражение природа проектирования, которая допускает возможность (или необходимость) вернуться к концептуальной модели для её изменения в случае, если отражённые там взаимосвязи между объектами (или атрибуты объектов) не удастся реализовать средствами выбранной СУБД.

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

Схемы базы данных формируются с помощью одного из двух разнонаправленных подходов:

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

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

Физическое проектирование БД

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

Построение физической модели сопряжено с решением во многом противоречивых задач:

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

Вторая задача вступает в конфликт с первой, поскольку, например:

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

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

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



Есть вопросы?

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам: