Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Распределенные информационные системы и базы данных. Учебное пособие

.pdf
Скачиваний:
1
Добавлен:
12.08.2026
Размер:
1 Мб
Скачать

Министерство науки и высшего образования Российской Федерации НОВОСИБИРСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ

В. А. АСТАПЧУК, Д. Н. ДОСТОВАЛОВ

РАСПРЕДЕЛЕННЫЕ

ИНФОРМАЦИОННЫЕ

СИСТЕМЫ И БАЗЫ ДАННЫХ

Утверждено Редакционно-издательским советом университета

в качестве учебного пособия

НОВОСИБИРСК

2024

УДК 004.65(075.8) А91

Рецензенты:

канд. техн. наук, доцент Н. Б. Тесля канд. техн. наук, доцент В. В. Ландовский

Работа подготовлена на кафедре автоматизированных систем управления

Астапчук В. А.

А91 Распределенные информационные системы и базы данных : учебное пособие / В. А. Астапчук, Д. Н. Достовалов. – Новосибирск : Изд-во НГТУ, 2024. – 72 с.

ISBN 978-5-7782-5326-1

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

Учебное пособие соответствует ООП по направлению 09.04.01 «Информатика и вычислительная техника», уровень подготовки – магистратура.

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

 

УДК 004.65(075.8)

ISBN 978-5-7782-5326-1

© Астапчук В. А., Достовалов Д. Н., 2024

 

© Новосибирский государственный

 

технический университет, 2024

ОГЛАВЛЕНИЕ

ПРЕДИСЛОВИЕ..........................................................................................

4

ВВЕДЕНИЕ...................................................................................................

7

1. РАСПРЕДЕЛЕННЫЕ СИСТЕМЫ.......................................................

10

Основные понятия и определения........................................................

10

Основные характеристики распределенных систем...........................

12

Коммуникации в распределенных системах.......................................

13

Принципы коммутации в компьютерных сетях..................................

14

Коммуникационная подсистема...........................................................

16

Эталонные сетевые модели...................................................................

18

2. АРХИТЕКТУРА РАСПРЕДЕЛЕННЫХ ИНФОРМАЦИОННЫХ

 

СИСТЕМ.................................................................................................

23

3. РАСПРЕДЕЛЕННАЯ ОБРАБОТКА ДАННЫХ

 

В ИНФОРМАЦИОННЫХ СИСТЕМАХ .............................................

29

Принципы распределенной обработки информации..........................

30

Технологии распределенной обработки данных.................................

31

4. РАСПРЕДЕЛЕННЫЕ БАЗЫ ДАННЫХ..............................................

34

Основные свойства распределенной базы данных.............................

36

Стратегии распределения данных........................................................

38

Распределенные транзакции.................................................................

39

Синхронизация данных.........................................................................

41

Согласованность или доступность.......................................................

45

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

48

5. СИНХРОНИЗАЦИЯ В РАСПРЕДЕЛЕННЫХ

 

ИНФОРМАЦИОННЫХ СИСТЕМАХ.................................................

53

Время в распределенных системах ......................................................

53

Синхронизация времени в распределенных системах .......................

55

3

 

6.

ОТКРЫТЫЕ СИСТЕМЫ.......................................................................

58

 

Принципы открытых систем.................................................................

58

 

Архитектура и структура открытых систем........................................

59

 

Эталонная модель среды открытых систем.........................................

60

 

Эталонная модель взаимосвязи открытых систем..............................

61

7.

ТЕНДЕНЦИИ В ОБЛАСТИ РАСПРЕДЕЛЕННЫХ СИСТЕМ..........

64

БИБЛИОГРАФИЧЕСКИЙ СПИСОК.......................................................

67

4

ПРЕДИСЛОВИЕ

Область профессиональной деятельности выпускников, освоивших программу магистратуры по направлению 09.04.01 «Информатика

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

иинформационной поддержки изделий [1].

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

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

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

Врезультате освоения дисциплины студент должен знать:

методы и технологии проектирования и реализации распределенных информационных систем;

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

5

Студент должен уметь:

проектировать и разрабатывать распределенные информационные системы для решения задач профессиональной деятельности;

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

Студент должен иметь навыки:

описания задачи обработки данных;

обоснования методов решения выбранной задачи;

программнойреализациираспределенныхинформационныхсистем;

создания приложений распределенных систем баз данных.

6

ВВЕДЕНИЕ

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

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

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

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

7

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

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

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

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

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

Во-первых, это сложности, связанные с программным обеспечением – операционными системами и приложениями. Программирование

2 Облачная технология – это технология распределенной обработки данных, при которой компьютерные ресурсы и вычислительные мощности предоставляются пользователю как онлайн-сервис.

8

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

Во-вторых, это необходимость обеспечить надежность (чтобы передаваемые данные не терялись и не искажались) и производительность (чтобы обмен данными происходил с приемлемыми задержками).

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

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

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

3 Тезаурус – словарь, собрание сведений, охватывающие понятия, определения и термины специальной области знаний или сферы деятельности.

9

1. РАСПРЕДЕЛЕННЫЕ СИСТЕМЫ

Основные понятия и определения

Распределенная система – система, для которой отношения местоположения элементов (или групп элементов) играют существенную роль с точки зрения функционирования системы и, следовательно, с точки зрения анализа и синтеза системы [2].

Распределенная система – это набор независимых компьютеров, представляющийся их пользователям единой объединенной систе-

мой [3].

Компьютерная сеть – сеть, узлы которой включают в себя компьютеры и оборудование передачи данных и ветви которой являются линиями передачи данных [59].

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

Распределенная обработка данных – обработка данных, при ко-

торой выполнение операций распределено по узлам вычислительной сети [5]. Для распределенной обработки данных требуется коллективное сотрудничество, которое достигается путем обмена данными между узлами.

Данные распределения – сведения, определяющие информацию о размещении, дублировании и фрагментации объектов в распределенной системе базы данных [6, 7].

Фрагментация – распределение данных между двумя или более средами управления базами данных [7].

База данных – совокупность данных, хранимых в соответствии со схемой данных, манипулирование которыми выполняют в соответствии с правилами средств моделирования данных [7].

10

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]