1.    Базы данных и базы знаний. Классификация и примеры основных СУБД.

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

Структура БД

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

-         Адекватность описываемому объекту/системе — на уровне концептуальной и логической модели.

-         Удобство использования для ведения учёта и анализа данных — на уровне так называемой физической модели.

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

Виды логических (даталогических) моделей БД:

Документальные (архивы) — ориентированные на формат документа, дескрипторные, тезаурусные.

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

-         теоретико-графовые: иерархическая модель, сетевая модель.

-         теоретико-множественные: реляционная модель (ER-модель), многомерная модель.

-         объектно-ориентированные: объектная модель.

-         основанные на инвертированных файлах.

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

По модели представления данных БД классифицируются:

-         Картотеки

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

-         Сетевые

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

-         Многомерные

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

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

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

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

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

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

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

-         моделирование и интеграция всех представлений

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

2. Логическое проектирование — преобразование требований к данным в структуры данных. На выходе получаем СУБД-ориентированную структуру базы данных и спецификации прикладных программ. На этом этапе часто моделируют базы данных применительно к различным СУБД и проводят сравнительный анализ моделей.

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

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

КОНЦЕПТУАЛЬНЫЙ УРОВЕНЬ — Представление аналитика (используется инфологическая модель «сущность-связь»)

   * сущности

   * атрибуты

   * связи

ЛОГИЧЕСКИЙ УРОВЕНЬ — Представление программиста

   * записи

   * элементы данных

   * связи между записями

ФИЗИЧЕСКИЙ УРОВЕНЬ — Представление администратора

   * группирование данных

   * индексы

   * методы доступа

Существуют 4 основные модели данных – списки (плоские таблицы), реляционные базы данных, иерархические и сетевые структуры.

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

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

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

-         управление данными во внешней памяти (на дисках);

-         управление данными в оперативной памяти с использованием дискового кэша;

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

-         поддержка языков БД (язык определения данных, язык манипулирования данными).

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

-         ядро, которое отвечает за управление данными во внешней и оперативной памяти и журнализацию,

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

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

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

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

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

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

-         Сетевые

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

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

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

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

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

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

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

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

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

На данный момент файл-серверные СУБД считаются устаревшими.

Примеры: Microsoft Access, Borland Paradox.

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

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

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

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

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

Примеры: OpenEdge, SQLite, BerkeleyDB, один из вариантов Firebird, один из вариантов MySQL, Sav Zigzag, Microsoft SQL Server Compact, ЛИНТЕР.

База знаний, БЗ (англ. Knowledge base, KB) — это особого рода база данных, разработанная для управления знаниями (метаданными), то есть сбором, хранением, поиском и выдачей знаний. Раздел искусственного интеллекта, изучающий базы знаний и методы работы со знаниями, называется инженерией знаний.

 

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

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

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

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

 

Hosted by uCoz