Книжная полка Сохранить
Размер шрифта:
А
А
А
|  Шрифт:
Arial
Times
|  Интервал:
Стандартный
Средний
Большой
|  Цвет сайта:
Ц
Ц
Ц
Ц
Ц

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

Покупка
Основная коллекция
Артикул: 069900.13.01
Доступ онлайн
500 ₽
от 425 ₽
В корзину
В учебном пособии рассматриваются основные подходы и направления развития систем баз данных. Анализируются классические машинно-ориентированные формы представления информации и данных. Рассматриваются типовые модели физической и логической организации данных. Исследуется архитектура средств доступа к данным. На примере системы FoxPro (система программирования с элементами СУБД) иллюстрируются практические аспекты разработки фактографических и документальных информационных систем. Достаточно подробно описываются возможности SQL как базового языка для профессиональной работы с реляционными базами данных. Необходимое внимание уделяется проблемам моделирования и проектирования баз данных. Учебное пособие предназначено для обучающихся по специальности 09.02.04 «Информационные системы (по отраслям)» среднего профессионального образования, а также может использоваться студентами (квалификация «бакалавр», «специалист») соответствующих направлений.
Тематика:
ББК:
УДК:
ОКСО:
ГРНТИ:
Голицына, О. Л. Основы проектирования баз данных : учебное пособие / О.Л. Голицына, Т.Л. Партыка, И.И. Попов. — 2-е изд., перераб. и доп. — Москва : ФОРУМ : ИНФРА-М, 2021. — 416 с. — (Cреднее профессиональное образование). - ISBN 978-5-91134-655-3. - Текст : электронный. - URL: https://znanium.ru/catalog/product/1190668 (дата обращения: 20.04.2024). – Режим доступа: по подписке.
Фрагмент текстового слоя документа размещен для индексирующих роботов. Для полноценной работы с документом, пожалуйста, перейдите в ридер.

СРЕДНЕЕ ПРОФЕССИОНАЛЬНОЕ ОБРАЗОВАНИЕ
Серия основана в 2001 году



О.Л. Голицына, Т.Л. Партыка, И.И. Попов





                ОСНОВЫ ПРОЕКТИРОВАНИЯ БАЗ ДАННЫХ




УЧЕБНОЕ ПОСОБИЕ

2-е издание, переработанное и дополненное



Рекомендовано Министерством образования и науки Российской Федерации в качестве учебного пособия для студентов учреждений среднего профессионального образования

znanium.com

Москва

2021

ИНФРА-М
УДК 004.2(075.32)
ББК 32.973.26-02я723

     Г60



     Рецензенты:
        кандидат технических наук, доцент кафедры «Проектирование АИС» Российской экономической академии им. Г.В. Плеханова Ю.Г. Бачинин;
        доктор экономических наук, профессор, декан факультета «Информатика» Московского международного института эконометрики, информатики, финансов и права А.А. Емельянов

     Голицына О.Л.
Г60 Основы проектирования баз данных : учебное пособие / О.Л. Голицына, Т.Л. Партыка, И.И. Попов. — 2-е изд., перераб. и доп. — Москва : ФОРУМ : ИНФРА-М, 2021. — 416 с. : ил. — (Среднее профессиональное образование).


          ISBN 978-5-91134-655-3 (ФОРУМ)
          ISBN 978-5-16-012080-5 (ИНФРА-М, print)
          ISBN 978-5-16-105762-9 (ИНФРА-М, online)


         В учебном пособии рассматриваются основные подходы и направления развития систем баз данных. Анализируются классические машинно-ориентированные формы представления информации и данных. Рассматриваются типовые модели физической и логической организации данных. Исследуется архитектура средств доступа к данным. На примере системы FoxPro (система программирования с элементами СУБД) иллюстрируются практические аспекты разработки фактографических и документальных информационных систем. Достаточно подробно описываются возможности SQL как базового языка для профессиональной работы с реляционными базами данных. Необходимое внимание уделяется проблемам моделирования и проектирования баз данных.
         Учебное пособие предназначено для обучающихся по специальности 09.02.04 «Информационные системы (по отраслям)» среднего профессионального образования, а также может использоваться студентами (квалификация «бакалавр», «специалист») соответствующих направлений.


                                              УДК 004.2(075.32) ББК 32.973.26-02я723







