
ГОСЫ Ответы Антипов фулл / 8. Антипов / Антипов 17
.docx17.Нечисловая обработка данных. Данные на уровне обрабатываемых данных Основные понятия и определения технологии БД. Физические данные Логическое представление. Независимость данных. СУБД, основные функции. Модель данных. Схема Система БД.
В общем виде архитектура нечисловой обработки должна удовлетворять следующим требованиям:
-
ассоциативная память с ориентацией на обработку наборов данных
-
специализированный набор команд с непосредственной аппаратной поддержкой
-
параллелизм и использование процессоров в памяти:
-
параллельное выполнение таких задач как "повысить зарплату всем служащим"
-
процессор в памяти - ликвидация канала процессор-память
-
К сожалению, до настоящего времени не достигнуто больших успехов в создании ассоциативных систем. Более подробно с этим вопросом можно ознакомиться в книге Э.Озкарахана (см. список литературы).
На самом верхнем уровне можно выделить числовую и нечисловую обработку. В указанные виды обработки вкладывается различная трактовка содержания понятия «данные». При числовой обработке используются такие объекты, как переменные, векторы, матрицы, многомерные массивы, константы и т.д. При нечисловой обработке объектами могут быть файлы, записи, поля, иерархии, сети, отношения и т.д. Другое отличие заключается в том, что при числовой обработке содержание данных не имеет большого значения, в то время как при нечисловой обработке нас интересуют непосредственные сведения об объектах, а не их совокупность в целом.
С точки зрения реализации на основе современных достижений вычислительной техники выделяют следующие виды обработки информации:
-
последовательная обработка, применяемая в традиционной фоннеймановской архитектуре ЭВМ, располагающей одним процессором;
-
параллельная обработка, применяемая при наличии нескольких процессоров в ЭВМ;
-
конвейерная обработка, связанная с использованием в архитектуре ЭВМ одних и тех же ресурсов для решения разных задач, Причем если эти задачи тождественны, то это последовательный конвейер, если задачи одинаковые -- векторный конвейер.
Принято относить существующие архитектуры ЭВМ с точки зрении обработки информации к одному из следующих классов.
Архитектуры с одиночным потоком команд и данных (SISD). К этому классу относятся традиционные фоннеймановские однопроцессорные системы, где имеется центральный процессор, работающий с парами «атрибут - значение».
Архитектуры с одиночными потоками команд и данных (SIMD). Особенностью данного класса является наличие одного (центрального) контроллера, управляющего рядом одинаковых процессоров. В зависимости от возможностей контроллера и процессорных элементов, числа процессоров, организации режима поиска и характеристик маршрутных и выравнивающих сетей выделяют:
-
матричные процессоры, используемые для решения векторных и матричных задач;
-
ассоциативные процессоры, применяемые для решения нечисловых задач и использующие память, в которой можно обращаться непосредственно к информации, хранящейся в ней;
-
процессорные ансамбли, применяемые для числовой и нечисловой обработки;
-
конвейерные и векторные процессоры.
Архитектуры с множественным потоком команд и одиночным потоком данных (MISD). К этому классу могут быть отнесены конвейерные процессоры.
Архитектуры с множественным потоком команд и множественным потоком данных (MIMD). К этому классу могут быть отнесены следующие конфигурации: мультипроцессорные системы, системы с мультобработкой, вычислительные системы из многих машин, вычислительные сети.
Основные процедуры обработки данных представлены на рисунке 4.
Рис. 4. Основные процедуры обработки данных
Создание данных, как процесс обработки, предусматривает их образование в результате выполнения некоторого алгоритма и дальнейшее использование для преобразований на более высоком уровне.
Модификация данных связана с отображением изменений в реальной предметной области, осуществляемых путем включения новых данных и удаления ненужных.
Контроль, безопасность и целостность направлены на адекватное отображение реального состояния предметной области в информационной модели и обеспечивают защиту информации от несанкционированного доступа (безопасность) и от сбоев и повреждений технических и программных средств.
Базы данных: основные понятия и определения
Целостность базы данных
Це́лостность ба́зы да́нных (database integrity) — соответствие имеющейся в базе данных информации её внутренней логике, структуре и всем явно заданным правилам. Каждое правило, налагающее некоторое ограничение на возможное состояние базы данных, называется ограничением целостности (integrity constraint). Примеры правил: вес детали должен быть положительным; количество знаков в телефонном номере не должно превышать 25; возраст родителей не может быть меньше возраста их биологического ребёнка и т.д.
Задача аналитика и проектировщика базы данных — возможно более полно выявить все имеющиеся ограничения целостности и задать их в базе данных.
Целостность БД не гарантирует достоверности содержащейся в ней информации, но обеспечивает по крайней мере правдоподобность этой информации, отвергая заведомо невероятные, невозможные значения. Таким образом, не следует путать целостность БД с достоверностью БД. Достоверность (или истинность) есть соответствие фактов, хранящихся в базе данных, реальному миру. Очевидно, что для определения достоверности БД требуется обладание полными знаниями как о содержимом БД, так и о реальном мире. Для определения целостности БД требуется лишь обладание знаниями о содержимом БД и о заданных для неё правилах. Поэтому СУБД может (и должна) контролировать целостность БД, но принципиально не в состоянии контролировать достоверность БД. Контроль достоверности БД может быть возложен только на человека, да и то в ограниченных масштабах, поскольку в ряде случаев люди тоже не обладают полнотой знаний о реальном мире.
Итак, БД может быть целостной, но не достоверной. Возможно и обратное: БД может быть достоверной, но не целостной. Последнее имеет место, если правила (ограничения целостности) заданы неверно.
Транзакция
Транза́кция (англ. transaction) — группа последовательных операций с базой данных, которая представляет собой логическую единицу работы с данными. Транзакция может быть выполнена либо целиком и успешно, соблюдая целостность данных и независимо от параллельно идущих других транзакций, либо не выполнена вообще и тогда она не должна произвести никакого эффекта. Транзакции обрабатываются транзакционными системами, в процессе работы которых создаётся история транзакций.
Актуальность хранимых данных
В любой момент времени информация, содержащаяся в базе данных, должна отражать текущую ситуацию в отделе заказов и на складе, представлять современные данные о товарах и клиентах.
Многоаспектное использование данных
Рассмотрение бизнес-процессов даже на небольшом торговом предприятии показывает, что информация о клиенте может поступать по различным каналам: в процессе заключения договора - через отдел маркетинга, в процессе оплаты счетов - от финансового отдела, в процессе отгрузки товара - от отдела сбыта и т.д. Вся информация хранится в одном месте - в единой базе данных. Эта информация может быть использована любым отделом предприятия в соответствии с правами доступа и функциями. Информационная система предприятия должна быть многофункциональной. Необходимо вести учет заказов, учет новых товаров, движение товаров на складе, обрабатывать данные о покупателях, проводить анализ продаж, составлять итоговые отчеты. В небольшой организации проводить всю эту работу может один и тот же сотрудник, в крупных компаниях с большой интенсивностью заказов и движения товаров каждый сотрудник имеет свой участок работы. В любом случае система должна предоставить каждому пользователю нужные ему данные в удобной форме. Так, для ведения каталога товаров нужны данные только о товарах, товарных группах и поставщиках. Для анализа продаж могут потребоваться недельные сводки заказов, сгруппированные по отдельным товарам. В ежемесячных отчетах для руководства компании должны быть данные о сбыте для групп товаров.
Возможность модификации системы
В процессе эксплуатации системы может возникнуть необходимость в ее изменении или дополнении новыми функциями. Допустим, что в связи с расширением деятельности нашей торговой организации потребовалось привлечь сторонние организации для доставки товаров и теперь данные о новых партнерах необходимо включить в систему заказов. Информационная система должна быть построена таким образом, чтобы, во-первых, было возможно ее расширение и модификация данных и, во-вторых, включение новых функций не должно затрагивать системы в целом.
Надежность
Скорость доступа
Быстрота разработки
Организация базы данных
По технологии обработки данных базы данных подразделяются на централизованные и распределенные.
Централизованная база данных хранится в памяти одной вычислительной системы. Эта вычислительная система может быть мэйнфреймом - тогда доступ к ней организуется с использованием терминалов - или файловым сервером локальной сети ПК.
Распределенная база данных состоит из нескольких, возможно, пересекающихся или даже дублирующих друг друга частей, которые хранятся в различных ЭВМ вычислительной сети. Работа с такой базой осуществляется с помощью системы управления распределенной базой данных (СУРБД).
По способу доступа к данным базы данных разделяются на базы данных с локальным доступом и базы данных с сетевым доступом.
Для всех современных баз данных можно организовать сетевой доступ с многопользовательским режимом работы.
Централизованные базы данных с сетевым доступом могут иметь следующую архитектуру:
-
файл-сервер;
-
клиент-сервер базы данных;
-
"тонкий клиент" - сервер приложений - сервер базы данных (трехуровневая архитектура).
Структура информационной системы
Структуру ИС составляет совокупность отдельных ее частей, называемых подсистемами. Подсистема — это часть системы, выделенная по какому-либо признаку. Если общую структуру ИС рассматривать как совокупность подсистем независимо от сферы применения, то в этом случае подсистемы называют обеспечивающими.
Среди основных подсистем ИС обычно выделяют информационное, техническое, математическое, программное, организационное и правовое обеспечение (см. рисунок).
Основные функции СУБД
-
управление данными во внешней памяти (на дисках);
-
управление данными в оперативной памяти с использованием дискового кэша;
-
журнализация изменений, резервное копирование и восстановление базы данных после сбоев;
-
поддержка языков БД (язык определения данных, язык манипулирования данными).
Обычно современная СУБД содержит следующие компоненты:
-
ядро, которое отвечает за управление данными во внешней и оперативной памяти и журнализацию,
-
процессор языка базы данных, обеспечивающий оптимизацию запросов на извлечение и изменение данных и создание, как правило, машинно-независимого исполняемого внутреннего кода,
-
подсистему поддержки времени исполнения, которая интерпретирует программы манипуляции данными, создающие пользовательский интерфейс с СУБД
-
а также сервисные программы (внешние утилиты), обеспечивающие ряд дополнительных возможностей по обслуживанию информационной системы.
В классической теории баз данных, модель данных есть формальная теория представления и обработки данных в системе управления базами данных (СУБД), которая включает, по меньшей мере, три аспекта:
1) аспект структуры: методы описания типов и логических структур данных в базе данных;
2) аспект манипуляции: методы манипулирования данными;
3) аспект целостности: методы описания и поддержки целостности базы данных.
Аспект структуры определяет, что из себя логически представляет база данных, аспект манипуляции определяет способы перехода между состояниями базы данных (то есть способы модификации данных) и способы извлеченияданных из базы данных, аспект целостности определяет средства описаний корректных состояний базы данных.
Модель данных — это абстрактное, самодостаточное, логическое определение объектов, операторов и прочих элементов, в совокупности составляющих абстрактную машину доступа к данным, с которой взаимодействует пользователь. Эти объекты позволяют моделировать структуру данных, а операторы — поведение данных[1].
Каждая БД и СУБД строится на основе некоторой явной или неявной модели данных. Все СУБД, построенные на одной и той же модели данных, относят к одному типу. Например, основой реляционных СУБД является реляционная модель данных, сетевых СУБД — сетевая модель данных, иерархических СУБД — иерархическая модель данных и т.д.