Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Ответы к экзамену по БД (ВФ) / !Все ответы по БД v0.2.13.docx
Скачиваний:
189
Добавлен:
10.05.2014
Размер:
3.32 Mб
Скачать

1. Определение информации. Основные проблемы, возникающие при хранении информации.

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

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

Схема обработки данных в файловой системе:

Файлы отдела реализации:

PropertyForRent(propertyNo, street, city, postcode, type, rooms, rent, ownerNo)

PrivateOwner(ownerNo, fName, lName, address, telNo)

Client(clientNo, fName, lName, address, telNo, prefType, maxRent)

Файлы отдела контрактов:

Lease(leaseNo, propertyNo, clientNo, rent, paymentMethod, deposit, paid, rentStart, rentFinish, duration)

PropertyForRent(propertyNo, street, city, postcode, rent)

Client(clientNo, fName, lName, address, telNo)

Недостатки файловых систем (проблемы при хранении):

  • Разделение и изоляция данных. Когда данные изолированы в отдельных файлах, доступ к ним затруднителен. Например, для создания списка всех домов, отвечающих требованиям потенциальных арендаторов, предварительно нужно создать временный файл со списком арендаторов, желающих арендовать недвижимость типа "дом". Затем в файле ProperсуForRent следует осуществить поиск объектов недвижимости типа "дом" с арендной платой ниже установленного арендатором максимума. Выполнять подобную обработку данных в файловых системах достаточно сложно. Для извлечения соответствующей поставленным условиям информации программист должен организовать синхронную обработку двух файлов. Трудности существенно возрастают, когда необходимо извлечь данные более чем из двух файлов.

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

  • Зависимость от файлов. Изменить структуру данных достаточно сложно. К примеру, чтобы изменить длину какого-либо поля с 40 на 41 символ, придётся создавать программу спецназначения, которая преобразует существующий файл в новый формат: откроет исходный файл для чтения, откроет временный файл для записи, считает данные из исходного и запишет их во временный в новом формате (причём обрабатываются все записи), удалит исходный файл, переименует временный в исходный файл. Причём должны быть изменены все программы, которые обращаются к данному файлу, даже те, которые вообще не используют изменяемое поле. Это большая трата времени и огромная вероятность ошибки.

  • Несовместимость файлов. Т.к. структура файлов зависит от кода приложения, она также зависит от языка программирования этого приложения. Структура файла на языке COBOL отличается от структуры языка C. Это усложняет процесс их совместной обработки, т.к. требуется писать доп. ПО для преобразования этих полей в какой-то общий формат.

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

Причины:

  • Определение данных содержится внутри приложений, а не хранится отдельно и независимо от них.

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

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