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


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

Классификация баз данных пи типу хранимых данных

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

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

Фактографические БД объединяют данные по факту совершения события (дата выпуска товара, год рождения сотрудника).

Лексикографические БД объединяют словари, классификаторы, и т.л. документы.

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

Классификация баз данных по обращению к ним

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

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

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

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

Классификация БД по способу организации данных

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

Модели БД

Моделями структурированной БД могут быть:

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

Реляционная база данных

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

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

Другие статьи раздела: База данных

Информация основа современного общества. Объем ее огромен и растет с каждым годом. Огромный объем информации уже давно поставил задачу ее хранения и обработки. Решает эту задачу понятие база данных. Похожие статьи:Беспроводная связь на больших расстоянияхПонятие и назначение SQL запросаМаршрутизация в компьютерных сетяхPhpMyAdmin на локальном сервереФункции СУБД обеспечивающие управление базой данныхSQL запрос INSERT INTO - наполнить […]

ЛЕКЦИЯ

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

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

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

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) Сложность процедур доступа – простота обслуживания.

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

По типу используемой модели данных выделяют три классических класса БД :

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

    сетевые,

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

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

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

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

    уровень информационных технологий (ИТ),

    уровень системы (ИС),

    уровень информационных ресурсов (ИР).

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

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

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

Классификация по модели данных

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

    Сетевая

    Реляционная

    Объектная и объектно-ориентированная

    Объектно-реляционная

    Функциональная .

Классификация по среде постоянного хранения

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

    В оперативной памяти (англ. in-memory database, memory-resident database, main memory database ): все данные на стадии исполнения находятся в оперативной памяти .

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

Классификация по содержимому

    Географическая

    Историческая

  • Мультимедийная.

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

    Централизованная, или сосредоточенная (англ. centralized database ): БД, полностью поддерживаемая на одном компьютере.

    Распределённая (англ. distributed database ): БД, составные части которой размещаются в различных узлах компьютерной сети в соответствии с каким-либо критерием.

    • Неоднородная (англ. heterogeneous distributed database ): фрагменты распределённой БД в разных узлах сети поддерживаются средствами более одной СУБД

      Однородная (англ. homogeneous distributed database ): фрагменты распределённой БД в разных узлах сети поддерживаются средствами одной и той же СУБД.

      Фрагментированная, или секционированная (англ. partitioned database ): методом распределения данных является фрагментирование (партиционирование, секционирование ), вертикальное или горизонтальное.

      Тиражированная (англ. replicated database ): методом распределения данных является тиражирование (репликация ).

Другие виды БД

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

    Временная , или темпоральная (англ. temporal database ): БД, в которой поддерживается какой-либо аспект времени , не считая времени, определяемого пользователем.

    Пространственно-временная (англ. spatial-temporal database ) БД: БД, в которой одновременно поддерживается одно или более измерений в аспектах как пространства, так и времени.

    Циклическая (англ. round-robin database ): БД, объём хранимых данных которой не меняется со временем, поскольку в процессе сохранения данных одни и те же записи используются циклически.

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

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

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

Классификации субд По модели данных

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

  • Реляционные

    Объектно-ориентированные

    Объектно-реляционные

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

    Локальные СУБД (все части локальной СУБД размещаются на одном компьютере)

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

По способу доступа к бд

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

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

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

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

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

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

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

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

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

    Моделирование данных

    Особенности архитектуры и функциональные возможности

    Контроль работы системы

    Особенности разработки приложений

    Производительность

    Надежность

    Требования к рабочей среде

    Смешанные критерии

3. Архитектура базы данных

Информация об определенной предметной области представлена в базе данных моделями нескольких уровней. По числу уровней в архитектуре различают одноуровневые, двухуровневые, трехуровневые системы. На различных уровнях архитектуры СУБД поддерживается разный уровень абстракции данных. В настоящее время наиболее распространенной является предложенная американским комитетом по стандартизации ANSI (American National Standards Institute) трехуровневая система организации БД. При проектировании баз данных выделяют три уровня: концептуальный, внутренний и внешний.

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

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

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

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

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

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

