- •Дифференцируемость функции в точке, дифференциал
- •Интерполирование алгебраическими многочленами
- •Двухзвенная (сервер бд)
- •Заливка области, заданной координатами своих вершин
- •Заливка области, заданной цветом границы (заливка с затравкой)
- •По способу задания области делятся на два типа:
- •Основное отличие заливки области с затравкой от заполнения многоугольника:
- •Аддитивная цветовая модель rgb
- •Субтрактивная цветовая модель cmyk
- •Задача определения закона распределения с.В. По статистическим данным.
- •Задача нахождения неизвестных параметров распределения.
- •Задача проверки правдоподобия гипотез.
- •Простой пароль и его модификации
- •2 Основных этапа многокритериальной оптимизации.
- •Обучающие системы – задают вопросы, проверяют знания человека, и дают те знания, которыми он не владеет.
- •Архитектура и основные составные части систем ии.
- •Кластерный анализ.
- •Генетический алгоритм
Двухзвенная (файл-сервер)
Двухзвенная (сервер бд)
Ф
Многотерминальная
На терминал – коды символов
С терминала – коды клавиш
-С арх-ра испол-ся только в локальных сетях!Лок. строятся чаще всего строятся так: для реализации FS необходим файловый сервер, логики DS, PS реализ-ся на клиентской машине. Вся логика реализ-ся только на клиенте. Обработка всех данных происходит на рабочих местах, а сервер используется только как разделяемый накопитель.БД
FS
клиент
Файловый сервер
Сервер приложений
Клиент-серверная арх-ра
«+» К-С: нагрузка сбалансир. м/д кл. и сервером, гибкость, масштабируемость, можно контр-ить целостность БД, трафик минимиз-ся, можно наращивать мощность серверов БД и приложений.
«
Интранет
-» К-С: труднее админить систему.К
Сервер БД
FS, DS, AL, BL
Web-сервер
PL, AL, BL, FS
CGI
лиент-сервернаяв
ся
работа с базой данных происходит на
сервере
клиент
Браузер (VJM)
PS
HTML страницы
Web-сервер –спец. ПО, кот в ответ на запрос usera высылает ему HTML страницы. CGI реализ. BL, AL. Позволяет формир-ть HTML стр-цы «на лету». JAVA-script вып. на клиенской машине браузером.
Базы данных/Управление данными
Олейник А.Г.
Базы данных. Реляционная модель данных: базовые понятия. Целостность БД.
В 60-70 гг. существовала проблема: данные были привязаны к программе (встроены в программу, поэтому возникали след. проблемы: потеря, искажение информации→ ↑ объема обеспечения приводило к хаосу (неуправляемости)), → возникла идея оторвать данные от программы, поэтому и возникла теория БД. Неструктурирован-ть файловой с-мы.
БД – спец. образом орг-ная(структурир-ая) сов-ть данных, предназ-ых для совместного использования при решении данного класса задач.
Модель данных - совокупность правил порождения структур данных, баз данных, операций над ними, ограничений целостности и последовательности измерений. Исторически первые модели данных: иерархическая – представление данных в виде дерева, простота реализации; сетевая – раскладывается на иерархические (граф на деревья), она сложна логически, и. Сложный язык, но указывает связи и их структуру; реляционная исп-ся как теоретическая модель, требует больших ресурсов ЭВМ.
Иерархическая: “+” наглядность, в любой модели можно выделить поддерево и способы описания будут одними и теми же. Легко модифицируется. “-” длинные пути. У каждого потомка единственный предок, объекты взаимосвязаны.
Сетевая: нет ярко выраженной вершины – корня. Все связи представлены в явном виде. “-” кол-во связей для каждого узла м. б. разным. Если удаляем один узел, то корректировка остальных. Исп-ся там, где стр-ра данных не меняется. Каждый объект сам по себе никому не подчиняется.
«-» иерах-й и сет: отсутствие единого мат аппарата, кот бы позволял описать мех-мы манипулирования с данными-> навигационный способ доступа
Реляционная: состоит из набора отношений, вытеснила все остальные. Это есть представление пользователем этой БД в виде совокупности изменяемых во времени нормализованных отношений различных степеней.
Три составные части СУБД: структурная позволяет описывать стр-ру Д; манипуляционная позв раб-ть со стр-рой; целостная(данные не д/б противоречивы).
Кортеж отношения является аналогом строки таблицы. Атрибут отношения (поле, столбец) <Имя_атрибута : Имя_домена>-использование домена внутри отношения Имена атрибутов должны быть уникальны в пределах отношения. Часто имена атрибутов отношения совпадают с именами соответствующих доменов.
Домен - это семантическое понятие. Домен – это область допустимых значений некоторого атрибута. Домен характеризуется следующими свойствами:
Имеется множество D1,D2,…Dnдекартовым произведением D1*D2*…*Dn На практике Домен = тип + огранич. Каждое множество Di – домен – это область допустимых значений атрибутов. N - степень отношения. Число кортежей (кол-во строк) – кардинальное число отношений(мин=0, мах=беск-ть). Реляц отнош наз-ся след стр-ра R(D1,D2,…Dn)= {<d1,d2,…dn>P(d1,…,dn)=TRUE}.В отнош м. выделить 2 эл стр-р: 1. заголовок – перечень имен атрибутов.
Заголовок {имя1:D1; имя2:D2…}, где Di – домен, т. е. полное мн-во значений, которые м. принимать данный атрибут. 2. тело- которое состоит из истинных картежей. Тело {<имя1=зн1; имя2=зн2;…>}.Тело это то, где хранится информация. Строки – записи, столбцы – поле (атрибуты). Реляц. онош. содержит только атомарный зн-я(не имеют внутр стр-ры)Для оперирования такой моделью и. мат. ап-т. Набор атрибутов, которые позволяют однозначно идентифицировать запись наз. ключом. Cв- ва: 1) уникальность 2) неизбыточность – если нельзя удалить ни 1 атрибута, чтобы это не привело к потери уникальности
Целостность: Те атрибуты, кот. удовл. этим условиям наз. потенц. ключом. Реально выбирается 1 из них – он наз. первичным ключом. Внеш. Ключ- группа атр, кот обеспечивает связь атрибутов из разл групп.
Мин. избыточность БД (управляемая) – неодходима для постр. (орг- ции) управления БД.
Типы связей- 1:1(билет на самолет-пассажир), 1:много(один препод-студенты): много –много(ГОСЫ). Связи между табл. реал-ся с помощью внешних (ссылочных) ключей.
Целостность БД: БД в любой момент времени содержит все данные, и данные должны быть не противоречивы. Целостность домена ≈ целостность атрибута (мгновенно). Целостность отношений включает: наличие ключа, атрибуты атомарные, бизнес-правила (опред-ся конкрет областью и работают под конкретную з-чу). Целостность БД: наличие внешних ключей, ссылочная целостность (отложенная). Целостность переходов определяется хранимыми процедурами, н-р если мужчина вдовец, то раннее он был женат, а не холост. [Каждое поле таблицы должно содержать скалярное значение (ограничение – не м.б. 2х одинаковых атрибутов). Атрибут определяется строго на одном домене. Ограничение внешнего ключа. Ограничение, определяемое предметной областью.]
Манипуляционная часть: Осн упр-ия реляц. моделями явл. Реляционная алгебра, включ операции: 1) станд операции над мн-вами: объединение (union, объединяются объекты одного типа), пересечение (что есть и в 1ом и 2ом заголовках), вычитание (minus, что есть в 1ом, но нет во 2ом)) - только одинаковые заголовки, декартово произведение (заголовки разные, результат присоединения заголовков); 2) спец операции рел алгебры: проекции (выбор из отнош опред столбцов, заголовок – атрибуты, по которым строится проекция, тело – кортежи этих атрибутов из 1го отношения, но без повторов), выборка (where, выбрать из отношения кортежи, удовлетворяющие условию, т.е. выбрать строки из столбца), соединение (join, как декартово произведение, но по внешнему ключу как правило. Соединяются те кортежи, которые имеют одинаковые атрибуты). 3) деления, используется крайне редко (результат деления: отношение с заголовком, содерж. атрибуты R1, кот. не входят в заголовок R2, и телом, содержащим соответств. части кортежей отношения R1, т.ч. для каждого кортежа из R1 в R2 существует кортеж с соответствующими значениями). +примеры
Все операции являются замкнутыми R=опер(R)- вх данные-отношения, вых-отношения
Отличие РА от РИ: в РИ описыв-ся треб-ия, предъявляемые к рез-ту(SQL)
Распределенные СУБД: FoxPro, oracle, Access
“+”: 1. Сокращается избыточность данных (экономия). 2. Устраняется противоречивость (легче корректировать). 3. Возможность совместного use информации. 4. Возможность use стандартов. 5. ↑ безопасности данных. 6. Целостность данных (данные согласованы между собой). Все это обеспечивает независимость данных от приложений.
Для пользователя видна логическая структура, а физическая структура скрыта.
Транзакции в базах данных. Управление транзакциями (конфликты, блокировка, сериализация).
Транзакция – это логическая ед-ца работы (единица пользовательской активности по отношению к БД), посл-ть операций изменения БД, воспринимаемое СУБД как атомарное действие и используемая д/ целостности БД. Это преобразование одного ЦС в другое ЦС. При выполнении транзакции БД в нецелостном состоянии. Поддержка механизма транзакций обязательное условие д/ одно- и много- пользовательских СУБД.
Свойства транзакции: атомарность (неделимая, выполняется все или ничего), согласованность (транзакции переводят одно согласованное состояние БД в другое без обязательной поддержки согласованности во всех промежуточных точках), изоляция (транзакции отделены 1 от другой, т. е. если запущено мн-во конкурирующих д/д транзаций, любое обновление определенной из них б. скрыто от остальных до тех пор, пока она выполняется), долговечность (когда транзакция выполнена, ее обновление сохраняется, даже если в следующий момент произойдет сбой системы)
Транзакция начинается с выполнения оператора begin transaction и заканчивается - commit (фиксируется новое ЦС) или rollback (возвращается к предыдущему ЦС).
С-ма поддерживает файл регистрации (журнал) на диске, где записывает детали всех операций обновления. Т. о. при необходимости отмены нек-ого обновления с-ма м. использовать соответствующий журнал д/ возвращения объекта в начальное состояние.
Механизм журнализации (запись об изменении объекта занесена в журнал до того, как б. выполнено и зафиксировано изменение объекта) н. д/ надежности хранения данных. tф – точка фиксации записи состояний; сбой – удаляется (не фиксируется в журнале). Т1 – сохранена полностью, Т2 – откат, Т3 – удалена, т.к. не зафиксирован в журнале.
Сериализ-ия Т:перемешивание запросов и операторов изменения БД, поступающих от разных Т. т.о., что рез-т выполнения всего набора б. эквив-н рез-ту из послед-ого выполнения.
С
ущ-ет
проблема многопользовательского режима
(неск-ко Т работает с одними и теми же
данными) – проблема параллелизма. Для
борьбы сущ-ет мех-зм блокировок: жесткая
X(эксклюзивная) – сохраняет
до полного завершения транзакции; мягкая
S– разрешает считывание,
не разрешает запись. Блокировка
накладываются на кортежи, отношения.
А |
t |
B |
Re |
1 |
|
|
2 |
Re |
WR |
3 |
|
|
4 |
WR |
А |
t |
B |
RE |
1 |
|
WR |
2 |
|
|
3 |
Re |
|
4 |
WR |
откат |
5 |
|
Функциональные зависимости в данных. Нормализация данных. Нормальные формы (1НФ-4НФ).
Нормализация – процесс, механизм, кот-рый позволяет анализировать и улучшать качества отношений, входящих в 1 БД. В БД м. существовать аналогии: включаем, обновляем, удаляем, получаем инфу. Функциональные зависимости (ФЗ) берутся из бизнес-правил(опредл-ся предметной областью). ФЗ используются д/ нормализации.
Цель- максимально упростить манипулирование данными (мин-ть кол-во ФЗ) в каждом отношении, избежать ошибочных обновлений
Функциональная зависимость – пусть существует отношение R(X,Y), где X,Y-произвольные комбинации атрибутов, то Х-ФЗ от У, если УХ (если 2 кортежа отн-ния R совпадают по значению X, они также совпадают и по значению Y). [Y функционально зависит от X, если каждый Х однозначно определяет значение Y.]
S+ - замыкание Ф.З. – множ-во ФЗ, которое. может быть получено на основе заданных ФЗ.
Для получения замыкания use операции
Рефлексивности В содержится в А => А→В
Дополнения А→В => АС→ВС
Транзитивности A→В, В→С => А→С
В БД д. б. как можно меньше ФЗ, но S+ не изменялось.
Множество ФЗ называется неприводимым, если
Правая (завис.) часть ФЗ содержит только 1 атрибут
Левая (детерминант) каждой ФЗ явл. неприводимой – нельзя исключить ни 1 атрибут, не нарушив замыкание ФЗ S+ (или не нарушив ФЗ -???)
Из множества зависимостей не м. б. исключена ни 1 ФЗ без нарушения замыкания.
Процесс нормализации – переход от одной нормальной формы к другой. Существуют и наглядные формы (они вложены).
(Нормализованное) Нормальная форма - формальное свойство отношения, которое характеризует степень избыточности хранимых данных и возможные проблемы.
1НФ. В таблице подтаблиц не существует. Отношение R задано в 1НФ, если оно представлено из неповторяющихся картежей и каждый атрибут в них атомарен. Основной атрибут – атрибут Ai в R, if он входит в состав какого-либо ключа. Реализуется посредством декомпозиции: без потерь, с функцион-ной зав-тью. Атомарные атрибуты, нет одинаковых кортежей.
2НФ – отношение R задано во 2НФ, if оно находится в 1НФ и каждый не ключевой атрибут функционально полно зависит от любого возможного ключа. 2НФ – нет неприводимых зависимостей.
Позволяет разнести незав-мые атрибуты по разным таблицам.
3НФ – отношение R задано в 3НФ, if находится во 2НФ и нет транз зав-ти.
A опред B, BC, то AC (это зав-ть транзитивна)
ABC
AB|BC – нет транзитивной зав-ти (соед-ие 2-х проекций дает исх отнош)
Форма Бойса-Кодда (БКНФ) – отношение R находится в БКНФ, if каждая детерминанта (левая часть ФЗ) является возможным ключом. Нет зав-тей, где детерминанта не ключ. Детерминант – это атрибут, от которого кто-то зависит функционально.
Приведение до 4НФ осущ-ся на основе декомпозиции: эта процедура не уникальна, но должны соблюдаться 2 правила: декомпозиция д. происходить без потерь (не д. теряться св-в); декомпозиция д. происходить с сохр-ем ФЗ.
4НФ-отношение R находится в 4НФ тогда и только тогда, когда существуют такие подмножества А и В атрибутов отношения R, для которых вып-ся нетривиальная многозначная зависимость A ->>B. Тогда все остальные атрибуты отношения R функционально зависят от A.
Исключена многозначная зависимость.
5НФ - проекционно-соединительная, которая не содержит аномалий, которые м.б. исключены за счет декомпозиции (3 и более проекций).
Отношение R находится в 5НФ тогда и только тогда, когда каждая зависимость соединения в отношении R подразумевается потенциальными ключами этого отношения.
На практике применяются с 1 по 3 НФ.
Компьютерная графика/Компьютерная геометрия и графика
Рыженко А.А.
Алгоритмы заливки замкнутых областей.
Существует две разновидности заполнения: 1) первая, связанная как с интерактивной работой, так и с программным синтезом изображения, служит для заполнения внутренней части многоугольника, заданного координатами его вершин. 2) вторая, связанная в первую очередь с интерактивной работой, служит для заливки области, которая либо очерчена границей с кодом пиксела, отличающимся от кодов любых пикселов внутри области, либо закрашена пикселами с заданным кодом.
Заливаемая область или ее граница - некоторое связное множество пикселов. По способам доступа к соседним пикселам области делятся на 4-х и 8-ми связные:
В 4-х связных областях доступ к соседним пикселам осуществляется по четырем направлениям - горизонтально влево и вправо и в вертикально вверх и вниз.
В 8-ми связных областях к этим направлениям добавляются еще 4 диагональных. Используя связность мы может, двигаясь от точки затравки, достичь и закрасить все пикселы области. Важно отметить, что для 4-х связной прямоугольной области граница 8-ми связна и наоборот у 8-ми связной области граница 4-х связна. Поэтому заполнение 4-х связной области 8-ми связным алгоритмом может привести к "просачиванию" через границу и заливке пикселов в примыкающей области. В общем, 4-х связную область мы можем заполнить как 4-х, так и 8-ми связным алгоритмом. Обратное же неверно.
Рис: Связность областей и их границ
П
ростой
алгоритм заливки гранично-определенной
4-х связной области. Рекурсивная реализация
подпрограммы заливки 4-х связной
гранично-определенной области.
Заливка выполняется следующим образом:
1. определяется является ли пиксел граничным или уже закрашенным,
2. если нет, то пиксел перекрашивается, затем проверяются и если надо перекрашиваются 4 соседних пиксела.
