
- •Архітектура систем з базами даних
- •Інформаційне моделювання предметних середовищ
- •Ієрархічна, мережна та реляційна моделі даних
- •Операції реляційної алгебри та їх реалізація на мові sql.
- •Операции над множествами.
- •Специальные реляционные операции.
- •Мова запитів sql. Операція вибірки select.
- •Вкладені та корельовані підзапити в мові sql, агрегатні функції та квантори.
- •Операції модифікації даних у мові sql: update, insert, delete.
- •Теорія нормалізації. Функціональна залежність між атрибутами. Аномалії модифікації у ненормалізованій бд. Переваги нормальних форм. Способи одержання нормальних форм.
- •Моделі взаємодії в архітектурі “клієнт-сервер” та субд, що їх підтримують.
- •Проблеми одночасного доступу користувачів до бд та використання транзакцій.
- •Інтерфейси доступу до бд з різних програмних середовищ.
- •Характеристика сучасних реляційних субд.
- •Еталонна модель взаємодії відкритих систем.
- •Організація доступу до спільного середовища передачі даних csma/cd
- •Стандарти мережі Ethernet на мідному кабелі.
- •Стандарти мережі Ethernet на оптоволоконному кабелі.
- •Організація бездротових комп'ютерних мереж та їх стандарти.
- •Об’єднання сегментів у мережі Ethernet за допомогою концентраторів, комутаторів та маршрутизаторів.
- •Структура та робота комутатора в мережах Ethernet.
- •Інтелектуальні комутатори та віртуальні лом на їх основі.
- •Класифікація лом у відповідності з ieee 802.
- •Аналіз функціонування обчислювальних мереж. Можливості мережних аналізаторів.
- •Призначення та можливості протоколів сімейства tcp/ip.
- •Мережні транспортні протоколи: ipx/spx, NetBios. Особливості та застосування.
- •Кадр инициализации сессии. Кадр подтверждения сессии. Кадр опознания имени.
- •Протокол udp. Структура дейтаграм, застосування.
- •Протокол тср. Структура сегментів, застосування. Встановлення та завершення з'єднання.
- •Адресація у мережних транспортних протоколах.
- •Поняття маршрутизації. Приклад статичної маршрутизації в невеликій мережі.
- •Класифікація протоколів динамічної маршрутизації.
- •Протокол icmp. Призначення, основні типи повідомлень.
- •Система доменних імен dns. Правила делегування зон в Інтернеті.
- •Налагодження системи імен dns для корпоративної мережі. Структура прямої та зворотньої зони dns.
- •Інтерфейс сокетів та його застосування при програмуванні мережних задач. Типи сокетів та сімейства адрес.
- •Передача даних через сокети у режимі дейтаграм.
- •Передача даних через сокети у режимі та сесій.
- •Моделі програмування серверних потокових сокетів.
- •Програмування комунікаційних протоколів прикладного рівня.
- •Архітектура систем з базами даних
Операції реляційної алгебри та їх реалізація на мові sql.
Операция реляционной модели данных состоят из множества операций, получивших название реляционной алгебры. Каждая операция реляционной алгебры используется в качестве операндов одно или два отношения, а ее результатом также является новое соотношение. Коддом были предложены две группы операций по 4 операции:
Традиционные операции над множествами: объединение, пересечение, вычитание и декартовое произведение.
Специальные реляционные операции: селекция, проекция, соединение, деление. Задачей разработчика СУБД является реализация этих операций, а задачей прикладного программиста – их использование для решения каких-то задач.
Операции над множествами.
Объединением двух отношений А и В называется множество всех кортежей, принадлежащих либо А, либо В, либо им обоим.
Пересечением двух отношений А и В называется множество всех кортежей, каждый из которых принадлежит как А, так и В.
Разностью двух отношений А и В называется множество всех кортежей, принадлежащих либо А, но не принадлежащих В.
Декартовым произведением двух отношений А и В называется множество всех кортежей, таких, что каждый их них является конкатенацией кортежей..
Специальные реляционные операции.
Селекцией (SELECT) отношения А по атрибуту x,y (A(x,y)) называется множество всех кортежей из А таких, что истинно утверждение A*X Q A*Y, где Q = { :=, ≠, <, >, >=, <= } (одна из операций сравнения).
С помощью селекции получают горизонтальное подмножество заданного отношения, т.е. подмножество данного отношения, для которого истен предикат.
Проэкцией (PROJECT) отношения А – выборка из каждого картежа отношения указанных атрибутов с последующим исключением (если это необходимо) повторяющихся строк.
Cоединение (JOIN) отношение А по атрибуту x с отношением В по атрибуту y - множество всех картежей, таких, что они являются конкатенацией (сочетаний) всех картежей принадлежащих А с картежами, принадлежащими В, для которых утверждение A.x Q B.y принимает истинное значение. Операция сравнения имеет сходство с декартовым произведением, но в результате отношения попадают только те же картежи, которые удовлетворяют заданному условию.
Имеется несколько вариантов операции JOIN:
Если Q := (равенство), то соединение называется эквисоединением.
Если из результатирующего отношения, полученного в результате эквисоединения один из общих атрибутов отбрасывается, то такое соединение называется естественным соединением.
Если из результатирующего отношения удался оба атрибута, по которым производилось соединение, то оно называется композицией.
Операция деления (DIVIDE) делит отношение А степени 2 на отношение В степени 1 и результатом является отношение С степени 1 с атрибутом, т.е. частное состоит из тех Х компонент делимого, где соответствующая y компоненты делимого включает каждый компонент делителя.
Реляционной модели присущи 2 ограничения целостности:
Целостность по сущностям. Не допускается, чтобы первичный ключ отношения дублировался или принимает неопределенные значения. Применяется для идентификации записей.
Целостность по ссылкам. Внешний ключ отношения всегда должен совпадать со значением первичного ключа связанного с ним отношения. Имеет важное значение при вводе даннных.
С помощью предложения SELECT можно реализовать любую операцию реляционной алгебры.
Селекция (горизонтальное подмножество) таблицы создается из тех ее строк, которые удовлетворяют заданным условиям. Пример:
SELECT *
FROM Блюда
WHER Основа = 'Молоко'
AND Выход > 200;
Проекция (вертикальное подмножество) таблицы создается из указанных ее столбцов (в заданном порядке) с последующим исключением избыточных дубликатов строк. Пример:
SELECT DISTINCT Блюдо, Выход, Основа
FROM Блюда;
Объединение двух таблиц содержит те строки, которые есть либо в первой, либо во второй, либо в обеих таблицах. Пример:
SELECT Блюдо, Основа, Выход FROM Блюда WHER Основа = 'Овощи'
UNION
SELECT Блюдо, Основа, Выход FROM Блюда WHER В = 'Г';
Пересечение двух таблиц содержит только те строки, которые есть и в первой, и во второй. Пример:
SELECT БЛ
FROM Состав
WHERE БЛ IN ( SELECT БЛ FROM Меню);
Разность двух таблиц содержит только те строки, которые есть в первой, но отсутствуют во второй. Пример:
SELECT БЛ
FROM Состав
WHERE БЛ NOT IN ( SELECT БЛ FROM Меню);
Здесь опущено лишь достаточно нудное описание редко встречаемой операция деления, которая также может быть реализована предложением SELECT с коррелированными вложенными подзапросами.