Классификация и характеристика баз данных. Классификации субд по модели данных По характеру хранимой информации бд бывают

ЛЕКЦИЯ

Классификация БД. Фактографические и документальные БД.

БД оперативной и ретроспективной информации.

Хранилища данных. Локальные и распределенные БД. Соотношение основных требований и свойств СУБД: система компромиссов

2.1. Классификация баз данных

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

По форме представляемой информации можно выделить фактографические, документальные, мультимедийные, в той или иной степени соответствующие цифровой, символьной и другим (не цифровой и не символьной) формам представления информации в вычислительной среде. К последним можно отнести картографические, видео, аудио, графические и другие БД.

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

По типу используемой модели данных выделяют три классических класса БД: иерархические, сетевые, реляционные. Развитие технологий обработки данных привело к появлению постреляционных, объектноориентированных, многомерных БД, которые в той или иной степени соответствуют трем упомянутым классическим моделям.

По топологии хранения данных различают локальные и распределенные БД.

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

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

По сфере возможного применения можно различать универсальные и специализированные (или проблемно-ориентированные) системы.

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

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

Типология баз данных с точки зрения информационных процессов

БД могут соотноситься с различными уровнями информационных процессов: уровень информационных технологий (ИТ), уровень системы (ИС), уровень информационных ресурсов (ИР).(слайд 3)

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

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

При рассмотрении БД на уровне информационных ресурсов БД трактуется как элемент мировых ИР. Основной характеристикой здесь является содержание БД , хотя и структуры данных также немаловажны.

2.2. Фактографические и документальные БД

Главное отличие фактографических и документальных БД состоит в структуре единицы хранения информации.

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

С точки зрения структуры единицы хранения принято различать хорошо структурированные данные и слабо структурированные данные.

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

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

Фактографические БД – БД, ориентированные на хранение хорошо структурированных данных. Единицей хранения в таких БД служит описание «факта» конечным четко определенным множеством характеристических свойств.

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

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

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

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

Отличия этих двух видов поиска представлены на слайде (слайд 5) .

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

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

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

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

2.3. БД оперативной и ретроспективной информации. Хранилища данных

С точки зрения основных особенностей ПрО и решаемых задач можно выделить два основных класса БД – оперативной и ретроспективной информации.

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

Основные особенности OLTP -приложений:

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

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

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

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

БД ретроспективной информации входят в состав документальных ИС, ориентированных на задачи информационного поиска, а также в OLAP -приложения (Оп- Line Analitical Processing , оперативная аналитическая обработка данных). Это обобщенный термин, характеризующий принципы построения систем поддержки принятия решений (DSS , Decision Support System ), а также хранилищ данных (data warehouse ) и систем интеллектуального анализа данных (data mining ). Такие системы предназначены для установления зависимостей меж ду данными (например, можно попытаться определить, как связан объем продаж товаров с характеристиками потенциальных покупателей) или для проведения анализа, отвечающего на вопросы "что если...".

БД ретроспективной информации характеризуются следующими особенностями:

1. Добавление в БД новых данных происходит относительно редко крупными блоками.

2. Данные из БД обычно никогда не удаляются.

3. Запросы к данным являются нерегламентированными и, как правило, достаточно сложными. Очень часто новый запрос формулируется аналитиком для уточнения результата, полученного при выполнении предыдущего за проса.

4. Скорость выполнения запросов важна, но не критична.

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

Хранилища данных

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

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

Хранилище данных - предметно-ориентированный, интегрированный, привязанный ко времени и неизменяемый набор данных, предназначенный для под­ держки принятия решений.

В приведенном определении указанные характеристики данных рассматриваются следующим образом.(слайд 6)

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

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

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

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

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

Сравнение систем OLTP и хранилищ данных

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

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

Перечислим потенциальные проблемы, связанные с разработкой и сопровождением хранилищ данных (слайд 8) .

· Недооценка ресурсов, необходимых для загрузки данных : многие разработчики склонны недооценивать время, необходимое для извле чения, очистки и загрузки данных в хранилище.

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

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