Клиент-серверная информационная система состоит в простейшем случае из 2 основных компонентов:

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

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

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

Клиент - это приложение пользователя. Его также называют приложением - клиентом.

Клиент и сервер взаимодействуют следующим образом:

1. Клиент формирует и посылает запросы (SQL-запросы) на чтение или изменения данных на сервер, на котором размещена БД. Эти запросы написаны на языке SQL.

2. Удалённый сервер сети направляет запрос программе SQL Server (серверу баз данных).

Достоинства архитектуры «клиент-сервер».

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

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

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

 Уменьшение сложности клиентских приложений за счёт отсутствия в нём кода, связанного с контролем БД и разграничения доступа к ней.

Жизненный цикл базы данных.

Процесс проектирования, реализации и поддержания системы базы данных называется жизненным циклом базы данных (ЖЦБД). Процедура создания системы называется жизненным циклом системы (ЖЦС).

ЖЦБД состоит из следующих этапов:

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

 какие прикладные программы используются, и какие функции они выполняют;

 какие файлы связаны с каждым из этих приложений;

 какие новые приложения и файлы находятся в процессе работы.

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

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

2. Проверка осуществимости. Здесь определяется технологическая, операционная и экономическая осуществимость плана создания БД, т. е.:

 технологическая осуществимость – есть ли технология для реализации запланированной БД?

 операционная осуществимость – есть ли средства и эксперты, необходимые для успешного осуществления плана создания БД?

 экономическая целесообразность – можно ли определить выводы? Окупится ли запланированная система? Можно ли оценить издержки и выгоду?

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

 Определяются цели системы путём анализа информационных потребностей. Здесь также обязательно указывается, какую именно БД следует создавать (распределённую, целостную) и какие коммуникационные средства необходимы. Выходной документ – комментарий, описывающий цели системы.

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

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

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

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

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

5. Реализация – процесс превращения концептуальной модели в функциональную БД. Он включает в себя следующие этапы.

1) Выбор и приобретение необходимой СУБД.

2) Преобразование концептуальной (инфологической) модели БД в логическую и физическую модель данных:

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

 определяются, какие прикладные процессы необходимо реализовать в схеме данных как хранимые процедуры;

 реализовать ограничения, предназначенные для обеспечения целостности данных и реализации правил для данных;

 спроектировать и сгенерировать триггеры для реализации всех централизованно определённых правил для данных и правил целостности данных, которые не могут быть заданы как ограничения;

 разработать стратегию индексирования и кластеризации; выполнить оценку размеров всех таблиц, кластеров и индексов;

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

 разработать сетевую топологию БД и механизм бесшовного доступа к удалённым данным (реплицированная или распределённая БД).

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

4) Заполнение базы данных.

5) Создание прикладных программ, контроль управления.

6) Обучение пользователей.

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

Таким образом, ЖЦБД включает в себя:

 Изучение предметной области и представление соответствующей документации (1-3).

 Построение инфологической модели (4).

 Реализация (5).

 Оценка работы и поддержка БД (6).

Этапы проектирования баз данных

При разработке БД можно выделить следующие этапы работы.

I этап. Постановка задачи.

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

II этап. Анализ объекта.

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

III этап. Синтез модели.

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

IV этап. Выбор способов представления информации и программного инструментария.

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

В большинстве СУБД данные можно хранить в двух видах:

    с использованием форм;

    без использования форм.

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

V этап. Синтез компьютерной модели объекта.

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

Стадия 1. Запуск СУБД, создание нового файла базы данных или открытие созданной ранее базы.

Стадия 2. Создание исходной таблицы или таблиц.

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

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

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

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

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

Стадия 3. Создание экранных форм.

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

Стадия 4. Заполнение БД.

Процесс заполнения БД может проводиться в двух видах: в виде таблицы и в виде формы. Числовые и текстовые поля можно заполнять в виде таблицы, а поля типа МЕМО и OLE – в виде формы.

VI этап. Работа с созданной базой данных.

Работа с БД включает в себя следующие действия:

    поиск необходимых сведений;

    сортировка данных;

    отбор данных;

    вывод на печать;

    изменение и дополнение данных.

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

Концептуальное (инфологическое) проектирование

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

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