ISBN 978-5-91134-655-3 (ФОРУМ)
ISBN 978-5-16-012080-5 (ИНФРА-М, print)
ISBN 978-5-16-105762-9 (ИНФРА-М, online)

© Голицына О.Л., Партыка Т.Л.,

   Попов И.И., 2016
© ФОРУМ, 2016
        Введение






   Создание вычислительной техники, компьютеров с исторической точки зрения явилось выдающимся результатом развития электротехники и технических знаний в целом. Постепенно наращивалась память, повышался уровень программного обеспечения, и компьютеры стали приобретать не только вычислительные, но и другие функции.
   В истории развития компьютеризации информационных процессов и систем выделяются следующие этапы:
   • технический период (приблизительно с 1946 по 1964 г.), в течение которого сложились основные представления о структуре универсальных электронных вычислительных машин (ЭВМ), определилась архитектура и типы устройств;
   • программный период (с 1954 по 1970 г.), за который выработалась современная классификация программных средств, их структур и взаимосвязей, сложились языки программирования, разработаны компиляторы и принципы процедурной обработки;
   • информационный период (с 1970 г. по настоящее время) — в центре внимания исследователей и разработчиков оказываются структуры данных, языки описания (ЯОД) и манипулирования (ЯМД) данными, непроцедурные подходы к построению систем обработки информации;
   • гуманитарный период (с начала 90-х гг. прошлого века), связанный с резким возрастанием круга пользователей АИТ и повышением роли интерфейсных и навигационных возможностей соответствующих систем. Кроме этого, основные черты новых информационных технологий связаны с усилением персонального характера компьютера и расширением возможностей пользователя.
   Если традиционные системы были подчинены производителю информации и доводили одинаковое содержание до всех адресатов, то новые технологии направлены на индивидуального
Введение

пользователя, предоставляя возможность получения информации, нужной именно ему.
    Приходится констатировать, что «локомотивом» здесь являются технические средства — темпы развития ЭВМ поистине фантастичны. Еще в 1984 г. американские газетчики писали:
    «В 1953 г. ЭВМ с памятью 64 Кбайт стоила 1 млн долл., сейчас она стоит менее 1 тыс. долл. Если бы автомобили развивались в течение последних 20 лет теми же темпами, как компьютеры, то сегодня роллс-ройс стоил бы 3,0 долл., проходил миллион миль на галлоне бензина, развивал мощность лайнера «Риееп Elisabeth» и 2 автомобиля помещались бы на кончике пера».
    Добавим здесь, что сегодняшние темпы еще выше. Например, если микропроцессор AMD «Athlon» (2000 г.) содержал 22 млн транзисторов, то AMD «Deneb» (2009 г.) — 738 млн (4 ядра) [17].
    Следом тянется программное обеспечение, являющееся «тенью» своего «старшего брата» (известно, что с появлением новых процессоров многие приложения приходится перекомпилировать, несмотря на декларации разработчиков об «обратной совместимости»), затем — средства обработки и поиска данных (здесь большие трудности с управлением захлестывающим потоком мультимедийных данных). К сожалению, массовые пользователи (несмотря на упомянутый взрывообразный рост их численности) являются самым «слабым» звеном всей этой цепочки.
    Базы данных (БД) и системы управления базами данных (СУБД) по своему происхождению относятся к 3-му этапу вышеприведенной периодизации. Они пережили бум и период взрывообразного развития в свое время и сейчас продолжают гармонично развиваться, следуя динамике роста технических средств и программного обеспечения.
    Сегодня трудно себе представить сколько-нибудь значимую информационную систему, которая бы не имела в качестве основы или важной составляющей базу данных. Концепции и технологии баз данных складывались постепенно и всегда были тесно связаны с развитием систем автоматизированной обработки информации. Создание баз данных — сложившаяся дисциплина (хотя являющаяся скорее инженерной, чем чисто научной), основанная на достаточно формализованных подходах и включающая широкий спектр приемов и методов создания баз данных.
    Назначение систем управления базами данных — обеспечение в течение длительного времени их сохранности,
