Содержание
Часть 1. Проектирование баз данных 3
1. Развитие технологии базы данных 3
1.1.Файловые системы 4
Рис. 1.3. Создание счета клиенту 7
1.2. Необходимость произвольного доступа к данным 7
Рис. 1.4. Расчет оплаты работы агента 9
1.4. Другие недостатки традиционных файловых систем 11
Часть 1. Проектирование баз данных
1. Развитие технологии базы данных
Сложность современной технологии баз данных явилась результатом развития в течение нескольких десятилетий способов обработки данных и управления информацией. Подталкиваемая, с одной стороны, нуждами и требованиями менеджмента и ограниченная, с другой стороны, возможностями технологии, обработка данных развивалась от примитивных методов пятидесятых годов к сложным интегрированным системам сегодняшнего дня.
Потребности менеджмента росли параллельно с развитием технологии. Первые системы обработки данных выполняли лишь канцелярскую работу, сокращая количество бумаг. Современные системы перешли к накоплению и управлению информацией, рассматриваемой сегодня как жизненно важный ресурс компании. Сегодня наиболее важная функция систем управления базами данных — служить основой информационных систем корпоративного управления.
Технологические изменения всегда были вызваны потребностями бизнеса. Менеджеры примут новую компьютерную систему только в том случае, если ясно увидят, что выгода превышает затраты на нее. И, несмотря на риск и возможные ловушки, во многих случаях действительно получается существенная выгода. Более того, конца процессу пока не видно. Новые технологии, такие как объектно-ориентированные базы данных и платформа клиент/сервер, решают новые задачи, что должно привести к появлению в будущем более мощных систем.
1.1.Файловые системы
Первые коммерческие компьютерные системы использовались в основном для ведения бухгалтерии: дебет, кредит, ведомости заработной платы и т.д. Эту работу предприятие обязано делать. Следовательно, оправдать стоимость компьютерной системы было несложно. Затраты ручного труда, например, на ведение ведомостей по заработной плате или выписывание счетов, были столь велики, что автоматическая система, которая могла выполнять эти функции, быстро окупалась.
Поскольку эти системы выполняли обычные функции работы с документами, они были названы системами обработки данных. Неудивительно, что программисты и аналитики, разрабатывавшие эти системы, подражали в своих программах тем операциям, которые прежде выполнялись вручную. Так например, компьютерные файлы соответствовали папкам для бумаг, и компьютерный файл содержал ту информацию, которая вполне могла бы лежать в одной обычной папке.
Рис. 1.1. Поиск информации IPD
На рис. 1.1, 1.2 представлены некоторые файлы и образцы данных первой файловой. Каждая таблица представляет один файл системы. Таким образом, мы видим файлы CUSTOMER (КЛИЕНТ), SALES-REPRESENTATIVE (ТОРГОВЫЙ-АГЕНТ), PRODUCT (ТОВАР) и т.д. Каждая строка соответствует одной записи в файле. Так, файл PRODUCT содержит три записи. Каждая из этих записей относится к отдельному товару. Элементарные группы данных или поля файла PRODUCT таковы: PROD-ID (ИД-ТОВАРА), PROD-DESC (ОПИСАНИЕ-ТОВАРА), MANUPACTR-ID (ИД-ИЗГОТОВИТЕЛЯ), COST (ЗАКУПОЧНАЯ ЦЕНА) и PRICE (ЦЕНА ПРОДАЖИ).
CUSTOMER | ||||||||||||||
CUST-ID |
CUST-NAME |
ADDRESS |
COUNTRY |
BALANCE | ||||||||||
100 101 105 110 |
Уотэйб Мальтц Джефф Гомес |
П/я 241 П/я 102 П/я 98 П/я 76 |
Япония Австрия США Чили |
45 551 75 314 49 333 27 400 | ||||||||||
SALES-REPRESENTATIV | ||||||||||||||
SALREP-ID |
SALREP-NAME |
MANAGER-ID |
OFFICE |
COMM-% | ||||||||||
10 14 23 37 39 |
Родни Джоунс Масаи Матцу Франсуа Муар Элена Армана Горо Ацума |
27 44 35 12 44 |
Чикаго Токио Брюссель Буэнос-Айрес Токио |
10 11
13 10 | ||||||||||
PRODUCT | ||||||||||||||
PROD-ID |
PROD-DESC |
MANIFACTR-ID |
COST |
PRICE | ||||||||||
1035 2241 2518 |
Свитер Настольная лампа Бронзовая скульптура |
210 317 253 |
11.25 22.25 13.60 |
22.00 33.25 21.20 | ||||||||||
SALE | ||||||||||||||
DATE |
CUST-ID |
SALREP-ID |
MANIFACTR-ID |
COST |
PRICE | |||||||||
08.02 12.02 12.02 19.02 22.02 25.02 25.02 |
100 101 101 100 101 105 110 |
14 23 23 39 23 10 37 |
2241 2518 1035 2518 1035 2241 2518 |
200 300 150 200 200 100 150 |
6650.00 6360.00 3300.00 4240.00 4400.00 3325.00 3180.00 | |||||||||
MANUFACTURER | ||||||||||||||
MAN.-ID |
MAN.-NAME |
ADDRESS |
COUNTRY | |||||||||||
210 253 317 |
Одежда «Киви» Медные изделия Лампы Лланс |
Окленд Лагос Лима |
Австралия Нигерия Перу |
Рис. 1.2. Образец данных из файловой системы IPD
Предположим, что эти файлы допускают лишь последовательный доступ. Это означает, что каждая запись в файле может быть прочитана и обработана только после того, как прочитаны все предшествующие ей записи в файле. Именно так обстояло дело в шестидесятые годы, когда хранение информации на диске обходилось относительно дорого. Большинство файлов хранилось на ленте, и записи извлекались и обрабатывались последовательно. Обычно с файлами работали в пакетном режиме, то есть все записи файла обрабатывались за один раз, обычно ночью, после закрытия офиса.
Файлы использовались во множестве различных приложений. Например, программа подсчета причитающихся сумм составляла счета для клиентов. Она использовала файлы CUSTOMER и SALE (ПРОДАЖА). Оба файла были упорядочены по CUST-ID; объединяя эти файлы, программа распечатывала счета, как показано на рис. 1.3. Поле BEGINNING-BALANCE (ИСХОД-БАЛАНС) в файле CUSTOMER обновлялось, отражая последние сделки. Уже произведенные платежи, подсчитанные другой программой и внесенные в файл CUSTOMER, были записаны в поле MONTH-TO-DATE-PAYMENTS (ВЫПЛАЧЕНО-НА-СЕГОДНЯ); они также печатались в счете.
Рис. 1.3. Создание счета клиенту
Программа такого типа, выполняющая конкретную практическую задачу в бизнесе, — это прикладная программа или пример приложения. Набор таких программ, совместно выполняющих связанные задачи, называется прикладной системой.