Пример: Транспортная логистика
Я ищу:
На главную  |  Добавить в избранное  

Программированиеи компьютеры /

Проектирование баз и хранилищ данных

←предыдущая  следующая→
1 2 3 4 5 6 7 8 



Скачать реферат


Проектирование баз и хранилищ данных

Теория баз данных — сравнительно молодая область знаний Воз-раст ее составляет немногим более 30 лет. Однако изменился ритм вре-мени, оно уже не бежит, а летит, и мы вынуждены подчиняться ему во всем. И действительно, современный мир информационных технологий трудно представить себе без использования баз данных. Практически все системы в той или иной степени связаны с функциями долговременного хранения и обработки информации. Фактически информация становится фактором, определяющим эффективность любой сферы деятельности. Увеличились информационные потоки и повысились требования к ско-рости обработки данных, и теперь уже большинство операций не может быть выполнено вручную, они требуют применения наиболее перспек-тивных компьютерных технологий. Любые административные решения требуют четкой и точной оценки текущей ситуации и возможных пер-спектив ее изменения. И если раньше в оценке ситуации участвовало не-сколько десятков факторов, которые могли быть вычислены вручную, то теперь таких факторов сотни и сотни тысяч, и ситуация меняется не в те-чение года, а через несколько минут, а обоснованность принимаемых решений требуется большая, потому что и реакция на неправильные ре-шения более серьезная, более быстрая и более мощная, чем раньше. И, конечно, обойтись без информационной модели производства, хранимой в базе данных, в этом случае невозможно.

Тема 1. Введение. История развития баз данных

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

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

• надежное хранение информации в памяти компьютера;

• выполнение специфических для данного приложения преобра-зований информации и вычислений;

• предоставление пользователям удобного и легко осваиваемого интерфейса.

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

Вторая область использования вычислительной техники возникла несколько позже первой. Это связано с тем, что на заре вычислительной техники возможности компьютеров по хранению информации были очень ограниченными. Говорить о надежном и долговременном хране-нии информации можно только при наличии запоминающих устройств, сохраняющих информацию после выключения электрического питания. Оперативная (основная) память компьютеров этим свойством обычно не обладает. В первых компьютерах использовались два вида устройств внешней памяти — магнитные ленты и барабаны. Емкость магнитных лент была достаточно велика, но по своей физической природе они обес-печивали последовательный доступ к данным. Магнитные же барабаны (они ближе всего к современным магнитным дискам с фиксированными головками) давали возможность произвольного доступа к данным, но имели ограниченный объем хранимой информации.

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

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

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

Файлы и файловые системы

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

Такие системы иногда называются файловыми. Несмотря на относитель-ную простоту организации, файловые системы имеют ряд недостатков:

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

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

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

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

• создать файл (требуемого типа и размера);

• открыть ранее созданный файл;

• прочитать из файла некоторую запись (текущую, следующую, предыдущую, первую, последнюю);

• записать в файл на место текущей записи новую, добавить но-вую запись в конец файла.

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

←предыдущая  следующая→
1 2 3 4 5 6 7 8 



Copyright © 2005—2007 «Mark5»