-Рубрики

 -Музыка

 -Подписка по e-mail

 

 -Поиск по дневнику

Поиск сообщений в TheLenka

 -Статистика

Статистика LiveInternet.ru: показано количество хитов и посетителей
Создан: 03.01.2009
Записей:
Комментариев:
Написано: 265





Проблема информационных хранилищ и складов данных. Хранение больших объёмов данных. Управление складами данных.

Среда, 09 Июня 2010 г. 11:52 + в цитатник

Читать далее...

Серия сообщений "Базы данных":
Часть 1 - Файловые системы. Назначение файловых систем.
Часть 2 - Особенности орган хранения данных
...
Часть 34 - Машины баз данных. Основные архитектуры используемые в машинах баз данных.
Часть 35 - Возможности явного блокирования. Предложение LOCK TABLE.
Часть 36 - Проблема информационных хранилищ и складов данных. Хранение больших объёмов данных. Управление складами данных.
Часть 37 - Сетевые системы (системы, реализующие сетевую модель данных).
Часть 38 - 2)Понятие индекса. Предложения языка SQL CREATE INDEX и DROP INDEX. Параметр UNIQUE.
...
Часть 43 - Метод вспомогательной таблицы для случая произвольного графа. Отличия от случая моделирования иерархий
Часть 44 - Объектно-ориентированная модель и реляционная модель. Сходство и отличия.
Часть 45 - Использование «координатного» метода для моделирования иерархий и произвольных графов. Его достоинства и

Рубрики: 

Возможности явного блокирования. Предложение LOCK TABLE.

Среда, 09 Июня 2010 г. 11:49 + в цитатник

 

Читать далее...

Серия сообщений "Базы данных":
Часть 1 - Файловые системы. Назначение файловых систем.
Часть 2 - Особенности орган хранения данных
...
Часть 33 - Основные положения теории массового обслуживания (теория очередей).
Часть 34 - Машины баз данных. Основные архитектуры используемые в машинах баз данных.
Часть 35 - Возможности явного блокирования. Предложение LOCK TABLE.
Часть 36 - Проблема информационных хранилищ и складов данных. Хранение больших объёмов данных. Управление складами данных.
Часть 37 - Сетевые системы (системы, реализующие сетевую модель данных).
...
Часть 43 - Метод вспомогательной таблицы для случая произвольного графа. Отличия от случая моделирования иерархий
Часть 44 - Объектно-ориентированная модель и реляционная модель. Сходство и отличия.
Часть 45 - Использование «координатного» метода для моделирования иерархий и произвольных графов. Его достоинства и

Рубрики: 

Машины баз данных. Основные архитектуры используемые в машинах баз данных.

Среда, 09 Июня 2010 г. 11:45 + в цитатник

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

Жесткие диски. Магнитные диски были впервые реализованы в начале 50-х годов XX в. в исследовательской лаборатории корпорации IBM в Сан Хосе (Калифорния). В феврале 1954 года впервые данные были переписаны с перфокарт на диск. Устройства внешней памяти – последние компьютерные устройства работающие с «механическими» скоростями. Для работы крупных СУБД остаётся собирать отдельные диски в массивы и представлять их как единый быстродействующий диск.

RAID - Redundant Array of Independent (Inexpensive) Disks (избыточный массив независимых (или недорогих) дисков)

JBOD (Just a Bunch of Disks) Работает по принципу "наполнил одно - заполняй другое". То есть происходит простое соединение емкостей двух дисков. Только после заполнения одного винчестера происходит заполнение другого. Примитивный способ склеивания двух дисков в один.

RAID 0 (Stripe). Режим, при использовании которого достигается максимальная производительность. Не обладая избыточностью, делает весь массив максимально зависимым от сбоев. Данные располагаются поочередно на все диски, что повышает скорость чтения и записи. Используется весь объем дисков. Область применения - приложения, требующие высоких скоростей обмена с диском.

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

RAID 2. Использует некоторые диски для хранения кодов ECC. В остальном - технология Stripe с блоками размером в сектор. Так как большинство дисководов имеют свои коды ECC, а эффективность RAID 2 ниже, чем у RAID 3, этот режим практически не используется.

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

RAID 4. Усовершенствованный вариант RAID уровня 3, отличием которого является использование Stripe-блоков большей величины. Из-за этого становится возможным одновременно совершать операции чтения. С записью все так же плохо, как и у RAID 3, поэтому применяется довольно редко.

RAID 5 - отказоустойчивый массив с распределенным хранением контрольных сумм. При записи поток данных разбивается на блоки (страйпы) на уровне байтов и распределяется на все диски массива.

RAID 6: Двумерная четность для обеспечения большей надежности В отличие от RAID-5, на каждом из дисков массива хранятся два блока четности. RAID-7 - зарегистрированная марка компании Storage Computer Corporation. Структура массива такова: на n-1 дисках хранятся данные, один диск используется для складирования блоков четности.

2)Преожение SELECT языка SQL. Выборка с использованием IN, вложенный SELECT. Подзапрос с несколькими уровнями вложенности. Коррелированный подзапрос.

SELECT column_name FROM table_name; - простейший вариант селекта

Например: - исходная таблица SELECT LastName, FirstName FROM Persons;

- выводится на экран

SELECT * FROM Persons; - выводит всю таблицу

SELECT IN: SELECT column_name FROM table_name WHERE column_name IN (value1,value2,..); SELECT SUM(Sales) FROM Store_Information          WHERE Store_name IN (SELECT store_name FROM Geography WHERE region_name = 'West');

3)Проблема зависимости от незафиксированных обновлений. Способы решения.