Чаще всего концептуальная модель базы данных включает в себя:

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

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

Логическое (даталогическое) проектирование

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

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

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

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

Целью любой информационной системы является обработка данных об объектах реального мира.

В широком смысле слова база данных - это совокупность сведений о конкретных объектах реального мира в какой-либо предметной области.

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

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

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

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

Классификация БД

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

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

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

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

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

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

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

Вспомогательная область управления включает:

Строку состояния;

Панели инструментов;

Вертикальную и горизонтальную линейки прокрутки.

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

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

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

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

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

Наведением курсора на выбранную в меню команду при помощи клавиш управления курсором и нажатием клавиши ввода;

Вводом с клавиатуры первой буквы выбранной команды.

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

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

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

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

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

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

5. команды для работы в основных режимах СУБД (таблица, форма, запрос, отчет);

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

7. команды для работы с файлами:

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

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

Модели базы данных.

Классификация моделей данных базируется на понятиях о взаимосвязи объектов. Между таблицами базами данных могут существовать четыре типа различных связей: «один к одному»; «один ко многим»; «многие ко многим».

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

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

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

28. Структурные элементы реляционной базы данных.
1. В реляционных базах данных любые совокупности данных представляются в виде двумерных таблиц (отношений), подобных описанному выше списку учащихся. При этом каждая таблица состоит из фиксированного числа столбцов и некоторого (переменного) количества строк. Описание столбцов принято называть макетом таблицы.
2. Каждый столбец таблицы представляет поле – элементарную единицу логической организации данных, которая соответствует неделимой единице информации - реквизиту объекта данных (например, фамилия учащегося, адрес).
Для описания поля используются характеристики:
· имя поля (например, № личного дела, Фамилия);
· тип поля (например, символьный, дата);
· дополнительные характеристики (длина поля, формат, точность).
Например, поле Дата рождения может иметь тип «дата» и длину 8 (6 цифр и 2 точки, разделяющих в записи даты день, месяц и год).
3. Каждая строка таблицы называется записью. Запись логически объединяет все поля, описывающие один объект данных, например, все поля в первой строке вышеприведенной таблицы описывают данные об учащемся Петрове Иване Васильевиче 12.03.89 рождения, проживающем по адресу ул. Горького, 12-34, обучающемся в 4А классе, номер личного дела - П-69. Система нумерует записи по порядку: 1,2, ..., n, где n - общее число записей (строк) в таблице на данный момент. В отличие от количества полей (столбцов) в таблице количество записей в процессе эксплуатации БД может как угодно меняться (от нуля до миллионов). Количество полей, их имена и типы тоже можно изменить, но это уже особая операция, которая называется изменением макета таблицы.
3. В структуре записи файла указываются поля, значения которых являются простым ключом, которые идентифицируют экземпляр записи. Примером такого простого ключа в таблице Учащиеся является поле № личного дела, значение которого однозначно определяет один объект таблицы - одного учащегося, так как в таблице нет двух учащихся с одинаковым номером личного дела.
4. Каждое поле может входить в несколько таблиц (например, поле Фамилия может входить в таблицу Список занимающихся в театральном кружке).

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

30 . Экранный интерфейс базы данных MS-ACCESS. Компоненты базы данных MS-ACCESS
Систему Microsoft Access отличает универсальность, широкий набор визуальных средств разработки, возможность интеграции с другими программными продуктами пакета Microsoft Office, а также с программами, поддерживающими технологию OLE.
Запуск программы осуществляется с помощью команд Пуск, Программы, MS-Access. В появившемся окне приглашения имеются две опции, предназначенные для создания новой и открытия ранее созданной базы данных. При установке переключателя «Новая база данных» Access предлагает ввести имя базы. Необходимо задать имя базы данных и щелкнуть кнопку «ОК». Создание новой базы также может быть выполнено по команде Файл, Создать.
После запуска программы и создания новой базы данных появляется главное окно системы. Традиционно окно содержит заголовок, где указывается название программы – Microsoft Access, следующая строка содержит меню программы, а ниже - панель инструментов.
Рабочая область окна содержит разделы, соответствующие типам объектов, которые может содержать база данных. Такими объектами являются Таблицы, Запросы, Отчеты, Страницы, Макросы, Модули.
Заголовок окна содержит имя файла базы данных.
Интерфейс работы с объектами базы данных унифицирован, он имеет стандартные режимы работы – «Просмотр», «Конструктор», «Создать».

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