· Повышение требований конечных пользователей

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

· Высокие требования к ресурсам : может потребоваться огромный объем дискового про­странства.

· Владение данными : создание хранилища данных может потребовать изменения статуса конечных пользователей в отношении прав владения данными

· Сложное сопровождение : любая реорганизация деловых процессов или источников данных может отразиться на работе хранилища данных

· Долговременный характер проектов

· Сложности интеграции

Локальные и распределенные БД

В общем случае режимы работы с БД можно классифицировать по следующим признакам:

- многозадачность- однопользовательский или многопользовательский;

- правило обслуживания запросов – последовательное или параллельное;

- схема размещение данных – централизованная или распределенная БД.

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

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

Развитие сетевых технологий в сочетании с широким распространением персональных ЭВМ и внедрением стандартов открытых систем привело к появлению систем баз данных размещенных в сети разнотипных компьютеров. Такие системы распределенных баз данных обеспечивают обработку распределенных запросов, когда при обработке одного запроса используются ресурсы базы, размещенные на различных ЭВМ сети. Система распределенных баз данных состоит из узлов, каждый из которых является СУБД, а узлы взаимодействуют между собой так, что база данных любого узла будет доступна пользователю, так как если бы она была локальной. Архитектура распределенной БД приведена на слайде (слайд 9) .

Соотношение основных требований и свойств СУБД: система компромиссов(слайд 10)

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

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

2). Каким образом организовать данные, чтобы была возможность эффективного внесения, удаления и редактирования данных.

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

4). Каким образом организовать данные, чтобы поиск был эффективным и позволял отыскивать записи по нескольким ключам.

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

1) Эффективность – простота;

2) Скорость выборки – стоимость (сложность) аппаратных средств;

3) Скорость выборки – сложность процедур доступа;

4) Плотность данных – время доступа и сложность процедур;

5) Независимость данных – производительность;

6) Гибкость средств поиска – избыточность данных или

7) Гибкость поиска – скорость поиска;

8) Сложность процедур доступа – простота обслуживания.

Существует огромное количество разновидностей баз данных, отличающихся по различным критериям.

Укажем только основные классификации.

Классификация БД по модели данных (примеры):

  • · иерархические,
  • · сетевые,
  • · реляционные,
  • · объектные,
  • · объектно-ориентированные,
  • · объектно-реляционные.

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

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

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

Указанный недостаток снят в сетевой модели, где, по крайней мере, теоретически, возможны связи «всех со всеми» (на практике прибегают к ограничениям). Чаще всего в качестве сетевой модели называют тезаурусы по областям знаний и каталоги продукции.

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

Классификация БД по среде физического хранения:

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

Классификация БД по содержимому (примеры):

  • · географические;
  • · исторические;
  • · научные;
  • · мультимедийные.

Классификация БД по степени распределённости:

  • · централизованные (сосредоточенные);
  • · распределённые.

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

Основные функции СУБД:

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

Обычно современная СУБД содержит следующие компоненты:

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

Классификации СУБД

По модели данных (примеры):

  • · Иерархические
  • · Сетевые
  • · Реляционные
  • · Объектно-ориентированные

По степени распределённости:

  • · Локальные СУБД (все части локальной СУБД размещаются на одном компьютере)
  • · Распределённые СУБД (части СУБД могут размещаться на двух и более компьютерах).

По способу доступа к БД:

· Файл-серверные

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

На данный момент файл-серверная технология считается устаревшей.

Примеры: Microsoft Access, Paradox, dBase, FoxPro, Visual FoxPro.

· Клиент-серверные

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

Примеры: Oracle, Firebird, Interbase, IBM DB2, Informix, MS SQL Server, Sybase Adaptive Server Enterprise, PostgreSQL, MySQL, Cache, ЛИНТЕР.

· Встраиваемые

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

Примеры: OpenEdge, SQLite, BerkeleyDB, Firebird Embedded, Sav Zigzag, Microsoft SQL Server Compact, ЛИНТЕР.

В наиболее полном варианте СУБД должна иметь следующие компоненты:

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