Проблема зависимости от незафиксированных обновле­ний состоит в том, что пользователь А может увидеть данные, кото­рые уже были обновлены пользователем В, но эти обновления еще не были окончательно зафиксированы. Далее пользователь В может в силу различных причин, например из-за выявленных ошибок ввода, провести откат базы данных в исходное состояние. Пользо­ватель А в этом случае будет предпринимать действия над ошибоч­ными данными. Иногда для такого рода проблем используется тер­мин «преждевременное чтение» (Dirty read).

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

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

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

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

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

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

 

Серия сообщений "Базы данных":
Часть 1 - Файловые системы. Назначение файловых систем.
Часть 2 - Особенности орган хранения данных
...
Часть 32 - Основные реляционные СУБД: IBM DB2, ORACLE, MS SQL Server, Informix. Сравнение.
Часть 33 - Основные положения теории массового обслуживания (теория очередей).
Часть 34 - Машины баз данных. Основные архитектуры используемые в машинах баз данных.
Часть 35 - Возможности явного блокирования. Предложение LOCK TABLE.
Часть 36 - Проблема информационных хранилищ и складов данных. Хранение больших объёмов данных. Управление складами данных.
...
Часть 43 - Метод вспомогательной таблицы для случая произвольного графа. Отличия от случая моделирования иерархий
Часть 44 - Объектно-ориентированная модель и реляционная модель. Сходство и отличия.
Часть 45 - Использование «координатного» метода для моделирования иерархий и произвольных графов. Его достоинства и

Рубрики: 

Основные положения теории массового обслуживания (теория очередей).

Среда, 09 Июня 2010 г. 11:43 + в цитатник
Рубрики: 

Основные реляционные СУБД: IBM DB2, ORACLE, MS SQL Server, Informix. Сравнение.

Среда, 09 Июня 2010 г. 11:41 + в цитатник

Реляционная база данных - это набор отношений, имена которых совпадают с именами схем отношений в схеме БД. На сегодня известно большое число различных серверов баз данных SQL. Остановимся на следующих четырех ведущих серверных СУБД - Oracle8i, IBM DB2, Microsoft SQL Server и Informix - и сравним их в работе на каждом из основных этапов функционирования.

Oracle8i. Пакет Oracle8i, наделенный самым развитым набором функций для работы с языком Java и доступа к данным через Интернет, системой оптимизации одновременного доступа. Единственным недостатком данной СУБД является сложность администрирования, однако все затраты на ее внедрение и освоение в последствии окупятся эффективной и надежной работой. (сложность и дороговизна-спорны). Среди основных свойств СУБД Oracle следует отметить такие, как: Высочайшая надежность. Возможность разбиения крупных баз данных на разделы (large-database partition), что дает возможность эффективно управлять гигантскими гигабайтными базами; Наличие универсальных средств защиты информации; Эффективные методы максимального повышения скорости обработки запросов; Индексация по битовому отображению; Свободные таблицы (в других СУБД все таблицы заполняются сразу при создании); Распараллеливание операций в запросе. Наличие широкого спектра средств разработки, мониторинга и администрирования. Ориентация на интернет технологии.Решения, не уступающие разработкам Oracle можно найти только в DB2 фирмы IBM. Ориентация на интернет технологии - основной девиз современных продуктов Oracle. В этой связи можно отметить пакеты interMedia, обеспечивающее обработку данных в мультимедийных форматах, и Jserver, встроенное средство для работы с языком Java, которое объединяет возможности языка Java с возможностями реляционных баз данных. Компоненты Enterprise JavaBeans представляют собой базовые модули из которых складываются Интернет-приложения на языке Java. Фирма Oracle придерживается принципа, что всеми важными функциями необходимо управлять из единого центра, поэтому предлагаемый модуль interMedia предоставляет в распоряжение пользователей самые передовые возможности для работы с мультимедийными объектами: Очень развитые средства для обработки аудио клипов; Неподвижных изображений; Видеофрагментов; Географических данных (с целым набором функций связанных с определением местонахождения входящих в состав модуля Locator ). В Oracle8i реализуются лучшие на сегодняшний день средства для объектно-ориентированного конструирования баз данных, в том числе табличные структуры, допускающие наследование свойств и методов других табличных объектов БД, что позволят избежать ошибок при построении БД и облегчает их обслуживание. Также необходимо отметить, что разработанная фирмой Oracle система оптимизации одновременного доступа (multiversioning concurrency) является одной из важнейших характеристик архитектуры Oracle (подобная функция есть лишь в СУБД InterBase компании InterBase компании Inprise). Данная функция позволяет исключить ситуацию, когда одному пользователю приходится ждать, пока другой завершит изменения в содержимое баз данных (т.е. в Oracle отсутствуют блокировки на чтение). Эта функция позволяет СУБД Oracle8i выполнять за секунду больше транзакций в расчете на одного пользователя, чем любая другая база данных. По уровню производительности при работе в WEB среде под LINUX Oracle занимает почетное второе место после СУБД MySQL, при этом значительно превосходя все другие СУБД по надежности и безопасности.

СУБД Microsoft SQL Server Важнейшие характеристики данной СУБД - это: простота администрирования, возможность подключения к Web, быстродействие и функциональные возможности механизма сервера СУБД, наличие средств удаленного доступа, В комплект средств административного управления данной СУБД входит целый набор специальных мастеров и средств автоматической настройки параметров конфигурации. Также данная БД оснащена замечательными средствами тиражирования, позволяющими синхронизировать данные ПК с информацией БД и наоборот. Входящий в комплект поставки сервер OLAP дает возможность сохранять и анализировать все имеющиеся у пользователя данные. В принципе данная СУБД представляет собой современную полнофункциональную база данных, которая идеально подходит для малых и средних организаций. Необходимо заметить, что SQL Server уступает другим рассматриваемым СУБД по двум важным показателям: программируемость и средства работы. При разработке клиентских БД приложений на основе языков Java, HTML часто возникает проблема недостаточности программных средств SQL Server и пользоваться этой СУБД будет труднее, чем системами DB2, Informix, Oracle или Sybase. Общемировой тенденцией в XXI веке стал практически повсеместный переход на платформу LINUX, а SQL Server функционирует только в среде Windows. Поэтому использование SQL Server целесообразно, только если для доступа к содержимому БД используется исключительно стандарт ODBC, в противном случае лучше использовать другие СУБД.