31. Создание таблиц в базе данных MS-ACCESS. Работа с формами в базе данных MS-ACCESS. Способы создания отчетов в MS-ACCESS.
Для создания таблицы необходимо открыть окно созданной базы данных, перейти на закладку Таблицы и в окне диалога выбрать режимы:

Создание таблицы в режиме ввода данных;

Создание новой таблицы в режиме Конструктор;

Создание новой таблицы в режиме Мастер.

После выбора режима дальнейшей работы необходимо создать структуру таблицы и, задав ее имя, сохранить.
По команде Файл, Внешние данные, Импорт позволяет осуществить импорт таблиц из внешнего файла в текущую базу данных;
По команде Файл, Внешние данные, Связь с таблицами позволяет осуществить создание таблиц, связанных с таблицами из внешних файлов.
Задание свойств полей. Наименование поля вводится в столбце Имя поля. При задании наименований полей надо следовать следующим правилам:

Наименование поля должно содержать до 64 символов;

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

Наименование поля не может начинаться с пробела;

Два поля в одной таблице не могут иметь одинаковые наименования.

Тип данных поля вводится в поле столбца Тип данных. В Access допустимыми являются данные следующих типов: текстовый, числовой, денежный, счетчик, дата/время, логический, поле МЕМО (поля с данными переменной длины может содержать до 65535 символов), поле объекта OLE, гиперссылка, мастер подстановок. Каждый из типов данных наделен собственными свойствами, которые отображаются в разделе Свойства поля окна Конструктора.
Первичным ключом называется одно или несколько полей, которые однозначно определяют каждую запись в таблице. Наличие ключа помогает быстрее находить и сортировать записи. Поля, используемые в качестве первичного ключа, индексируются автоматически, но можно составить отдельный индекс и для других полей. По умолчанию Access создает поле Код с типом Счетчик. Первичный ключ можно создавать самостоятельно, выбрав поле, которое предполагается использовать в качестве первичного ключа. Далее следует выбрать на панели инструментов Конструктор таблицы кнопку «Ключевое поле». На выделенном поле нажатие правой кнопки мышки приводит к появлению контекстного меню, в котором есть команда «Ключевое поле». В области маркировки поля появится пиктограмма с изображением ключа.
Ввод данных в таблицу с использованием режима таблицы является самым простым способом. При вводе данных в таблицу клавиша ТАВ используется для перехода на следующее поле.
Работа с формами в базе данных MS-Access
Создание форм. Данные в базе можно просматривать в различных режимах. Однако режим Формы обеспечивает максимальную гибкость, наиболее удобный способ просмотра, добавления, редактирования и удаления данных.
Форма позволяет отображать одновременно все поля одной или нескольких записей. Режим таблицы также позволяет просматривать несколько записей сразу, но в нем не всегда можно отображать все поля одновременно. Оптимально построенная форма может вмещать до 100 полей на одном экране, а если полей намного больше, то можно создать многостраничную форму для каждой записи.
Для создания форм используются следующие инструменты:

Конструктор – позволяет самостоятельно создать новую форму;
Мастер форм – позволяет автоматически создавать форма на основе выбранных из таблицы полей (используется следующий внешний вид формы: в один столбец, ленточный, табличный или выровненный);
Автоформа: в столбец – обеспечивает автоматическое создание формы с полями, расположенными в один столбец;

Автоформа: ленточная – обеспечивает автоматическое создание ленточных форм;

Автоформа: табличная – обеспечивает автоматическое создание табличных форм;

Диаграмма – создание формы с диаграммой;
Сводная таблица – создание формы со сводной таблицей Excel.
Перечисленные инструменты становятся доступны также с помощью команды Вставка, Форма или после нажатия кнопки на панели инструментов Новый объект: автоформа.
Для создания формы необходимо открыть окно базы данных, выбрать вкладку Формы, щелкнуть кнопку «Создать», в окне диалога выбрать вариант формы и следовать указаниям диалогового окна.