Наличие и характер этих компонент во многом определяют технологичность работы программиста с СУБД и возможность ее использования людьми с небольшой компьютерной подготовкой.

Основные требования к готовой прикладной базе данных:

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

Общая характеристика реляционной модели данных. Типы данных. Простые типы данных. Структурированные типы данных. Ссылочные типы данных.

Хотя понятие реляционной модели данных первым ввел основоположник реляционного подхода Эдгар Кодд, наиболее распространенная трактовка реляционной модели данных, принадлежит известному популяризатору идей Кодда Кристоферу Дейту.

Согласно Дейту, реляционная модель состоит из трех частей:

  • · Структурной части
  • · Целостной части
  • · Манипуляционной части

Структурная часть описывает, какие объекты рассматриваются реляционной моделью. Постулируется, что единственной структурой данных, используемой в реляционной модели, являются нормализованные n-арные отношения.

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

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

Типы данных

Любые данные, используемые в программировании, имеют свои типы данных.

Важно! Реляционная модель требует, чтобы типы используемых данных были простыми.

Для уточнения этого утверждения рассмотрим, какие вообще типы данных обычно рассматриваются в программировании. Как правило, типы данных делятся на три группы:

  • · Простые типы данных
  • · Структурированные типы данных
  • · Ссылочные типы данных
  • · Простые типы данных

Простые, или атомарные, типы данных не обладают внутренней структурой. Данные такого типа называют скалярами. К простым типам данных относятся следующие типы:

  • · Логический
  • · Строковый
  • · Численный

Различные языки программирования могут расширять и уточнять этот список, добавляя такие типы как:

Целый, вещественный, дата, время, денежный, перечислимый, интервальный и т. д.…

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

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

  • · Массивы
  • · Записи (Структуры)

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

называемое множеством индексов. Отображение

из множества A во множество вещественных чисел R задает одномерный вещественный массив. Значение этой функции для некоторого значения индекса i называется элементом массива, соответствующим i. Аналогично можно задавать многомерные массивы.

Запись (или структура) представляет собой кортеж из некоторого декартового произведения множеств. Действительно, запись представляет собой именованный упорядоченный набор элементов r i , каждый из которых принадлежит типу T i . Таким образом, запись r=(r 1 ,r 2 …r n) есть элемент множества T=T 1 ?T 2 ?…?T n . Объявляя новые типы записей на основе уже имеющихся типов, пользователь может конструировать сколь угодно сложные типы данных.

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

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

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

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

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

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

СУБД организует хранение информации таким образом, чтобы ее было удобно:

просматривать,

пополнять,

изменять,

искать нужные сведения,

делать любые выборки,

осуществлять сортировку в любом порядке.

Классификация баз данных:

По характеру хранимой информации:

Фактографические (картотеки),

Документальные (архивы)

По способу хранения данных:

Централизованные (хранятся на одном компьютере),

Распределенные (используются в локальных и глобальных компьютерных сетях).

По структуре организации данных:

Табличные (реляционные),

Иерархические,

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

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

Реляционная база данных, по сути, представляет собой двумерную таблицу.

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

В реляционной БД используются четыре основных типов полей:

Числовой,

Символьный (слова, тексты, коды и т.д.),

Дата (календарные даты в форме «день/месяц/год»),

Логический (принимает два значения: «да» - «нет» или «истина» - «ложь»).



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

Системы управления базами данных позволяют объединять большие объемы информации и обрабатывать их, сортировать, делать выборки по определенным критериям и т. п.

Современные СУБД дают возможность включать в них не только текстовую и графическую информацию, но и звуковые фрагменты и даже видеоклипы.

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

Популярные СУБД - FoxPro, Access for Windows, Paradox. Для менее сложных применений вместо СУБД используются информационно-поисковые системы (ИПС), которые выполняют следующие функции:

хранение большого объема информации;

быстрый поиск требуемой информации;

добавление, удаление и изменение хранимой информации;

вывод ее в удобном для человека виде.


Базовые топологии локальных компьютерных сетей.