IBM DB2 СУБД IBM DB2 - результат почти 30-х опытно-конструкторских и исследовательских работ фирмы IBM. Последнюю на сегодня версию данной СУБД (6.х) отличает один из наиболее продуманных наборов средств управления и оптимизации и механизм БД, допускающий наращивание от портативного ПК с Windows 95 до целого кластера больших ЭВМ S/390, работающих под управлением OS/390. Пакет DB2 выпускается в двух редакциях: DB2 Workgroup и DB2 Enterprise Edition. В данной СУБД реализованы все известные по предшествующим версиям DB2 новаторские технологии механизма БД, такие, как распараллеливание обработки запроса, полный набор средств тиражирования, сводные таблицы запросов для повышения производительности БД, возможности объектно-ориентированного конструирования баз данных и средства языка Java. К этому надо добавить, что система DB2 оснащена полым набором мультимедиа-расширений, позволяющих сохранять текст, звук и видео- фрагменты, изображения и географические данные и манипулировать ими. Можно говорить, что по возможностям масштабирования разработанная специалистами IBM технология кластеризации баз данных не имеет аналогов. Эти расширения существенно облегчают процесс разработки приложений для Web, а так же программ, содержащих фотоизображения и объемные текстовые отчеты. Система DB2 вполне конкурентоспособна и в качестве платформы для разработки приложжений т.к существует средство Stored Procedure Builder - автоматически преобразовывающее оператор SQL в соответствующий класс Java и включающее его в структуру базы данных. В версии DB2 6.1 значительно улучшена функциональная совместимость с другими СУБД: пакет позволяет использовать разработанную Microsoft спецификацию OLE DB, новый стандарт доступа к базам данных. Средства административного управления СУБД DB2, которые в новой версии переписаны на Java и могут быть получены из Web, заслуживают самой высокой оценки. Основными недостатками данной СУБД является относительная сложность администрирования и отсутствие (пока) реализаций под популярные серверные ОС, например LINUX. В данной СУБД благодаря Index Smart-Guide возможно осуществлять настройку, формируя оптимальные индексы для заданного числа обращений, характеризующего типичную нагрузку на БД. DB2- единственный пакет позволяющий генерировать сводные таблицы, что значительно эффективность работы СУБД в качестве хранилищ данных. Сводная таблица - это временная рабочая область, используемая базой данных для хранения ответов на часто поступающие запросы. Модель DB2 6.1 превращается в самую недорогую из высокопроизводительных систем. Средства административного управления этой СУБД вполне соответствуют уровню решаемых задач, кроме того, она предоставляет исключительно широкие возможности для работы с мультимедиа-данными и для программирования (чего явно недостает системе Microsoft SQL Server).

СУБД от Informix. В последнее время наметился переход от реляционных СУБД к объектно-ориентированным (что явно прослеживается на примере Oracle). Informix также следуя данной концепции анонсировала новое решение СУБД Centaur базирующуюся на реляционной БД Informix Dynamic Server 7.3 и объектно-реляционной БД Informix Universal Data Option и сочетающую в себе высокое быстродействие Dynamic Server при работе с данными с универсальностью и мультимедиа функциями Universal Data Option. Данная реализация предназначена для разработки интернет систем. Предположительно данная СУБД будет обладать гибкой средой разработки, обладающей наращиваемостью, соответствующей характерным для Интернета интенсивным нагрузкам, и средствами работы с новыми типами данных, которые с развитием Web стали использоваться повсеместно. Реализованные в новой системе средства Java позволят разработчикам создавать на этом языке хранимые процедуры, пользовательские программы и компоненты DataBlades, которые в Informix называют

заказными расширениями базы данных. С точки зрения клиентов Inforix, это станет большим шагом вперед, поскольку до настоящего времени при работе с DataBlades они могли пользоваться только языком Си и SPL, внутренним языком фирмы Informix для написания хранимых процедур. Кроме того, пакет Centaur будет оснащен встроенными средствами обработки объектов ActiveX. Это даст возможность, к примеру, создавать хранимые процедуры БД на языке Visual Basic; правда, для этого нужно, чтобы пакет Centaur выполнялся в среде Windows NT. Centaur будет представлять собой надстройку Informix Dynamic Server и работать с традиционным для этого пакета форматом БД, так что в распоряжении пользователей останутся все прежние функции, а модернизация системы до уровня новой версии не будет сопряжена с большими сложностями. Кроме того, в пакете Centaur будут сохранены все возможности конструирования и программирования, благодаря которым система Informix Universal Server признана выдающимся техническим достижением. Новая система будет оснащена средствами объектно-ориентированного конструирования баз данных, создания специализированных таблиц и программ индексирования; в ее состав войдет позволит пользователям встраивать в запросы собственные функции и не полагаться исключительно на стандартные средства SQL. Выводы. Рассмотрев основные характеристики архитектур построения АИС, серверных операционных систем и СУБД в дальнейшем в качестве архитектуры АИС мы выберем архитектуру интернет/интранет, в качестве серверной ОС Linux, в качестве СУБД Oracle 8i.

2)Предложение SELECT языка SQL. Встроенные функции.

SELECT column FROM table WHERE column LIKE pattern

SELECT * FROM Store_Information WHERE store_name LIKE '%AN%‘;

SELECT column_name FROM table_name WHERE column_name BETWEEN value1 AND value2

