
- •Классификация по модели данных
- •Классификация по среде постоянного хранения
- •Классификация по содержимому
- •Классификация по степени распределённости
- •Другие виды бд
- •1.Проектирование базы данных.
- •Методика нормализации.
- •Диаграммы er-экземпляров и er-типа
- •23. Sql. Типы данных.
- •28. Архитектура «клиент-сервер». Fs-модель.
- •29 Архитектура «клиент-сервер». Rda-модель.
- •30Архитектура «клиент-сервер». Dbs-модель.
- •31. Архитектура «клиент-сервер». As-модель.
- •Многопользовательский, однопроцессный, однопотоковый доступ к серверу бд (Desktop: Access, FoxPro, Paradox, dBase, Clipper)
Классификация информационных систем. Краткая характеристика основных видов информационных систем.
«информационная система — совокупность содержащейся в базах данных информации и обеспечивающих её обработку информационных технологий и технических средств»
Классификация ИС:
Классификация по архитектуре
По степени распределённости отличают:
настольные (desktop), или локальные ИС, в которых все компоненты (БД, СУБД, клиентские приложения) находятся на одном компьютере;
распределённые (distributed) ИС, в которых компоненты распределены по нескольким компьютерам.
Распределённые ИС, в свою очередь, разделяют на:
файл-серверные ИС (ИС с архитектурой «файл-сервер»);
клиент-серверные ИС (ИС с архитектурой «клиент-сервер»).
В файл-серверных ИС база данных находится на файловом сервере, а СУБД и клиентские приложения находятся на рабочих станциях.
В клиент-серверных ИС база данных и СУБД находятся на сервере, а на рабочих станциях находятся клиентские приложения.
В свою очередь, клиент-серверные ИС разделяют на двухзвенные и многозвенные.
В двухзвенных (англ. two-tier) ИС всего два типа «звеньев»: сервер баз данных, на котором находятся БД и СУБД (back-end), и рабочие станции, на которых находятся клиентские приложения (front-end). Клиентские приложения обращаются к СУБД напрямую.
В многозвенных (англ. multi-tier) ИС добавляются промежуточные «звенья»: серверы приложений (application servers). Пользовательские клиентские приложения не обращаются к СУБД напрямую, они взаимодействуют с промежуточными звеньями. Типичный пример применения многозвенности — современные веб-приложения, использующие базы данных.
Классификация по степени автоматизации
автоматизированные: ИС, в которых автоматизация может быть неполной (то есть требуется постоянное вмешательство персонала);
автоматические: ИС, в которых автоматизация является полной, то есть вмешательство персонала не требуется или требуется только эпизодически.
«Ручные ИС» («без компьютера») существовать не могут, поскольку существующие определения предписывают обязательное наличие аппаратно-программных средств.
Классификация по характеру обработки данных
информационно-справочные, или информационно-поисковые ИС, в которых нет сложных алгоритмов обработки данных, а целью системы является поиск и выдача информации в удобном виде;
ИС обработки данных, или решающие ИС, в которых данные подвергаются обработке по сложным алгоритмам. К таким системам в первую очередь относят автоматизированные системы управления и системы поддержки принятия решений.
Классификация по сфере применения
Поскольку ИС создаются для удовлетворения информационных потребностей в рамках конкретной предметной области, то каждой предметной области (сфере применения) соответствует свой тип ИС. Перечислять все эти типы не имеет смысла, так как количество предметных областей велико, но можно указать в качестве примера следующие типы ИС:
Экономическая информационная система — информационная система, предназначенная для выполнения функций управления на предприятии.
Медицинская информационная система — информационная система, предназначенная для использования в лечебном или лечебно-профилактическом учреждении.
Географическая информационная система — информационная система, обеспечивающая сбор, хранение, обработку, доступ, отображение и распространение пространственно-координированных данных (пространственных данных).
Классификация по охвату задач (масштабности)
Персональная ИС предназначена для решения некоторого круга задач одного человека.
Групповая ИС ориентирована на коллективное использование информации членами рабочей группы или подразделения.
Корпоративная ИС в идеале охватывает все информационные процессы целого предприятия, достигая их полной согласованности. Такие системы иногда называют системами комплексной автоматизации предприятия.
Этапы развития баз данных.
0) Нулевое поколение: менеджеры записей (4000 г. до н. э. - 1900). В первых известных письменных свидетельствах описывается учет царской казны и налогов в Шумере. Поддержка записей имеет долгую историю. В следующие шесть тысяч лет наблюдается эволюция от глиняных таблиц к папирусу, затем к пергаменту и, наконец, к бумаге.
1) Первое поколение: менеджеры записей (1900-1955). Впервые автоматизированная обработка информации появилась приблизительно в 1800 году, когда Джеквард Лум начал производить раскрой ткани по образцам, представленным перфокартами. В 1890 г. Холлерит использовал технологию перфокарт для выполнения переписи населения Соединенных Штатов. К 1955 году у многих компаний имелись целые этажи, предназначенные для хранения перфокарт, во многом подобно тому, как в шумерских архивах хранились глиняные таблицы. На других этажах размещались шеренги перфораторов, сортировщиков и табуляторов. Эти машины программировались путем перемонтирования управляющих панелей, которые управляли некоторыми регистрами-накопителями и выборочно воспроизводили карты на других картах или на бумаге. Большие компании обрабатывали и производили миллионы записей каждую ночь.
2) Второе поколение: программируемое оборудование обработки записей (1955-1970). Электронные компьютеры с хранимыми программами были разработаны в 1940-х и начале 1950-х годов для выполнения научных и численных вычислений. Примерно в то же время компания Univac разработала аппаратуру магнитных лент, каждая из которых могла хранить столько информации, сколько десять тысяч перфокарт. Ключевым компонентом этой новой технологии было программное обеспечение. Было сравнительно легко программировать и использовать компьютеры. Недостатки: ошибка, она не распознавалась до вечерней обработки основного файла, бизнес не знал текущего состояния базы данных.
3) Третье поколение: оперативные сетевые базы данных (1965-1980). Для таких приложений, как ведение операций на фондовой бирже или резервирование билетов, требуется знание текущей информации. Эти приложения не могут использовать вчерашнюю информацию, обеспечиваемую системами пакетной обработки транзакций, - им нужен немедленный доступ к текущим данным. Мониторы собирали сообщения-запросы, поступающие с терминалов, быстро назначали программы сервера для обработки каждого сообщения и затем направляли ответ на соответствующий терминал. Оперативные базы данных хранились на магнитных дисках или барабанах, которые обеспечивали доступ к любому элементу данных за доли секунды. Простые индексно-последовательные организации записей быстро развились к более мощной модели записей, ориентированной на наборы.
4) Четвертое поколение: реляционные базы данных и архитектура клиент-сервер (1980-1995). В статье Э.Ф. Кодда 1970 года была обрисована реляционная модель [4], которая казалась альтернативой низкоуровневому навигационному интерфейсу. Реляционная модель оказалась хорошо пригодной к использованию в архитектуре клиент-сервер, параллельной обработке и графическим пользовательским интерфейсам. Сегодня многие клиент-серверные средства строятся на основе протокола Open Database Connectivity (ODBC), который обеспечивает для клиента стандартный механизм запросов высокого уровня к серверу.
5) Пятое поколение: мультимедийные базы данных (1995-...). . Приложениям требовалось дать данным поведение. Например, если данные представляли сложный объект, то методы поиска, сравнения и манипулирования данными становились специфичными для типов данных «документ», «графический образ», «звук» или «карта».
Сетевая и иерархическая модели данных.
Иерархическая модель данных строится по принципу иерархии объектов, то есть один тип объекта является главным, все нижележащие – подчиненными. Устанавливается связь «один ко многим», то есть для некоторого главного типа существует несколько подчиненных типов объектов. Иначе, главный тип именуется исходным типом, а подчиненные – порожденными. У подчиненных типов могут быть в свою очередь подчиненные типы. Наивысший в иерархии узел (совокупность атрибутов) называют корневым.
Сетевая модель данных строится по принципу «главный и подчиненный тип одновременно», то есть любой тип данных одновременно может одновременно порождать несколько подчиненных типов (быть владельцем набора) и быть подчиненным для нескольких главных (быть членом набора).
Основной структурой в иерархических моделях данных является «дерево». Особенности такого представления в наличии корня – единственной точки входа в дерево, и что каждый порожденный узел имеет только одного родителя. Недостатком этой системы является высокая избыточность. Одна запись БД – это совокупность деревьев. Через эту структуру нельзя построить отношение N:N (многие ко многим).
Основной структурой в сетевых моделях данных является «сеть». При таком представлении существует несколько входов в сеть – неоднозначность доступа к данным. Особенности такого представления: один или несколько узлов могут иметь больше одного родителя; время доступа изменяется в зависимости от исходного входа. Время доступа в сетевой структуре может быть больше, чем в иерархической структуре.
Недостатком обеих этих структур является то, что при добавлении новых вершин или установлении новых связей возникают проблемы выгрузки данных из базы, перегенерации полностью структуры, загрузка данных обратно в базу. При этом возникает вероятность потерять данные при обратной загрузке.
Понятие базы данных. Основные характеристики БД
База данных — совокупность взаимосвязанных, хранящихся вместе данных и их описаний, организованных по определенным правилам, предусматривающим общие принципы описания, хранения и манипулирования данными, допускающая минимальную избыточность и возможность использования для нескольких приложений.
Виды баз данных
Классификация по модели данных
Примеры:
Иерархическая
Объектная и объектно-ориентированная
Объектно-реляционная
Реляционная
Сетевая
Функциональная.
Классификация по среде постоянного хранения
Во вторичной памяти, или традиционная (англ. 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): БД, объём хранимых данных которой не меняется со временем, поскольку в процессе сохранения данных одни и те же записи используются циклически.
Трехуровневая организация БД. Основные требования к организации БД.
Уровень внешних моделей — самый верхний уровень, где каждая модель имеет свое "видение" данных. Этот уровень определяет точку зрения на БД отдельных приложений. Каждое приложение видит и обрабатывает только те данные, которые необходимы именно этому приложению. Например, система распределения работ использует сведения о квалификации сотрудника, но ее не интересуют сведения об окладе, домашнем адресе и телефоне сотрудника, и наоборот, именно эти сведения используются в подсистеме отдела кадров.
Концептуальный уровень — центральное управляющее звено, здесь база данных представлена в наиболее общем виде, который объединяет данные, используемые всеми приложениями, работающими с данной базой данных. Фактически концептуальный уровень отражает обобщенную модель предметной области (объектов реального мира), для которой создавалась база данных. Как любая модель, концептуальная модель отражает только существенные, с точки зрения обработки, особенности объектов реального мира.
Физический уровень — собственно данные, расположенные в файлах или в страничных структурах, расположенных на внешних носителях информации.
Эта архитектура позволяет обеспечить логическую (между уровнями 1 и 2) и физическую (между уровнями 2 и 3) независимость при работе с данными. Логическая независимость предполагает возможность изменения одного приложения без корректировки других приложений, работающих с этой же базой данных. Физическая независимость предполагает возможность переноса хранимой информации с одних носителей на другие при сохранении работоспособности всех приложений, работающих с данной базой данных. Это именно то, чего не хватало при использовании файловых систем.
Выделение концептуального уровня позволило разработать аппарат централизованного управления базой данных.
Требования:
1) Установление многосторонних связей
2) Производительность
3) Минимальные затраты
4) Минимальная избыточность
5) Возможности поиска
6) Целостность
Проектирование БД. Инфологическая и даталогическая модели данных.
Инфологическая модель (информационно-логическая модель) — ориентированная на человека и не зависимая от типа СУБД модель предметной области, определяющая совокупности информационных объектов, их атрибутов и отношений между объектами, динамику изменений предметной области, а также характер информационных потребностей пользователей. Инфологическая модель предметной области может быть описана моделью "сущность—связь" (моделью Чена), в основе которой лежит деление реального мира на отдельные различимые сущности, находящиеся в определенных связях друг с другом, причем обе категории — сущность и связь полагаются первичными, неопределенными понятиями. Модель представляется в виде схемы (Е—R.-схемы), на которой прямоугольниками отображаются имена типов сущностей, ромбами — имена типов соотношений между сущностями, овалами — имена атрибутов.
Даталогические модели — модели данных, ориентированные на выбранный тип СУБД: внутренняя, концептуальная, внешняя.
Внутренняя модель — модель данных низшего (физического) уровня в архитектуре СУБД, отражающая представление данных во внешней памяти и методы доступа к ним.
Внешняя модель — модель данных внешнего уровня в архитектуре СУБД, отражающая представление пользователя о базе данных (подсхема базы данных и ее описание).
Концептуальная модель — информационная модель предметной области в терминах конкретной СУБД, содержащая полный набор данных и связей между ними. В архитектуре СУБД представляет промежуточный между внешним и внутренним уровень.
Схема базы данных — описание даталогических моделей в терминах СУБД (часто используется как синоним модели данных).
Основные этапы, на которые разбивается процесс проектирования базы данных информационной системы:
Концептуальное проектирование - сбор, анализ и редактирование требований к данным. Для этого осуществляются следующие мероприятия:
- обследование предметной области, изучение ее информационной структуры
- выявление всех фрагментов, каждый из которых харакетризуется пользовательским представлением, информационными объектами и связями между ними, процессами над информационными объектами
- моделирование и интеграция всех представлений
По окончании данного этапа получаем концептуальную модель, инвариантную к структуре базы данных. Часто она представляется в виде модели "сущность-связь". Представление аналитика (сущности, атрибуты, связи).
Логическое проектирование - преобразование требований к данным в структуры данных. На выходе получаем СУБД-ориентированную структуру базы данных и спецификации прикладных программ. На этом этапе часто моделируют базы данных применительно к различным СУБД и проводят сравнительный анализ моделей.
Представление программиста (записи, элементы данных, связи между записями).
Физическое проектирование - определение особенностей хранения данных, методов доступа и т.д.
Представление администратора (группирование данных, индексы, методы доступа).
ER-модель.
Модель сущность-связь (ER-модель) (англ. entity-relationship model, ERM) — модель данных, позволяющая описывать концептуальные схемы предметной области.
ER-модель используется при высокоуровневом (концептуальном) проектировании баз данных. С её помощью можно выделить ключевые сущности и обозначить связи, которые могут устанавливаться между этими сущностями.
Во время проектирования баз данных происходит преобразование ER-модели в конкретную схему базы данных на основе выбранной модели данных (реляционной, объектной, сетевойили др.).
ER-модель представляет собой формальную конструкцию, которая сама по себе не предписывает никаких графических средств её визуализации. В качестве стандартной графической нотации, с помощью которой можно визуализировать ER-модель, была предложена диаграмма сущность-связь (ER-диаграмма) (англ. entity-relationship diagram, ERD).
Методика проектирования БД. Этапы проектирования БД.