Термин топология сетей характеризуется физическое расположение компьютерных узлов коммутации и каналов связи в сети.

Все сети строятся на основе трех базовых топологии «звезда», «кольцо», «шина».

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

2) В топологии кольцо компьютеры подключаются к повторителям (среде передачи данных) различают два основных типа кольцевых сетей маркерное и тактированное кольца.

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

3) В топологии шина широко применяемой и локальных сетях все компьютеры подключены к одному каналу связи с помощью трансиверов (приемопередатчиков).


Топология глобальной вычислительной сети

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

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

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

База данных

Например:

Фактографические

тах, представленные в строго определенном формате.

Документальные

)

Хранилище информации процедура ввода

поиск – процесс обработки запроса;

обработка

выдача информации

Централизованная БД –

По структуре организации базы данных делятся на

Реляционными базами данных называются базы данных с табличной формой организации.

В реляционных БД строка таблицы называется записью, а столбец - полем. В общем виде это выглядит так:

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

ОСНОВНЫЕ ТИПЫ ДАННЫХ

текстовый одна строка текста (до 255 символов)
поле MEMO текст, состоящий из нескольких строк, который можно
посмотреть при помощи полос прокрутки (до 65535 символов)
числовой число любого типа (можно использовать в вычислениях)
денежный поле, выраженное в денежных единицах (рубли, доллары и т.д.)
дата/время поле, содержащее дату или время
счётчик поле, которое вводится автоматически с вводом каждой записи
логический содержит одно из значений True (истина) или False (ложно) и применяется в логических операциях
поле объекта OLE содержит рисунки, звуковые файлы, таблицы Excel, документ Word и т. д.

Банк данных

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

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

2.Понятие БД, СУБД, ИС. Примеры использования и сферы применения баз данных

База данных (БД ) - это структурированные знания об объектах.

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

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

Система управления базами данных - это совокупность языковых и программных средств, которая осуществляет доступ к данным, позволяет их создавать, менять и удалять, обеспечивает безопасность данных и т.д. В общем СУБД - это система, позволяющая создавать базы данных и манипулировать сведениями из них. А осуществляет этот доступ к данным СУБД посредством специального языка - SQL.

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

Итак, простейшая схема работы с базой данных выглядит примерно так:

основное назначение БД - “постоянное применение”. Говоря о применении БД, необходимо упомянуть о понятии информационная система (ИС).

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

Ядром, “сердцем” ИС как раз и является БД. Разумеется, ИС бывают достаточно сложными, в том числе и построенными на нескольких базах данных, но сути это не меняет - БД в принципе можно представить себе как нечто автономное, но невозможно представить ИС, не основанную на БД.

Структура базы данных

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

принято выделять базы данных следующих видов:иерархические , сетевые , реляционные и объектно-ориентрованные .

Ключи

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

7. Виды связей между таблицами в Реляционной модели БД

Связь позволяет моделировать отношения между объектами предметной области. Наименование связи должно быть уникально во всей модели.

Существует 4 типа связей:

1. «Один-к-одному» - любому экземпляру сущности А соответствует только один экземпляр сущности В, и наоборот.

У любого конкретного ученика может быть только одна характеристика, и эта характеристика относится к единственному ученику.

2. «Один-ко-многим» - любому экземпляру сущности А соответствует 0, 1 или несколько экземпляров сущности В, но любому экземпляру сущности В соответствует только один экземпляр сущности А.

Ученику ставят много оценок; поставленная оценка принадлежит только одному ученику.

3. «Многие-к-одному» - любому экземпляру сущности А соответствует только один экземпляр сущности В, но любому экземпляру сущности В соответствует 0, 1 или несколько экземпляров сущности А.

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

Какая же разница между связями «один-ко-многим» и «многие-к-одному»? Такая же, как между фразами «портфель ученика» и «ученик портфеля». То есть важно, кто во взаимоотношении двух объектов главный - ученик или портфель. Суть отношений двух объектов отражается в имени связи.

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

4. «Многие-ко-многим» - любому экземпляру сущности А соответствует 0, 1 или несколько экземпляров сущности В, и любому экземпляру сущности В соответствует 0, 1 или несколько экземпляров сущности А.