SELECT * FROM Persons WHERE LastName BETWEEN 'Hansen' AND 'Pettersen';

SELECT * FROM Persons WHERE LastName NOT BETWEEN 'Hansen' AND 'Pettersen';

SELECT Company, OrderNumber FROM Orders ORDER BY(сортировка) Company;

SELECT Company, OrderNumber FROM Orders ORDER BY Company, OrderNumber;

SELECT Company, OrderNumber FROM Orders ORDER BY Company DESC(обратный порядок);

SELECT Company, OrderNumber FROM Orders ORDER BY Company DESC, OrderNumber ASC(прав.порядок);

SELECT * FROM Persons WHERE FirstName='Tove' AND LastName='Svendson';

SELECT * FROM Persons WHERE firstname='Tove' OR lastname='Svendson' ;

SELECT * FROM Persons WHERE (FirstName='Tove' OR FirstName='Stephen') AND LastName='Svendson' ;

SELECT store_name FROM Store_Information WHERE Sales > 1000 OR (Sales < 500 AND Sales > 275);

Функции SELECT function(column) FROM table AVG – среднее значение в столбце; COUNT – число значений в столбце; MAX – самое большое значение в столбце; MIN – самое малое значение в столбце; SUM – сумма значений по столбцу

Примеры: SELECT AVG(Age) FROM Persons; SELECT COUNT(store_name) FROM Store_Information; SELECT COUNT(DISTINCT store_name) FROM Store_Information; SELECT MAX(Age) FROM Persons SELECT SUM(Sales) FROM Store_Information;

3)Cериализация транзакций, конфликты операций. Методы сериализации транзакций. Синхронизационные захваты, гранулированные синхронизационные захваты. Методы сериализации транзакций. Предикатные синхронизационные захваты. Cериализация на основе временных меток.

Чтобы добиться изолированности транзакций, в СУБД должны использоваться методы регулирования совместного выполнения транзакций. План (способ) выполнения набора транзакций называется сериальным, если результат совместного выполнения транзакций эквивалентен результату некоторого последовательного выполнения этих же транзакций. Сериализация транзакций - это механизм их выполнения по некоторому сериальному плану. Обеспечение такого механизма является основной функцией компонента СУБД, ответственного за управление транзакциями. Система, в которой поддерживается сериализация транзакций обеспечивает реальную изолированность пользователей. Основная реализационная проблема состоит в выборе метода сериализации набора транзакций, который не слишком ограничивал бы их параллельность. Приходящим на ум тривиальным решением является действительно последовательное выполнение транзакций. Но существуют ситуации, в которых можно выполнять операторы разных транзакций в любом порядке с сохранением сериальности. Примерами могут служить только читающие транзакции, а также транзакции, не конфликтующие по объектам базы данных. Между транзакциями могут существовать следующие виды конфликтов: W-W - транзакция 2 пытается изменять объект, измененный не закончившейся транзакцией 1; R-W - транзакция 2 пытается изменять объект, прочитанный не закончившейся транзакцией 1; W-R - транзакция 2 пытается читать объект, измененный не закончившейся транзакцией 1. Практические методы сериализации транзакций основывается на учете этих конфликтов.

Существуют два базовых подхода к сериализации транзакций - основанный на синхронизационных захватах объектов базы данных и на использовании временных меток. Суть обоих подходов состоит в обнаружении конфликтов транзакций и их устранении. Наиболее распространенным в централизованных СУБД (включающих системы, основанные на архитектуре "клиент-сервер") является подход, основанный на соблюдении двухфазного протокола синхронизационных захватов объектов БД. В общих чертах протокол состоит в том, что перед выполнением любой операции в транзакции T над объектом базы данных r от имени транзакции T запрашивается синхронизационный захват объекта r в соответствующем режиме (в зависимости от вида операции). Основными режимами синхронизационных захватов являются: совместный режим - S (Shared), означающий разделяемый захват объекта и требуемый для выполнения операции чтения объекта; монопольный режим - X (eXclusive), означающий монопольный захват объекта и требуемый для выполнения операций занесения, удаления и модификации. Гранулированный синхронизационный захват – подход, при применении которого синхронизационные захваты могут запрашиваться по отношению к объектам разного уровня: файлам, отношениям и кортежам. Требуемый уровень объекта определяется тем, какая операция выполняется (например, для выполнения операции уничтожения отношения объектом синхронизационного захвата должно быть все отношение, а для выполнения операции удаления кортежа - этот кортеж). Объект любого уровня может быть захвачен в режиме S или X. Предикатный синхронизационный захват – это захват не объектов, а условий (предикатов), которым удовлетворяют эти объекты.Альтернативный метод сериализации транзакций, хорошо работающий в условиях редких конфликтов транзакций и не требующий построения графа ожидания транзакций. основан на использовании временных меток. Основная идея метода (у которого существует множество разновидностей) состоит в следующем: если транзакция T1 началась раньше транзакции T2, то система обеспечивает такой режим выполнения, как если бы T1 была целиком выполнена до начала T2.

Для этого каждой транзакции T предписывается временная метка t, соответствующая времени начала T. При выполнении операции над объектом r транзакция T помечает его своей временной меткой и типом операции (чтение или изменение). Перед выполнением операции над объектом r транзакция T1 выполняет следующие действия: Проверяет, не закончилась ли транзакция T, пометившая этот объект. Если T закончилась, T1 помечает объект r и выполняет свою операцию. Если транзакция T не завершилась, то T1 проверяет конфликтность операций. Если операции неконфликтны, при объекте r остается или проставляется временная метка с меньшим значением, и транзакция T1 выполняет свою операцию. Если операции T1 и T конфликтуют, то если t(T) > t(T1) (т.е. транзакция T является более "молодой", чем T), производится откат T и T1 продолжает работу. Если же t(T) < t(T1) (T "старше" T1), то T1 получает новую временную метку и начинается заново. К недостаткам метода временных меток относятся потенциально более частые откаты транзакций, чем в случае использования синхронизационных захватов. Это связано с тем, что конфликтность транзакций определяется более грубо. Кроме того, в распределенных системах не очень просто вырабатывать глобальные временные метки с отношением полного порядка.