Печать формы осуществляется с помощью соответствующей кнопки «Печать» на панели инструментов Стандартная или команды меню Файл, Печать. Готовую форму можно открыть в режиме Формы или с помощью Конструктора формы для ее модификации.

6.10. Работа с объектами в базе данных MS-Access

В MS Access можно вставлять рисунки, видеоклипы, файлы со звуком, деловые диаграммы, электронные таблицы Excel, а также документы Word. С формами и отчетами можно связать любой объект типа OLE. При этом их можно не только использовать в Access, но и редактировать непосредственно в форме. Объекты можно внедрять в присоединенные и свободные рамки, а также в рамку рисунка. Внедрение приводит к размещению объекта в базе данных Access, где он сохраняется в форме, отчете или записи таблицы.

Внедрение свободного объекта. Для внедрения свободного объекта в форму или отчет можно использовать два следующих способа:

Вставить объект в форму или отчет, при этом будет создан объект типа «рисунок» или свободная рамка объекта;

Сначала создать объект типа «рисунок» или свободную рамку объекта, а затем вставить объект или рисунок в эту рамку.

Внедрение рисунка.Для внедрения объектов типа OLE или рисунков в свободную рамку объекта или рисунка необходимо:

Открыть форму в режиме Конструктора формы;

Щелкнуть в панели элементов по кнопке Рисунок;

Создать рамку рисунка, переместив инструмент Рисунок.

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

Работа с отчетами в MS- Access

Для создания отчетов в MS Access имеются гибкие и мощные средства:

Конструктор отчетов, в котором вы самостоятельно разрабатываете собственные отчеты с заданными свойствами;

Мастер отчетов, позволяющий достаточно быстро создать отчет на основе выбранных полей;

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

Автоотчет: ленточный, позволяющий автоматически создавать ленточный отчет;

Мастер диаграмм, создающий отчет, содержащий отображение данных в виде диаграммы;

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

Для просмотра отчета базы данных можно воспользоваться:

командами Файл, Предварительный просмотр основного меню;

командами Предварительный просмотр контекстного меню;

кнопкой Предварительный просмотр панели инструментов.

Для печати созданного отчета из окна Конструктора отчетов или окна Базы данных необходимо:

Выполнить команды Файл, Печать, при этом откроется окно диалога Печать, позволяющее задать необходимые параметры печати;

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

Для модификации созданного ранее отчета необходимо:

В окне базы данных перейти на вкладку Отчет;

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