Введение

5

а также возможностей выборки и актуализации. Данные существуют всегда, пока есть потребность в их использовании, хотя характер использования и пути извлечения практической пользы могут быть самыми разными: от оперативной актуализации значений до уничтожения данных, от их использования для совершенствования сложных систем управления до формирования «чемоданов компромата».
   Базы данных в стремительно, а в какой-то степени и сумбурно развивающихся информационных технологиях — это сравнительно консервативное направление, где СУБД и сами базы представляют собой «долговременные сооружения». Элементная база ЭВМ и парадигмы программирования меняются быстрее, чем хранимые данные теряют актуальность.
   В таких условиях, в отличие от прикладных программистов, создатели баз данных (от разработчиков СУБД до администраторов БД) должны постоянно помнить о проблеме «наследственности» — о том, как интегрировать в создаваемую систему наследуемые данные, находящиеся под управлением устаревшей СУБД, и о том, как построить систему, чтобы вновь создаваемые данные могли быть, в свою очередь, наследованы следующим поколением систем и разработчиков.
   Достаточно консервативны и концепции баз данных. Эта консервативность не только следствие свойства «долговечности», но и того факта, что базы вторичны по отношению к описываемым ими реальным процессам и объектам, достаточно стабильным и типичным. Кроме того, модели данных строились в значительной степени «по аналогии» с организационными и технологическими структурами — иерархическими, сетевыми, матричными.
   Учебное пособие предназначено для обучающихся по специальности 230401 «Информационные системы (по отраслям)» среднего профессионального образования, а также может использоваться студентами (квалификация «бакалавр», «специалист») соответствующих направлений. Пособие обеспечивает формирование следующих профессиональных компетенций:
   • умение организовывать собственную деятельность, выбирать типовые методы и способы выполнения профессиональных задач, оценивать их эффективность и качество;
   • умение осуществлять поиск и использование информации, необходимой для эффективного выполнения профес
Введение

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

7

     нологии для информатизации и автоматизации решения прикладных задач и создания ИС;
   • способность проектировать и администрировать базы данных.
   Базы данных — это уже достаточно хорошо проработанная научная дисциплина. Существует множество, в том числе и фундаментальных, работ и учебников (на материал которых авторы опирались при подготовке этого учебника и которые убедительно рекомендуют тем, кто серьезно интересуется этой проблематикой), среди них необходимо выделить такие монографии, как «Организация баз данных в вычислительных системах» Дж. Мартина, «Введение в системы баз данных» К. Дейта, «Алгоритмы и структуры данных» Н. Вирта, «SQL» Дж. Гроффа и П. Вайнберга.
   В первой главе определены основные понятия, относятся к базам и банкам данных, приведена классификация компонент систем управления данными, определены их назначение и основные функции. Приведены типовые модели физической организации данных, акцентирующие внимание на различиях в вариантах структур и связей. Рассматриваются схемы организации данных для линейных, иерархических и сетевых структур. Обсуждаются архитектуры организации данных на уровне файловых компонент. Примерные схемы управления данными в файловой системе ОС и СУБД дают для этих двух случаев наглядное представление о принципиальных различиях организации процессов и разделении функций между компонентами.
   Глава 2 посвящена проблемам моделирования баз данных. Определяются стадии проектирования и объекты моделирования. Обсуждаются различия подходов к моделированию предметных областей, характерных для фактографических и документальных баз данных. Подробно рассматривается содержание концептуального и логического этапа проектирования. Описывается пример проектирования реляционной базы данных, включая технологию проектирования и нормализации отношений.
   Третья глава рассматривает систему FoxPro, являющуюся «пограничным продуктом» между СУБД и системами программирования. Описываются типы данных и операторы языка, создание и модификация базы данных, создание и модификация форматов представления данных. Приводится пример использования табличной СУБД FoxPro для построения системы документального (в том числе полнотекстового) поиска.