Серия сообщений "Базы данных":
Часть 1 - Файловые системы. Назначение файловых систем.
Часть 2 - Особенности орган хранения данных
...
Часть 30 - Технология оперативной обработки транзакций – OLTP. Мониторы транзакций на примере IBM CICS и TPF
Часть 31 - Понятие сетевой организации данных. Структуры типа «звезда»,
Часть 32 - Основные реляционные СУБД: IBM DB2, ORACLE, MS SQL Server, Informix. Сравнение.
Часть 33 - Основные положения теории массового обслуживания (теория очередей).
Часть 34 - Машины баз данных. Основные архитектуры используемые в машинах баз данных.
...
Часть 43 - Метод вспомогательной таблицы для случая произвольного графа. Отличия от случая моделирования иерархий
Часть 44 - Объектно-ориентированная модель и реляционная модель. Сходство и отличия.
Часть 45 - Использование «координатного» метода для моделирования иерархий и произвольных графов. Его достоинства и

Рубрики: 

Понятие сетевой организации данных. Структуры типа «звезда»,

Среда, 09 Июня 2010 г. 11:39 + в цитатник

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

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

Отличительные особенности иерархической и сетевой моделей: основной единицей обработки в них является запись в сетевой модели данных обработка может быть начата с записи любого типа независимо от её расположения в БД, и от извлеченной записи возможны переходы как к её подчиненным записям, так и к тем, которым она подчинена; при отображении сетевых структур предметной области в иерархической БД необходимо дублирование данных, при этом семантическая целостность автоматически не поддерживается.

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

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

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

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

Все другие варианты основаны на неполносвязных топологиях, когда для обмена данными между двумя компьютерами может потребоваться промежуточная передача данных через другие узлы сети. Ячеистая топология (mesh) получается из полносвязной путем удаления некоторых возможных связей. Топология Общая шина.

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

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

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

организовать сложную сеть с произвольным графом (компы раскиданы как попало и связаны чем придется :)) и различными весовыми коэффициентами ребер графа (т.е. с различной пропускной способностью между разными компами). Древовидные структуры данных более удобны для реализации в памяти ЭВМ, чем сетевые, и требуют менее сложного программного обеспечения. Поэтому в ряде случаев сетевые структуры заменяются совокупностью деревьев. При этом сложные сети вначале приводятся к простым, а затем простые сети заменяются деревьями. Сложные сети приводятся к простому виду путем введения избыточности. При этом все элементы сложной сети повторяются дважды. Зтем простые сети заменяются деревьями также путем введения избыточности. При этом ряд элементов сети также повторяется.

. Домен - это семантическое понятие. Домен можно рассматривать как подмножество значений некоторого типа данных имеющих определенный смысл. Домен характеризуется следующими свойствами: Каждый столбец имеет свой тип данных. внутри домена могут лежать поддомены. Домен имеет уникальное имя (в пределах базы данных). Домен определен на некотором простом типе данных или на другом домене. Домен может иметь некоторое логическое условие, позволяющее описать подмножество данных, допустимых для данного домена. Домен несет определенную смысловую нагрузку.Кортеж - это множество пар {имя атрибута, значение}, которое содержит одно вхождение каждого имени атрибута. "Значение" является допустимым значением домена данного атрибута Попросту говоря, кортеж - это набор именованных значений заданного типа. Кортеж – строки внутри таблицы.Имя кортежа – имя столбца, значение – внутри столбца.Отношение - это множество кортежей, соответствующих одной схеме отношения. На самом деле, понятие схемы отношения ближе всего к понятию структурного типа данных в языках программирования. Отношение - таблица: 1заголовок и шапка.

Реляционная алгебра. Третья часть реляционной модели, манипуляционная часть, утверждает, что доступ к реляционным данным осуществляется при помощи реляционной алгебры или эквивалентного ему реляционного исчисления.

В реализациях конкретных реляционных СУБД сейчас не используется в чистом виде ни реляционная алгебра, ни реляционное исчисление. Фактическим стандартом доступа к реляционным данным стал язык SQL (Structured Query Language). Язык SQL представляет собой смесь операторов реляционной алгебры и выражений реляционного исчисления, использующий синтаксис, близкий к фразам английского языка и расширенный дополнительными возможностями, отсутствующими в реляционной алгебре и реляционном исчислении. Язык доступа к данным называется реляционно полным, если он по выразительной силе не уступает реляционной алгебре т.е. любой оператор реляционной алгебры может быть выражен средствами этого языка. Каждая строка должна отличаться от любой другой и обладать уникальностью. Хотя бы в одном из столбцов находится нечто, что делает ее отличной от др.Целиком вся строка внутри таблицы повторяться не может. Набор столбцов, значения в которых уникальны – ключ. Ключ может быть для таблицы ни один. Минимальный набор столбцов обычно объявляют первичным ключом. Все остальные – возможные. Таблицы могут ссылаться на друг друга.Внешний ключ – те ключи, которые указывают на значения другой таблицы.

Отношения:

1. Один к одному

       2.Один ко многим

       3. Многие ко многим

Реляционная Модель – Терминология Сущность(объект реального мира, может описываться набором отношений) – отношение – таблица. Кортеж – запись – строка. Атрибут – поле – столбец, колонка.

3)Проблема «грязного чтения данных». Способы разрешения.