Ученик Иванов учится у нескольких преподавателей. И каждый преподаватель работает со многими учениками.

Нормализация отношений

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

Первая нормальная форма

Отношение называется приведенным к первой нормальной форме , если все его атрибуты простые.

Первая нормальная форма предписывает, что все данные, содержащиеся в таблице, должны быть атомарными (неделимыми ).

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

Так как значение поля Оценки не является атомарным, таблица не соответствует требованиям 1НФ.

Вторая нормальная форма

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

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

Приведем пример таблицы, которая не находится во 2НФ.

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

Здесь уместно задаться вопросом: а в чем практический смысл 2НФ? Какая польза от этих ограничений? Оказывается - большая. Допустим, что в приведенном выше примере разработчик проигнорирует требования 2НФ. Во-первых, скорее всего возникнет так называемая избыточность - хранение лишних данных. Ведь если для одной записи с данной датой уже хранится время восхода, то для всех других записей с данной датой оно должно быть таким же и хранить его, вообще говоря, незачем.

Третья нормальная форма

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

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

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

В этой таблице присутствует зависимость между не ключевыми столбцами Город и Код города, следовательно, таблица не находится в 3НФ.

Четвертая нормальная форма

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

В теории реляционных баз данных рассматриваются и формы высших порядков - нормальная форма Бойса - Кодда, 4НФ, 5НФ и даже выше. Большого практического значения эти формы не имеют, и разработчики, как правило, всегда останавливаются на 3НФ.

Индексация

Индексация - крайне важная с точки зрения практического применения.

Основное назначение индексации - оптимизация (убыстрение) поиска (и, соответственно, некоторых других операций с базой данных).

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

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

Типы данных

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

Все реляционные СУБД поддерживают данные следующих основных типов:

· числовые;

· строковые;

· логические;

Приведенный список не является исчерпывающим. Как правило, СУБД также имеют типы для хранения больших текстовых и двоичных данных, специальные “денежные” типы и т.д. На следующем рисунке - снимке экрана конструктора таблиц Microsoft Access - показаны типы, поддерживаемые этой системой.

Отметим также, что, как правило, типы могут снабжаться модификаторами, уточняющими соответствующее множество данных (диапазон значений). Например, в Microsoft Access данные числового типа могут быть просто “целыми”, “длинными целыми”, “вещественными” и т.д. - см. рисунок.

11.Правила Кодда (требования к реляционным БД)

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

Перечислим эти правила:

1) Явное представление данных.

Все данные должны быть представлены явно и их значения должны рассчитываться косвенными алгоритмами (исключение – однозначные отображения).

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

2) Гарантированный доступ к данным.

Вся информация в БД должна быть доступной для приложения. Выделение любого значения в РБД выполняется при указании:

а) имени отношения;

б) указателя на кортеж (например, значение первичного ключа кортежа);

в) имени атрибута;

(имя_отношения, первичный ключ, атрибут)

3) Полная обработка неопределенных значений.

Неопределенные значения, отличные от любого определенного значения, должны поддерживаться для всех типов данных при выполнении всех операций.

4) Доступ к базе данных в терминах реляционной модели.

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

5) Полнота подмножества реляционного языка.

Реляционная схема может поддерживать несколько языков, по крайней мере, язык DDL и DML. Однако хотя бы один из языков должен иметь синтаксис предложений, поддерживающий следующие понятия:

Определение данных (отношения, атрибуты, домены, ключи, ограничения целостности);

Определение виртуальных (мнимых) отношений образованных с помощью реляционных выражений на основе одного или нескольких отношений (определение представлений);

Манипулирование данными (интерактивное или программное);

Ограничение целостности;

Санкционированный доступ;

Управление транзакциями (начало транзакции, фиксация выполнения, отказ от выполнения).

6) Обновляемость представлений.

Все представления (виртуальные отношения) должны автоматически обновляться при модификации данных в базовых отношениях. Если, например, A= R È S, и А – это представление, то А должно обновляться как только меняется R или S.