Основные понятия и классификация систем управления базами данных База данных (БД) представляет собой совокупность структурированных данных, хранимых в памяти вычислительной системы и отображающих состояние объектов и их взаимосвязей в рассматриваемой предметной области. Логическую структуру данных, хранимых в базе, называют моделью представления данных. К основным моделям представления данных (моделям данных) относятся иерархическая, сетевая, реляционная. Система управления базами данных (СУБД) - это комплекс языковых и программных средств, предназначенный для создания, ведения и совместного использования БД многими пользователями. Обычно СУБД различают по используемой модели данных. Так, СУБД, основанные на использовании реляционной модели данных, называют реляционными СУБД. Для работы с базой данных зачастую достаточно средств СУБД. Однако если требуется обеспечить удобство работы с БД неквалифицированным пользователям или интерфейс СУБД не устраивает пользователей, то могут быть разработаны приложения. Их создание требует программирования. Приложение представляет собой программу или комплекс программ, обеспечивающих автоматизацию решения какой-либо прикладной задачи. Приложения могут создаваться в среде или вне среды СУБД - с помощью системы программирования, использующей средства доступа к БД, к примеру, Delphi или С++ Вuildег. Приложения, разработанные в среде СУБД, часто называют приложениями СУБД, а приложения, разработанные вне СУБД, - внешними приложениями. Словарь данных представляет собой подсистему БД, предназначенную для централизованного хранения информации о структурах данных, взаимосвязях файлов БД друг с другом, типах данных и форматах их представления, принадлежности данных пользователям, кодах защиты и разграничения доступа и т. п. Информационные системы, основанные на использовании БД, обычно функционируют в архитектуре клиент-сервер. В этом случае БД размещается на компьютере-сервере, и к ней осуществляется совместный доступ. Сервером определенного ресурса в компьютерной сети называется компьютер (программа), управляющий этим ресурсом, клиентом -компьютер (программа), использующий этот ресурс. В качестве ресурса компьютерной сети могут выступать, к примеру, базы данных, файлы, службы печати, почтовые службы. Достоинством организации информационной системы на архитектуре клиент-сервер является удачное сочетание централизованногохранения, обслуживания и коллективного доступа к общей корпоративной информации с индивидуальной работой пользователей. Согласно основному принципу архитектуры клиент-сервер, данные обрабатываются только на сервере. Пользователь или приложение формируют запросы, которые поступают к серверу БД в виде инструкций языка SQL. Сервер базы данных обеспечивает поиск и извлечение нужных данных, которые затем передаются на компьютер пользователя. Достоинством такого подхода в сравнении предыдущим является заметно меньший объем передаваемых данных. Выделяют следующие виды СУБД: * полнофункциональные СУБД; * серверы БД; * средства разработки программ работы с БД. Полнофункциональные СУБД представляют собой традиционные СУБД. К ним относятся dBaseIV, Microsoft Access, Microsoft FoxPro и др. Серверы БД предназначены для организации центров обработки данных в сетях ЭВМ. Серверы БД обеспечивают обработку запросовклиентских программ обычно с помощью операторов SQL. Примерами серверов БД являются: Microsoft SQL Server, InterBase и др. В роли клиентских программ в общем случае могут использоваться СУБД, электронные таблицы, текстовые процессоры, программы электронной почты и др. Средства разработки программ работы с БД могут использоваться для создания следующих программ: * клиентских программ; * серверов БД и их отдельных компонентов; * пользовательских приложений. По характеру использования СУБД делят на многопользовательские (промышленные) и локальные (персональные). Промышленные, СУБД представляют собой программную основу для разработки автоматизированных систем управления крупнымиэкономическими объектами. Промышленные СУБД должны удовлетворять следующим требованиям: * возможность организации совместной параллельной работы многих пользователей; * масштабируемость; * переносимость на различные аппаратные и программные платформы; * устойчивость по отношению к сбоям различного рода, в том числе наличие многоуровневой системы резервирования хранимой информации; * обеспечение безопасности хранимых данных и развитой структурированной системы доступа к ним. Персональные СУБД - это программное обеспечение, ориентированное на решение задач локального пользователя или небольшой группы пользователей и предназначенное для использования на персональном компьютере. Это объясняет и их второе название - настольные. Определяющими характеристиками настольных систем являются: * относительная простота эксплуатации, позволяющая создавать на их основе работоспособные пользовательские приложения; * относительно ограниченные требования к аппаратным ресурсам. По используемой модели данных СУБД разделяют на иерархические, сетевые, реляционные, объектно-ориентированные и др. НекоторыеСУБД могут одновременно поддерживать несколько моделей данных. Для работы с данными, хранящимися в базе, используются следующие типы языков: * язык описания данных - высокоуровневый непроцедурный язык декларативного типа, предназначенный для описания логической структуры данных; * язык манипулирования данными - совокупность конструкций, обеспечивающих выполнение основных операций по работе с данными: ввод, модификацию и выборку данных по запросам. Названные языки в различных СУБД могут иметь отличия. Наибольшее распространение получили два стандартизованных языка: QBE - язык запросов по образцу и SQL - структурированный язык запросов. QBE в основном обладает свойствами языка манипулирования данными, SQL сочетает в себе свойства языков обоих типов. СУБД реализует следующие основные функции низкого уровня: * управление данными во внешней памяти; * управление буферами оперативной памяти; * управление транзакциями; * ведение журнала изменений в БД; * обеспечение целостности и безопасности БД. Реализация функции управления данными во внешней памяти обеспечивает организацию управления ресурсами в файловой системе ОС. Необходимость буферизации данных обусловлена тем, что объем оперативной памяти меньше объема внешней памяти. Буферы представляют собой области оперативной памяти, предназначенные для ускорения обмена между внешней и оперативной памятью. В буферах временно хранятся фрагменты БД, данные из которых предполагается использовать при обращении к СУБД или планируется записать в базу после обработки. Механизм транзакций используется в СУБД для поддержания целостности данных в базе. Транзакцией называется некоторая неделимая последовательность операций над данными БД, которая отслеживается СУБД от начала и до завершения. Если по каким-либо причинам (сбои и отказы оборудования, ошибки в программном обеспечении, включая приложение) транзакция остается незавершенной, то она отменяется. Транзакции присущи три основных свойства: * атомарность (выполняются все входящие в транзакцию операции или ни одна); * сериализуемость (отсутствует взаимное влияние выполняемых в одно и то же время транзакций); * долговечность (даже крах системы не приводит к утрате результатов зафиксированной транзакции). Примером транзакции является операция перевода денег с одного счета на другой в банковской системе. Сначала снимают деньги с одного счета, затем начисляют их на другой счет. Если хотя бы одно из действий не выполнится успешно, результат операции окажется неверным и будет нарушен баланс операции. Ведение журнала изменений выполняется СУБД для обеспечения надежности хранения данных в базе при наличии аппаратных и программных сбоев. Обеспечение целостности БД составляет необходимое условие успешного функционирования БД, особенно при ее сетевом использовании. Целостность БД - это свойство базы данных, означающее, что в ней содержится полная, непротиворечивая и адекватно отражающая предметную область информация. Целостное состояние БД описывается с помощью ограничений целостности в виде условий, которым должны удовлетворять хранимые в базе данные. Обеспечение безопасности достигается в СУБД шифрованием данных, парольной защитой, поддержкой уровней доступа к базе данных и отдельным ее элементам (таблицам, формам, отчетам и др.).

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

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

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

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

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

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

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

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

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

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

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