Рассмотрим следующий сценарий совместного выполнения транзакций 1 и 2. Транзакция 1 изменяет объект базы данных A. Параллельно с этим транзакция 2 читает объект A. Поскольку операция изменения еще не завершена, транзакция 2 видит несогласованные "грязные" данные (в частности, операция транзакции 1 может быть отвернута при проверке немедленно проверяемого ограничения целостности). Это тоже не соответствует требованию изолированности пользователей (каждый пользователь начинает свою транзакцию при согласованном состоянии базы данных и в праве ожидать видеть согласованные данные). Чтобы избежать ситуации чтения "грязных" данных, до завершения транзакции 1, изменившей объект A, никакая другая транзакция не должна читать объект A (минимальным требованием является блокировка чтения объекта A до завершения операции его изменения в транзакции 1).

Зависимость D1. Феномен «грязное чтение» Транзакция T1 считывает объект данных O прежде, чем T2 произведет операцию записи над ним, потом T2 делает следующее изменение объекта. Версия, считанная T1, может оказаться противоречивой (могут быть нарушены ограничения логической целостности данных), так как Т1 считала не окончательное значение O (значение фиксируется при выполнении операции commit. Феномен грязного чтения будет наблюдаться и при следующих последовательностях завершения транзакций ((T1, commit) или (T1, rollback))  и ((T2, commit) или (T2, rollback))в любом порядке. Таким образом, полное описание данного феномена будет включать все четыре варианта завершения транзакций T1 и T2.

Приведем пример возникновения такой зависимости транзакций — вновь с информацией о положении точки на плоскости. Пусть работают две транзакции, каждая их которых передвигает точку по кривой x+y = 120. Выполняются операции модификации координаты x и модификации координаты y; пусть каждая транзакция считывает значение точки и меняет значение так, чтобы y оказался меньше на 10, а x — больше на 10. Предположим, обе транзакции работают с точкой v = (10,110). Очевидно, что при выполнении в следующей последовательности операций будет возникать рассогласование данных:<10,110> (->) (T1,R(x,y)) <10,110> (->) (T1,W(y)) <10,90> (->) (T2,R(x,y)) <10,90> (->) <10,80> (->) (T2,W(x)) <20,80> (->) (T1,commit)(!!!)...

Произошло рассогласование данных: появилась точка (20,80), которая не удовлетворяет условию «x+y = 120». Транзакция T2 рассогласовала данные, и эти данные оказались зафиксированными транзакцией T2 (она «ничего не знает» о параллельно работающей с ней T1). Это означает, что любая другая транзакция может считать эти некорректные данные в момент времени (!!!); последствия рассогласования перестают быть контролируемыми.

 

Серия сообщений "Базы данных":
Часть 1 - Файловые системы. Назначение файловых систем.
Часть 2 - Особенности орган хранения данных
...
Часть 29 - Иерархическая СУБД IBM IMS и язык DL1. Особенности реализации для работы на кластере (Sysplex).
Часть 30 - Технология оперативной обработки транзакций – OLTP. Мониторы транзакций на примере IBM CICS и TPF
Часть 31 - Понятие сетевой организации данных. Структуры типа «звезда»,
Часть 32 - Основные реляционные СУБД: IBM DB2, ORACLE, MS SQL Server, Informix. Сравнение.
Часть 33 - Основные положения теории массового обслуживания (теория очередей).
...
Часть 43 - Метод вспомогательной таблицы для случая произвольного графа. Отличия от случая моделирования иерархий
Часть 44 - Объектно-ориентированная модель и реляционная модель. Сходство и отличия.
Часть 45 - Использование «координатного» метода для моделирования иерархий и произвольных графов. Его достоинства и

Рубрики: 

Технология оперативной обработки транзакций – OLTP. Мониторы транзакций на примере IBM CICS и TPF

Среда, 09 Июня 2010 г. 11:38 + в цитатник

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

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

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

 

2)Предложение SELECT языка SQL. Сортировка (ORDER BY). Группирование данных (GROUP BY, GROUP BY … HAVING).

ORDER BY

SELECT Company, OrderNumber FROM Orders ORDER BY Company;

SELECT Company, OrderNumber FROM Orders ORDER BY Company, OrderNumber

SELECT Company, OrderNumber FROM Orders ORDER BY Company DESC;

(DESC означает в обратном порядке)

SELECT store_name, Sales, Date FROM Store_Information ORDER BY 2 DESCПо второму столбцу

ГРУППИРОВАНИЕ - GROUP BY

SELECT column, SUM(column) FROM table GROUP BY column

SELECT Company,SUM(Amount) FROM Sales GROUP BY Company;

SELECT column,SUM(column) FROM table GROUP BY column HAVING SUM(column) condition value

SELECT Company,SUM(Amount) FROM Sales GROUP BY Company HAVING SUM(Amount)>10000;

3)Язык SQL – стандартный язык запросов к реляционным базам данных. Понятие объемлющего языка.

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

Функциональные возможности:Организация данных. SQL дает пользователю возможность изменять структуру представления данных, а также устанавливать отношения между элементами базы данных. Чтение данных. SQL дает пользователю или приложению возможность читать из базы данных содержащиеся в ней данные и пользоваться ими. Обработка данных. SQL дает пользователю или приложению возможность изменять базу данных, т.е. добавлять в нее новые данные, а также удалять или обновлять уже имеющиеся в ней данные. Управление доступом. С помощью SQL можно ограничить возможности пользователя по чтению и изменению данных и защитить их от несанкционированного доступа. Совместное использование данных. SQL координирует совместное использование данных пользователями, работающими параллельно, чтобы они не мешали друг другу. Целостность данных. SQL позволяет обеспечить целостность базы данных, защищая ее от разрушения из-за несогласованных изменений или отказа системы.

