Распределенные системы и БД
-
Upload
vladimir-starostenkov -
Category
Education
-
view
175 -
download
4
Transcript of Распределенные системы и БД
![Page 2: Распределенные системы и БД](https://reader033.fdocuments.net/reader033/viewer/2022051404/58ecc88f1a28ab96628b46cf/html5/thumbnails/2.jpg)
Что такое “распределенная система”?
![Page 3: Распределенные системы и БД](https://reader033.fdocuments.net/reader033/viewer/2022051404/58ecc88f1a28ab96628b46cf/html5/thumbnails/3.jpg)
«Материал из Википедии — свободной энциклопедии
Распределённая система — система, для которой отношения местоположений элементов (или групп элементов) играют существенную роль с точки зрения функционирования системы, а, следовательно, и с точки зрения анализа и синтеза системы.
Для распределённых систем характерно распределение функций, ресурсов между множеством элементов (узлов) и отсутствие единого управляющего центра, поэтому выход из строя одного из узлов не приводит к полной остановке всей системы. Типичной распределённой системой является Интернет.
»
Что такое “распределенная система”?
![Page 4: Распределенные системы и БД](https://reader033.fdocuments.net/reader033/viewer/2022051404/58ecc88f1a28ab96628b46cf/html5/thumbnails/4.jpg)
«Материал из Википедии — свободной энциклопедии
Распределённая система — система, для которой отношения местоположений элементов (или групп элементов) играют существенную роль с точки зрения функционирования системы, а, следовательно, и с точки зрения анализа и синтеза системы.
Для распределённых систем характерно распределение функций, ресурсов между множеством элементов (узлов) и отсутствие единого управляющего центра, поэтому выход из строя одного из узлов не приводит к полной остановке всей системы. Типичной распределённой системой является Интернет.
»
Что такое “распределенная система”?
![Page 5: Распределенные системы и БД](https://reader033.fdocuments.net/reader033/viewer/2022051404/58ecc88f1a28ab96628b46cf/html5/thumbnails/5.jpg)
«Материал из Википедии — свободной энциклопедии
Распределённая система — система, для которой отношения местоположений элементов (или групп элементов) играют существенную роль с точки зрения функционирования системы, а, следовательно, и с точки зрения анализа и синтеза системы.
Для распределённых систем характерно распределение функций, ресурсов между множеством элементов (узлов) и отсутствие единого управляющего центра, поэтому выход из строя одного из узлов не приводит к полной остановке всей системы. Типичной распределённой системой является Интернет.
»
Что такое “распределенная система”?
![Page 6: Распределенные системы и БД](https://reader033.fdocuments.net/reader033/viewer/2022051404/58ecc88f1a28ab96628b46cf/html5/thumbnails/6.jpg)
«Материал из Википедии — свободной энциклопедии
Распределённая система — система, для которой отношения местоположений элементов (или групп элементов) играют существенную роль с точки зрения функционирования системы, а, следовательно, и с точки зрения анализа и синтеза системы.
Для распределённых систем характерно распределение функций, ресурсов между множеством элементов (узлов) и отсутствие единого управляющего центра, поэтому выход из строя одного из узлов не приводит к полной остановке всей системы. Типичной распределённой системой является Интернет.
»
Что такое “распределенная система”?
![Page 7: Распределенные системы и БД](https://reader033.fdocuments.net/reader033/viewer/2022051404/58ecc88f1a28ab96628b46cf/html5/thumbnails/7.jpg)
«Материал из Википедии — свободной энциклопедии
Распределённая система — система, для которой отношения местоположений элементов (или групп элементов) играют существенную роль с точки зрения функционирования системы, а, следовательно, и с точки зрения анализа и синтеза системы.
Для распределённых систем характерно распределение функций, ресурсов между множеством элементов (узлов) и отсутствие единого управляющего центра, поэтому выход из строя одного из узлов не приводит к полной остановке всей системы. Типичной распределённой системой является Интернет.
»
Что такое “распределенная система”?
![Page 8: Распределенные системы и БД](https://reader033.fdocuments.net/reader033/viewer/2022051404/58ecc88f1a28ab96628b46cf/html5/thumbnails/8.jpg)
● отношения местоположений элементов играют существенную роль
● распределение функций, ресурсов между множеством элементов
● отсутствие единого управляющего центра
● выход из строя одного из узлов не приводит к полной остановке всей системы
Что такое “распределенная система”?
![Page 9: Распределенные системы и БД](https://reader033.fdocuments.net/reader033/viewer/2022051404/58ecc88f1a28ab96628b46cf/html5/thumbnails/9.jpg)
● отношения местоположений элементов играют существенную роль
● распределение функций, ресурсов между множеством элементов
● отсутствие единого управляющего центра
● выход из строя одного из узлов не приводит к полной остановке всей системы
Доверяй, но проверяй!
Что такое “распределенная система”?
![Page 10: Распределенные системы и БД](https://reader033.fdocuments.net/reader033/viewer/2022051404/58ecc88f1a28ab96628b46cf/html5/thumbnails/10.jpg)
● отношения местоположений элементов играют существенную роль
● распределение функций, ресурсов между множеством элементов
● отсутствие единого управляющего центра
● выход из строя одного из узлов не приводит к полной остановке всей системы
Доверяй, но проверяй!
“A distributed system is a collection of independent computers that appears to its users as a single coherent system.”
(Distributed Systems: Principles and Paradigms by Andrew S. Tanenbaum, Maarten Van Steen)
Что такое “распределенная система”?
![Page 11: Распределенные системы и БД](https://reader033.fdocuments.net/reader033/viewer/2022051404/58ecc88f1a28ab96628b46cf/html5/thumbnails/11.jpg)
Доверяй, но проверяй!
“A distributed system is a collection of independent computers that appears to its users as a single coherent system.”
(Distributed Systems: Principles and Paradigms by Andrew S. Tanenbaum, Maarten Van Steen)
“A distributed system is one in which the failure of a computer you didn't even know existed can render your own computer unusable.”
Leslie B. Lamport
Что такое “распределенная система”?
![Page 12: Распределенные системы и БД](https://reader033.fdocuments.net/reader033/viewer/2022051404/58ecc88f1a28ab96628b46cf/html5/thumbnails/12.jpg)
Что такое “распределенная система”?
Программное обеспечение промежуточного уровня - c его помощью пользователи полагают, что имеют дело с единой системой, а все различия между компьютерами и способы связи между ними остаются скрытыми для пользователей.
![Page 13: Распределенные системы и БД](https://reader033.fdocuments.net/reader033/viewer/2022051404/58ecc88f1a28ab96628b46cf/html5/thumbnails/13.jpg)
Что такое “распределенная система”?
![Page 14: Распределенные системы и БД](https://reader033.fdocuments.net/reader033/viewer/2022051404/58ecc88f1a28ab96628b46cf/html5/thumbnails/14.jpg)
Что такое “распределенная система”?
Параллельная вычислительная система
![Page 15: Распределенные системы и БД](https://reader033.fdocuments.net/reader033/viewer/2022051404/58ecc88f1a28ab96628b46cf/html5/thumbnails/15.jpg)
Что такое “распределенная система”?
Параллельная вычислительная система
● Отсутствие единого времени
● Отсутствие общей памяти
● Гетерогенность
![Page 16: Распределенные системы и БД](https://reader033.fdocuments.net/reader033/viewer/2022051404/58ecc88f1a28ab96628b46cf/html5/thumbnails/16.jpg)
Что такое “распределенная система”?
● Подумайте над определением самостоятельно
● Определитесь - чем будете заниматься Вы
![Page 17: Распределенные системы и БД](https://reader033.fdocuments.net/reader033/viewer/2022051404/58ecc88f1a28ab96628b46cf/html5/thumbnails/17.jpg)
Зачем нужна распределенная системаКакова цель построения такой системы?
![Page 18: Распределенные системы и БД](https://reader033.fdocuments.net/reader033/viewer/2022051404/58ecc88f1a28ab96628b46cf/html5/thumbnails/18.jpg)
Зачем нужна распределенная система
Медленно выполняется? Что делать?
![Page 19: Распределенные системы и БД](https://reader033.fdocuments.net/reader033/viewer/2022051404/58ecc88f1a28ab96628b46cf/html5/thumbnails/19.jpg)
Зачем нужна распределенная система
Медленно выполняется? Что делать?
Есть решение: добавим CPU, RAM, Disk, Network etc.
Это называется вертикальным масштабированием.
![Page 20: Распределенные системы и БД](https://reader033.fdocuments.net/reader033/viewer/2022051404/58ecc88f1a28ab96628b46cf/html5/thumbnails/20.jpg)
Зачем нужна распределенная система
Медленно выполняется? Что делать?
Есть решение: добавим CPU, RAM, Disk, Network etc.
Это называется вертикальным масштабированием.
А что если? Если дорого? Если невозможно с точки зрения физики?
![Page 21: Распределенные системы и БД](https://reader033.fdocuments.net/reader033/viewer/2022051404/58ecc88f1a28ab96628b46cf/html5/thumbnails/21.jpg)
Зачем нужна распределенная система
Иное решение: нужно больше серверов!
Горизонтальное масштабирование (вычислительной системы).
![Page 22: Распределенные системы и БД](https://reader033.fdocuments.net/reader033/viewer/2022051404/58ecc88f1a28ab96628b46cf/html5/thumbnails/22.jpg)
Что такое распределенная база данных?
![Page 23: Распределенные системы и БД](https://reader033.fdocuments.net/reader033/viewer/2022051404/58ecc88f1a28ab96628b46cf/html5/thumbnails/23.jpg)
Что такое распределенная база данных?
Это распределенная система имеющая персистентное состояние.
![Page 24: Распределенные системы и БД](https://reader033.fdocuments.net/reader033/viewer/2022051404/58ecc88f1a28ab96628b46cf/html5/thumbnails/24.jpg)
Что такое распределенная база данных?
Это распределенная система имеющая персистентное состояние.
Персистентное состояние живет дольше чем породивший его процесс.
Распределенная БД предоставляет возможность прочитать это состояниеи изменить его.
![Page 25: Распределенные системы и БД](https://reader033.fdocuments.net/reader033/viewer/2022051404/58ecc88f1a28ab96628b46cf/html5/thumbnails/25.jpg)
Partitioning
Система распределила данные по многим серверам
![Page 26: Распределенные системы и БД](https://reader033.fdocuments.net/reader033/viewer/2022051404/58ecc88f1a28ab96628b46cf/html5/thumbnails/26.jpg)
Partitioning
Как разделить данные для распределения по многим серверам?
![Page 27: Распределенные системы и БД](https://reader033.fdocuments.net/reader033/viewer/2022051404/58ecc88f1a28ab96628b46cf/html5/thumbnails/27.jpg)
Partitioning
Как разделить данные для распределения по многим серверам?
По колонкам - vertical partitioning
По строкам - horizontal partitioning
![Page 28: Распределенные системы и БД](https://reader033.fdocuments.net/reader033/viewer/2022051404/58ecc88f1a28ab96628b46cf/html5/thumbnails/28.jpg)
Partitioning
Как разделить данные для распределения по многим серверам?
По колонкам - vertical partitioning
По строкам - horizontal partitioning
![Page 29: Распределенные системы и БД](https://reader033.fdocuments.net/reader033/viewer/2022051404/58ecc88f1a28ab96628b46cf/html5/thumbnails/29.jpg)
Каким критериям должна удовлетворять распределенная БД?
● Consistency - после параллельного выполнения набора запросов все части системы имеют единое непротиворечивое представление о состоянии системы, такое же, как если бы эти запросы выполнялись последовательно
● Availability - система должна быть доступна для записи и чтения, такого рода запросы сопровождаются корректным ответом
● (Network) Partition Tolerance - система может “пережить” сетевые ошибки, network partition
![Page 30: Распределенные системы и БД](https://reader033.fdocuments.net/reader033/viewer/2022051404/58ecc88f1a28ab96628b46cf/html5/thumbnails/30.jpg)
Какие проблемы могут возникнуть?
1 2 3 4 5 6 7 8 9
Довольные пользователи
![Page 31: Распределенные системы и БД](https://reader033.fdocuments.net/reader033/viewer/2022051404/58ecc88f1a28ab96628b46cf/html5/thumbnails/31.jpg)
Какие проблемы могут возникнуть?
1 2 3 4 5 6 7 8 9
Недовольные пользователи
Вышел из строя отдельный сервер
![Page 32: Распределенные системы и БД](https://reader033.fdocuments.net/reader033/viewer/2022051404/58ecc88f1a28ab96628b46cf/html5/thumbnails/32.jpg)
Репликация
1 2 3 4 5 6 7 8 9
Довольные пользователи
4 8 9 2 3 7 1 5 6
![Page 33: Распределенные системы и БД](https://reader033.fdocuments.net/reader033/viewer/2022051404/58ecc88f1a28ab96628b46cf/html5/thumbnails/33.jpg)
Репликация
1 2 3 4 5 6 7 8 9
Довольные пользователи
4 8 9 2 3 7 1 5 6
![Page 34: Распределенные системы и БД](https://reader033.fdocuments.net/reader033/viewer/2022051404/58ecc88f1a28ab96628b46cf/html5/thumbnails/34.jpg)
Репликация
1 2 3 4 5 6 7 8 9
Довольные пользователи
4 8 9 2 3 7 1 5 6
Важно: “копии” перестали быть просто копиями
![Page 35: Распределенные системы и БД](https://reader033.fdocuments.net/reader033/viewer/2022051404/58ecc88f1a28ab96628b46cf/html5/thumbnails/35.jpg)
1 2 3 4 5 6 7 8 9
Довольные пользователи
4 8 9 2 3 7 1 5 6
Какие проблемы могут возникнуть?
Разрыв сети
![Page 36: Распределенные системы и БД](https://reader033.fdocuments.net/reader033/viewer/2022051404/58ecc88f1a28ab96628b46cf/html5/thumbnails/36.jpg)
1 2 3 4 5 6 7 8 9
Довольные пользователи
4 8 9 2 3 7 1 5 6
Разрешаем ли мы модифицировать состояние?
Разрыв сети
![Page 37: Распределенные системы и БД](https://reader033.fdocuments.net/reader033/viewer/2022051404/58ecc88f1a28ab96628b46cf/html5/thumbnails/37.jpg)
1 2 3 4 5 6* 7* 8 9
Довольные пользователи
4 8 9 2 3 7 1 5 6
Разрешаем ли мы модифицировать состояние? Да.
Разрыв сети
![Page 38: Распределенные системы и БД](https://reader033.fdocuments.net/reader033/viewer/2022051404/58ecc88f1a28ab96628b46cf/html5/thumbnails/38.jpg)
1 2 3 4 5 6* 7* 8 9
Довольные пользователи
4 8 9 2 3 7 1 5 6
Разрешаем ли мы модифицировать состояние? Да.
Разрыв сети
Система находитсяв неконсистентном состоянии
![Page 39: Распределенные системы и БД](https://reader033.fdocuments.net/reader033/viewer/2022051404/58ecc88f1a28ab96628b46cf/html5/thumbnails/39.jpg)
1 2 3 4 5 6* 7* 8 9
Довольные пользователи
4 8 9 2 3 7 1 5 6
Разрешаем ли мы модифицировать состояние? Да.
Разрыв сети
Система находитсяв неконсистентном состоянии
Availability +Partition Tolerance
![Page 40: Распределенные системы и БД](https://reader033.fdocuments.net/reader033/viewer/2022051404/58ecc88f1a28ab96628b46cf/html5/thumbnails/40.jpg)
1 2 3 4 5 6 7 8 9
Довольные пользователи
4 8 9 2 3 7 1 5 6
Разрешаем ли мы модифицировать состояние? Нет.
Разрыв сети
![Page 41: Распределенные системы и БД](https://reader033.fdocuments.net/reader033/viewer/2022051404/58ecc88f1a28ab96628b46cf/html5/thumbnails/41.jpg)
1 2 3 4 5 6 7 8 9
Довольные пользователи
4 8 9 2 3 7 1 5 6
Разрешаем ли мы модифицировать состояние? Нет.
Разрыв сети
Consistency +Partition Tolerance
![Page 42: Распределенные системы и БД](https://reader033.fdocuments.net/reader033/viewer/2022051404/58ecc88f1a28ab96628b46cf/html5/thumbnails/42.jpg)
Спасибо за внимание!