Слово «алгоритм» появилось в результате искаженного перевода с арабского на европейские языки имени узбекского ученого IX века Аль Хорезми, который изложил правила арифметических действий над числами в позиционной десятичной системе счисления. Эти правила и назвали алгоритмами.

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

Алгоритм имеет ряд обязательных свойств (атрибутов):

Дискретность – предусматривает разбиение процесса обработки информации на более простые этапы (шаги выполнения);

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

- результативность (или конечность) – предполагает завершение работы алгоритма в целом за конечное число шагов;

Массовость – характеризует пригодность алгоритма для решения определенного класса задач.

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

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

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

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

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

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

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

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

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

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

  • · БД во вторичной памяти (традиционные): средой постоянного хранения является периферийная энергонезависимая память (вторичная память) -- как правило жёсткий диск. В оперативную память СУБД помещает лишь кеш и данные для текущей обработки.
  • · БД в оперативной памяти (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 . Объявляя новые типы записей на основе уже имеющихся типов, пользователь может конструировать сколь угодно сложные типы данных.

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

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

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

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

Выбор редакции
Знак Зодиака составляет всего 50% Вашей личности. Остальные 50% нельзя узнать, читая общие гороскопы. Нужно составить индивидуальный...

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

Как и большинство его коллег, советских детских писателей и поэтов, Самуил Маршак не сразу начал писать для детей. Он родился в 1887...

Дыхательная гимнастика по методу Стрельниковой помогает справляться с приступами высокого давления. Правильное выполнение упражнений -...
О ВУЗе Брянский государственный университет имени академика И.Г. Петровского - самый крупный вуз региона, в котором обучается более 14...
Вопрос №1. 1). Вставьте пропущенные буквы, объясните написание слов. Прил…жжение, выр…сти, к…снуться, м…кать, разг…раться, ск…кать,...
Экономический календарь Форекс – это настольная книга каждого трейдера независимо от опыта торговли и уровня профессионализма, и особенно...
Представители класса паукообразных – существа, живущие рядом с человеком на протяжении многих веков. Но этого времени оказалось...
Белые туфли у девушек и женщин практически всегда ассоциируются со свадебным нарядом, хотя белый цвет туфель уже давно не обязателен. А...