Введение

   Глава 4 посвящена описанию SQL (на примере MS SQL Server 7.0), который является стандартным языком для работы с реляционными базами данных. Возможности использования операторов языка рассматриваются на серии примеров, иллюстрирующих этапы создания и использования базы данных, описание проектирования которой приведено в гл. 3. Рассматриваются транзакции, организация управления доступа пользователей к объектам БД, программирование процессов управления обработкой данных (представления, хранимые процедуры, триггеры).
   В приложениях приводятся глоссарий терминов, краткие аннотации команд и функций системы FoxPro, методические указания по выполнению лабораторных работ, примеры отчетов о подобных лабораторных работах.
   Авторы расположили материал в той исторической последовательности, в которой возникали и развивались соответствующие средства управления данными и их языковые средства. Это не значит, что читателю обязательно надо сначала прорываться сквозь дебри «сбалансированных деревьев» и «инверсных списков». Он может сразу перейти к рассмотрению на примерах процессов создания и управления данными в различных средах — FoxPro (гл. 3), MS SQL Server (гл. 4), а в случае необходимости — вернуться назад и поинтересоваться, «как оно там на самом деле устроено».
   Учебное пособие базируется на материалах, накопленных авторами в процессе практической и исследовательской деятельности, а также преподавания в МИФИ, МИСИ, МЭСИ, РГГУ, РЭА им. Г. В. Плеханова, МФПА (Международная финансово-промышленная академия). Авторы выражают благодарность коллегам, принявшим участие в обсуждении материала: Н. В. Максимову, А. А. Емельянову, а также студентам РГГУ, МФПА и РЭА им. Г. В. Плеханова за предоставленные иллюстративные материалы.
Глава 1

        УПРАВЛЕНИЕ ДАННЫМИ. ФАЙЛОВЫЕ
        СИСТЕМЫ И БАЗЫ ДАННЫХ







   Системы управления базами данных (СУБД), являющиеся предметом настоящего учебного пособия, не «висят в воздухе», а прочно встроены в окружение, включающее различные уровни и типы как программных средств, так и информационных процессов и структур.
   Понятие «управление данными» (data management) впервые появляется задолго до баз данных (БД) и систем управления базами данных (СУБД) в качестве одной из основных функций операционной системы (ОС) ЭВМ [24].
   На рис. 1.1 приводится более или менее полная диаграмма различных траекторий управления данными (стрелки означают выдачу запроса на данные, передача данных осуществляется в обратном направлении).


Рис. 1.1. Управление данными в ОС и СУБД
Глава 1. Управление данными. Файловые системы...

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


1.1. Информация, данные и их представление в ЭВМ

Уровни информационных процессов

   Данное понятие характеризует степень связи информационных процессов с предметной областью — информационные технологии; информационные системы; информационные ресурсы:
   • автоматизированную информационную технологию (АИТ, ИТ) определим как целенаправленное и согласованное использование: технических средств информатизации (аппаратурный фактор); программных средств и систем (программный фактор); информационных массивов и баз данных (информационный фактор); интеллектуальных усилий и человеческого труда (человеческий, гуманитарный фактор) для решения задачи (задач) предметной области;
   • информационные системы (АИС, ИС) определяются как комплексы информационных технологий, ориентированных на процедуры сбора, обработки, хранения, поиска, передачи и отображения информации предметной области;
Доступ онлайн
500 ₽
от 425 ₽
В корзину