SQL — это не полноценный компьютерный язык типа FORTRAN или С. В SQL нет оператора IF для проверки условий, нет оператора GOTO для организации переходов и нет операторов DO или FOR для создания циклов. SQL является подъязыком баз данных, в который входит около тридцати операторов, предназначенных для управления базами данных. Операторы SQL встраиваются в базовый язык, например FORTRAN или С, и дают возможность получать доступ к базам данных. Кроме того, из такого языка, как С, операторы SQL можно посылать СУБД в явном виде, используя интерфейс вызовов функций.

Наконец, SQL — это слабо структурированный язык, особенно по сравнению с такими сильно структурированными языками, как С или Pascal. SQL на сегодняшний день является единственным стандартным языком для работы с реляционными базами данных. SQL — это достаточно мощный и в то же время относительно легкий для изучения язык. Поскольку SQL не является языком программирования (то есть не предоставляет средств для автоматизации операций с данными), вводимые разными производителями расширения касались в первую очередь процедурных расширений. Это хранимые процедуры (stored procedures) и процедурные языки-"надстройки". Практически в каждой СУБД применяется свой процедурный язык. Например, в Oracle — PL/SQL, основанный на языке Ada; в Sybase SQL Server и MS SQL Server — Transact-SQL.Рассмотрим Transact-SQL Transact-SQL (T-SQL) — расширение языка SQL компаний Microsoft (для Microsoft SQL Server) и Sybase (для Adaptive Server Enterprise). С тем чтобы сделать язык более мощным, SQL был расширен такими дополнительными возможностями как: -управляющие операторы; -локальные переменные; -различные дополнительные функции (для обработки строк, дат, математические и др.); -поддержка аутентификации Microsoft Windows. Для управления потоком исполнения в Transact-SQL используются следующие операторы: BEGIN и END, BREAK, CONTINUE, GOTO, IF и ELSE, RETURN, WAITFOR и WHILE.

 

Серия сообщений "Базы данных":
Часть 1 - Файловые системы. Назначение файловых систем.
Часть 2 - Особенности орган хранения данных
...
Часть 28 - Кластерные и распределенные СУБД. Пример: IBM DB2 Parallel Edition, MS SQL Server и Oracle. Применение триггеров
Часть 29 - Иерархическая СУБД IBM IMS и язык DL1. Особенности реализации для работы на кластере (Sysplex).
Часть 30 - Технология оперативной обработки транзакций – OLTP. Мониторы транзакций на примере IBM CICS и TPF
Часть 31 - Понятие сетевой организации данных. Структуры типа «звезда»,
Часть 32 - Основные реляционные СУБД: IBM DB2, ORACLE, MS SQL Server, Informix. Сравнение.
...
Часть 43 - Метод вспомогательной таблицы для случая произвольного графа. Отличия от случая моделирования иерархий
Часть 44 - Объектно-ориентированная модель и реляционная модель. Сходство и отличия.
Часть 45 - Использование «координатного» метода для моделирования иерархий и произвольных графов. Его достоинства и

Рубрики: 

Иерархическая СУБД IBM IMS и язык DL1. Особенности реализации для работы на кластере (Sysplex).

Среда, 09 Июня 2010 г. 11:37 + в цитатник

 

Иерархические Под иерархической моделью данных понимается модель, объединяющая записи, хранимые в общей древовидной структуре с одним корневым типом записи, который имеет несколько подчиненных типов записи или не имеет совсем. Каждый подчиненный тип записи также может иметь несколько подчиненных типов или не иметь их совсем. Основной структурой, поддерживающей иерархическое представление информации, является дерево Достоинствами иерархической модели данных относятся эффективное использование памяти ЭВМ и неплохие показатели времени выполнения основных операций над данными. Иерархическая модель данных удобна для работы с иерархически упорядоченной информацией. Недостатком иерархической модели является ее громоздкость для обработки информации с достаточно сложными логическими связями, а также сложность понимания для обычного пользователя. Примеры: зарубежные системы IMS, PC/Focus, Team-Up и Data Edge, а также отечественные системы Ока, ИНЭС и МИРИС;

IBM IMS - система управления информацией.

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

IMS помогает реализовать модель бизнеса "по требованию", способствует развитию, повышению доступности и эффективности управления системами, что требуется при эксплуатации существующих и внедрении новых сред, а также для управления расходами. Улучшения в IMS Database Manager (IMS DB) и IMS Transaction Manager (IMS TM) V10 открывают новые возможности - теперь вы сможете:

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

-Создавать приложения для бизнеса "по требованию", которые позволят устранить трудности, связанные с ведением бизнеса через Интернет.

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

-Использовать существующие данные для принятия более взвешенных решений.

В настоящее время под системой общего назначения понимают программный комплекс, включающий единую и одинаково эффективную поддержку всех способов доступа и режимов работы. Скорее всего систем, полностью удовлетворяющих приведенному определению, не существует. Тем не менее, если исключить из списка обязательных свойств возможность управления базами данных на языке уровня DL/1 и одинаково эффективную для всех реализацию специализированных функций, то ряд систем по заложенным в них решениям можно отнести к системам общего назначения. В частности, в OS/MVS пакетный режим и режим разделения времени (TSO) поддерживаются не посредством специальных мониторов, а с помощью основных элементов системы и фактически интегрированы в иен. Этого, однако, нельзя сказать о механизмах системы управления базами данных IMS.

2) Реляционная модель данных: общее понятие и составные части. Фундаментальные свойства отношений. Реляционная алгебра. Реляционные исчисления.

Реляционная алгебра.     Практически все используемые СУБД реляционные. В основе реляционной СУБД лежит метафора таблиц. Х (стрелка в бок и сверху)

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