7) Наличие высокоуровнего языка манипулирования данными.

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

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

8) Физическая независимость данных.

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

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

9) Логическая независимость данных.

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

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

10) Независимость контроля целостности.

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

11) Дистрибутивная независимость.

Реляционная система должна быть распространяема и переносима. Создание разнородных компьютерных систем требует обеспечения доступа к базам данных в различных OS и на различных платформах.

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

12) Согласования языковых уровней.

Если реляционная система имеет низкоуровневый язык доступа (элемент доступа – запись) и высокоуровневый язык доступ (элемент доступа – отношения). То выполнение низкоуровневых команд должно производиться с контролем целостности, так же как и при высокоуровневых командах.

12.Формализация даталогической модели на языке конкретной СУБД(на примере Ассess)

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

· Определение имени таблицы. Если таблица является представлением некоторой сущности, то имя обычно соответствует названию сущности. Имена таблиц связей, как правило, образуют из названий связываемых сущностей.

· Определение имен и типов полей. На этом же этапе обычно требуется установить специфические свойства конкретных полей - может ли поле содержать “пустые” (неопределенные) значения, каким должно быть значение “по умолчанию” и т.д.

· Определение первичного ключа. Несмотря на то, что реляционная модель требует наличия в каждой таблице первичного ключа, большинство СУБД позволяют не определять ключ в таблице. Этого, разумеется, следует избегать. К чести СУБД они практически всегда стараются “наставить разработчика на путь истинный” (см., например, рисунок).

· Определение (при необходимости) индексированных полей .

После конструирования таблиц необходимо установить связи между ними. В Microsoft Access для этого имеется специальное средство - “Схема данных”. На схеме очень удобно “рисовать” связи между таблицами, перетаскивая и накладывая друг на друга связанные поля. В большинстве случаев Access способен определить тип устанавливаемой связи. Например, если первичный ключ одной таблицы связывается с полем другой, не являющимся первичным ключом, то легко понять - и Access понимает, - что речь идет о связи “один ко многим”.

Схожие по функциям и интерфейсу средства визуального конструирования имеют и другие СУБД.

Какой бы визуальный интерфейс не предоставляла конкретная СУБД разработчикам, в подавляющем большинстве случаев за кадром находится общий для всех реляционных СУБД язык SQL (S tructured Q uery L anguage ).

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

13.Объекты базы данных . Таблицы, отчеты, страницы, макросы и модули . Запросы и формы .

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

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

Страницы или страницы доступа к данным – специальные объекты БД, выполненные в коде HTML , размещаемые на web -странице и передаваемые клиенту вместе с ней. Сам по себе объект не является БД, посетитель может с ее помощью просматривать записи базы в полях страницы доступа. Т.о., страницы – интерфейс между клиентом, сервером и базой данных, размещенным на сервере.

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

Запросы и формы .

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

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

Обновление БД тоже можно осуществить посредством запроса. В базовые таблицы все данные вносятся в порядке поступления, т.е. они не упорядочены. Но по соответствующему запросу можно получить отсортированные и отфильтрованные нужным образом данные.

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

14.Язык SQL (структурированный язык запросов ) .История возникновения. Подмножества языка.

Из истории SQL:

Все реляционные СУБД поддерживают специальный язык SQL (S tuctured Q ueryL anguage ), на котором записываются запросы. Фактически SQL состоит из двух языков - DML (D ata M anipulation L anguage ) и DDL (D ata D eclaration L anguage ).

История языка SQL началась в 1974 г. Первый прототип языка назывался SEQUEL (название образовано от S tructured E nglish Que ry L anguage ). Впоследствии переработанная версия SEQUEL получила название SQL. Первый стандарт языка был принят в 1987 г.

SQL - декларативный язык. Это означает, что клиент лишь указывает, что именно ему требуется, а как это получить, решает сама СУБД.

Необходимо сказать, что хотя SQL и задумывался как средство работы конечного пользователя, в конце концов он стал настолько сложным, что превратился в инструмент программиста. В SQL определены два подмножества языка:

  • SQL-DDL (Data Definition Language) - язык определения структур и ограничений целостности баз данных. Сюда относятся команды создания и удаления баз данных; создания, изменения и удаления таблиц; управления пользователями и т.д.
  • SQL-DML (Data Manipulation Language) - язык манипулирования данными: добавление, изменение, удаление и извлечение данных, управления транзакциями

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

База данных - организованная совокупность данных, предназначенная для длительного хранения во внешней памяти ЭВМ и постоянного применения

Например:

База данных книжного фонда библиотеки;

База данных кадрового состава учреждения;

База данных законодательных актов в области уголовного права;

База данных современной эстрадной песни.

Фактографические

В фактографических БД содержатся краткие сведения об описываемых объек-

тах, представленные в строго определенном формате.

Например, в БД библиотеки о каждой книге хранятся библиографические сведе-

Документальные

В документальных БД содержатся документы (информация) самого разного типа: текстового, графического, звукового, мультимедийного

(например, различные справочники, словари)

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

Хранилище информации – база данных железнодорожной станции; процедура ввода – ввод паспортных данных клиента;

поиск – процесс обработки запроса;

обработка – выбор клиентом даты и времени отправления поезда;

выдача информации – ваш заказ принят, билет забронирован

Централизованная БД –

БД хранится на одном компьютере

Распределённая БД –различные части одной БД хранятся на мно-

жестве компьютеров, объединённых между собой сетью

Понятие модели данных. Сетевая модель данных. Версия CODASYL. Запись. Реализации. Базы данных. СМД. Иерархическая модель данных. Ограничения целостности. Многомерные базы данных. Набор. Основные характеристики. Операции над данными. Типы структур данных. Внесение информации в БД. Полный сцепленный ключ. ИМД.

«Объектно-реляционные базы данных» - Дополнительный столбец. Майкл Стоунбрейкер. Когда и как использовать типы коллекций. Объектно-реляционные базы данных и язык SQL. Базовые идеи объектно-реляционных расширений. Объектно-реляционные базы данных. Два основных отличительных. 10 лет ОРСУБД. Механизм структурных типов. Типизированные таблицы и представления. Тип данных со структурой записи. Новые базовые типы данных. Методы объектных типов.

«Мультимедийные базы данных» - Векторная графика. Сферы применения. Мультимедийная революция. Электронная коммерция. Возможный сценарий (использования мультимедийной БД). Основной фокус курса. Цифровое видео. Основные темы. Статичные растровые изображения. Информация о конкурсе «Класс-2006». Эволюция СУБД. Характеристики мультимедийной базы данных. Что делает коллекцию мультимедийных документов мультимедийной базой. Технологии для мультимедиа (позволяющие использовать мультимедиа).

«Виды баз данных» - Основные понятия. Структура школы. Реляционная модель. Табличные БД. Главный ключ. Основные объекты бд. Классификация БД. Таблицы. Структурирование данных. Номер паспорта. Ключевое поле. Таблица данных «Автомобилисты». Сетевая модель. Сеть Интернет. Табличные базы данных. Структура БД. Типы моделей баз данных. Страна. Тип данных. Компьютерную базу данных можно создать. Таблица базы данных «Пациент».

«Реляционные системы управления базами данных» - Субд. Вспомогательные службы. Физическая структура базы данных Oracle. Требования к составу и функциям СУБД. Основные программные компоненты СУБД. Oracle использует процедурные объекты. Физическая независимость данных. SXXX – процессы серверы в варианте архитектуры MTS. DbXX – дополнительные процессы записи в базу данных. Реляционные системы управления базами данных. Представление. Однозадачный вариант.

«Мультимедийные БД» - Файловые системы для оптических носителей. Высокая отказоустойчивость. Файловая система для оптических носителей. Распределение данных. Организация хранения. Магнитные запоминающие устройства. Оптимизация для мультимедиа. Кэширование и управление томами. Иерархическое управление запоминающими устройствами. Технология RAID. Методы распределения пространства. Файловые системы для магнитных носителей.