Реляционная модель данных  Основы реляционной модели данных были впервые изложены в статье Е.Кодда в 1970 г. Эта работа послужила стимулом для большого количества статей и книг, в которых реляционная модель получила дальнейшее развитие. Наиболее распространенная трактовка реляционной модели данных принадлежит К.Дейту. Согласно Дейту, реляционная модель состоит из трех частей: Структурной части. Описывает, какие объекты рассматриваются реляционной моделью. Постулируется, что единственной структурой данных, используемой в реляционной модели, являются нормализованные n-арные отношения. Целостной части – структура данных сохранялась в первоначальном виде. Описывает ограничения специального вида, которые должны выполняться для любых отношений в любых реляционных базах данных. Это целостность сущностей и целостность внешних ключей. Манипуляционной части –запросы(создание, изменение, удаление, поиск, выбор). описывает два эквивалентных способа манипулирования реляционными данными - реляционную алгебру и реляционное исчисление. Таблицы называют отношениями

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

2)Создание, модификация и уничтожение таблиц. Предложение языка SQL CREATE TABLE. Основные типы данных. Предложение ALTER TABLE. Предложение DROP TABLE.

CREATE TABLE – создать таблицу CREATE TABLE name (column1_name column1_type, column2_name column2_type,..); Например, CREATE TABLE Student (Id INTEGER, Name CHAR(20), Address CHAR(50), Status CHAR(10))

integer(size),int(size),smallint(size),tinyint(size)-Только целые числа. Максимальное число цифр определено значением в круглых скобках.

decimal(size,d),numeric(size,d)-Десятичные числа с фиксированной точкой.

Float- Число с плавающей точкой.

char(size)-Строка заданной длинны (может содержать символы, числа, и специальные характеры).

varchar(size) Строка переменной длины (может содержать символы, числа, и специальные символы). Длина строки не может быть больше, чем указанная в скобках. Меньше – может!

date(yyyymmdd) Дата и время.

ALTER TABLE table_name ADD column_name datatype - добавить столбец в таблицу

Например, ALTER TABLE Person ADD City varchar(30);

DROP TABLEУдалить таблицу полностью

3)Области применения файловых систем. Требования к файловым системам со стороны баз данных и информационных систем. Журналирование.

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

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

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

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

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

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

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

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

Серия сообщений "Базы данных":
Часть 1 - Файловые системы. Назначение файловых систем.
Часть 2 - Особенности орган хранения данных
...
Часть 27 - Основные функции СУБД. Типовая организация СУБД. Жизненный цикл базы данных.
Часть 28 - Кластерные и распределенные СУБД. Пример: IBM DB2 Parallel Edition, MS SQL Server и Oracle. Применение триггеров
Часть 29 - Иерархическая СУБД IBM IMS и язык DL1. Особенности реализации для работы на кластере (Sysplex).
Часть 30 - Технология оперативной обработки транзакций – OLTP. Мониторы транзакций на примере IBM CICS и TPF
Часть 31 - Понятие сетевой организации данных. Структуры типа «звезда»,
...
Часть 43 - Метод вспомогательной таблицы для случая произвольного графа. Отличия от случая моделирования иерархий
Часть 44 - Объектно-ориентированная модель и реляционная модель. Сходство и отличия.
Часть 45 - Использование «координатного» метода для моделирования иерархий и произвольных графов. Его достоинства и

Рубрики: 

Кластерные и распределенные СУБД. Пример: IBM DB2 Parallel Edition, MS SQL Server и Oracle. Применение триггеров

Среда, 09 Июня 2010 г. 11:35 + в цитатник

Читать далее...

Серия сообщений "Базы данных":
Часть 1 - Файловые системы. Назначение файловых систем.
Часть 2 - Особенности орган хранения данных
...
Часть 26 - Моделирование сетевых структур с использованием вспомогательной таблицы.
Часть 27 - Основные функции СУБД. Типовая организация СУБД. Жизненный цикл базы данных.
Часть 28 - Кластерные и распределенные СУБД. Пример: IBM DB2 Parallel Edition, MS SQL Server и Oracle. Применение триггеров
Часть 29 - Иерархическая СУБД IBM IMS и язык DL1. Особенности реализации для работы на кластере (Sysplex).
Часть 30 - Технология оперативной обработки транзакций – OLTP. Мониторы транзакций на примере IBM CICS и TPF
...
Часть 43 - Метод вспомогательной таблицы для случая произвольного графа. Отличия от случая моделирования иерархий
Часть 44 - Объектно-ориентированная модель и реляционная модель. Сходство и отличия.
Часть 45 - Использование «координатного» метода для моделирования иерархий и произвольных графов. Его достоинства и

Рубрики: 

Основные функции СУБД. Типовая организация СУБД. Жизненный цикл базы данных.

Среда, 09 Июня 2010 г. 11:34 + в цитатник

Читать далее...

Серия сообщений "Базы данных":
Часть 1 - Файловые системы. Назначение файловых систем.
Часть 2 - Особенности орган хранения данных
...
Часть 25 - Хранимые процедуры. Языки для написания хранимых процедур.
Часть 26 - Моделирование сетевых структур с использованием вспомогательной таблицы.
Часть 27 - Основные функции СУБД. Типовая организация СУБД. Жизненный цикл базы данных.
Часть 28 - Кластерные и распределенные СУБД. Пример: IBM DB2 Parallel Edition, MS SQL Server и Oracle. Применение триггеров
Часть 29 - Иерархическая СУБД IBM IMS и язык DL1. Особенности реализации для работы на кластере (Sysplex).
...
Часть 43 - Метод вспомогательной таблицы для случая произвольного графа. Отличия от случая моделирования иерархий
Часть 44 - Объектно-ориентированная модель и реляционная модель. Сходство и отличия.
Часть 45 - Использование «координатного» метода для моделирования иерархий и произвольных графов. Его достоинства и

Рубрики: 


Поиск сообщений в TheLenka
Страницы: 18 [17] 16 15 ..
.. 1 Календарь