Б Бёрнс - Распределенные системы. Паттерны проектирования

Здесь есть возможность читать онлайн «Б Бёрнс - Распределенные системы. Паттерны проектирования» весь текст электронной книги совершенно бесплатно (целиком полную версию без сокращений). В некоторых случаях можно слушать аудио, скачать через торрент в формате fb2 и присутствует краткое содержание. Год выпуска: 2019, ISBN: 2019, Издательство: Питер, Жанр: Прочая околокомпьтерная литература, на русском языке. Описание произведения, (предисловие) а так же отзывы посетителей доступны на портале библиотеки ЛибКат.

Распределенные системы. Паттерны проектирования: краткое содержание, описание и аннотация

Предлагаем к чтению аннотацию, описание, краткое содержание или предисловие (зависит от того, что написал сам автор книги «Распределенные системы. Паттерны проектирования»). Если вы не нашли необходимую информацию о книге — напишите в комментариях, мы постараемся отыскать её.

Современный мир попросту немыслим без использования распределенных систем. Даже у простейшего мобильного приложения есть API, через который оно подключается к облачному хранилищу. Однако проектирование распределенных систем до сих пор остается искусством, а не точной наукой. Необходимость подвести под нее серьезный базис назрела давно, и, если вы хотите обрести уверенность в создании, поддержке и эксплуатации распределенных систем — начните с этой книги!

Распределенные системы. Паттерны проектирования — читать онлайн бесплатно полную книгу (весь текст) целиком

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

Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

Как уже было сказано, шардирование может выступать при-мером реализации фазы Map в каноническом алгоритме Map/ Reduce . Следовательно, нам осталось лишь реализовать фазу Reduce . Reduce является примером паттерна координированной 208Часть III. Паттерны проектирования систем пакетных вычислений

Распределенные системы Паттерны проектирования - изображение 125 Распределенные системы Паттерны проектирования - изображение 126 Распределенные системы Паттерны проектирования - изображение 127 Распределенные системы Паттерны проектирования - изображение 128 картинка 129 картинка 130 Распределенные системы Паттерны проектирования - фото 131 Распределенные системы Паттерны проектирования - фото 132 Распределенные системы Паттерны проектирования - фото 133 Рис 122 Паттерн пакетной об - фото 134 Рис 122 Паттерн пакетной обработки Join пакетной обработ - фото 135 картинка 136 картинка 137 картинка 138

Рис. 12.2. Паттерн пакетной обработки Join

пакетной обработки, поскольку может существовать независимо от того, как поделен входной поток, и использоваться аналогич-но паттерну Join, то есть для слияния параллельно вычисляемых результатов пакетной обработки элементов данных. Однако, в отличие от рассмотренного ранее паттерна Join, за-дача паттерна Reduce — выполнить оптимистичное слияние всех параллельно вычисленных элементов данных в единое исчерпывающее представление исходного множества. В паттерне Reduce каждый шаг вычислений приводит к свора-чиванию нескольких элементов выходных данных в один. Эта фаза называется сверткой , поскольку в ней уменьшается объем Глава 12. Координированная пакетная обработка 209выходных данных. Иными словами, исходный набор данных сво-рачивается до некоторого репрезентативного набора данных, по-зволяющего найти результат конкретных пакетных вычислений. Поскольку фаза свертки работает над некоторым участком вход-ных данных и порождает похожие на них выходные данные, ее можно повторять столько раз, сколько необходимо, до тех пор, пока на выходе не получится единственное значение, соответ-ствующее всему набору данных. Это выгодно отличает паттерн Reduce от паттерна Join, поскольку фаза свертки может запу-скаться параллельно фазе шардирования других участков дан-ных. Для получения конечного результата, конечно же, в итоге придется обработать все данные, но возможность начать обра-ботку раньше позволяет в целом быстрее завершить вычисления. Практикум. Подсчет

Чтобы понять, как работает паттерн Reduce, рассмотрим задачу подсчета количества вхождений определенного слова в книге. Сначала воспользуемся шардированием, чтобы разделить задачу подсчета на несколько очередей. Можно, например, создать де-сять разных шардированных очередей, за подсчет слов в каждой из которых отвечает один исполнитель. Книгу можно шарди-ровать между этими десятью очередями по номеру страницы. Страницы с номером, заканчивающимся на 1, уйдут в первую очередь, на 2 — во вторую и т. д.

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

a: 50

the: 17

cat: 2

airplane: 1

210Часть III. Паттерны проектирования систем пакетных вычислений Эти данные передаются на фазу свертки. Напомню, что паттерн Reduce выполняет свертку путем комбинации двух и более эле-ментов входных данных в один элемент выходных. Второй набор выходных данных:

a: 30

the: 25

dog: 4

airplane: 2

...

Далее в процессе свертки количество экземпляров слов в каж-дом из шардов суммируется:

a: 80

the: 42

dog: 4

cat: 2

airplane: 3

...

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

Читать дальше
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

Похожие книги на «Распределенные системы. Паттерны проектирования»

Представляем Вашему вниманию похожие книги на «Распределенные системы. Паттерны проектирования» списком для выбора. Мы отобрали схожую по названию и смыслу литературу в надежде предоставить читателям больше вариантов отыскать новые, интересные, ещё непрочитанные произведения.


Отзывы о книге «Распределенные системы. Паттерны проектирования»

Обсуждение, отзывы о книге «Распределенные системы. Паттерны проектирования» и просто собственные мнения читателей. Оставьте ваши комментарии, напишите, что Вы думаете о произведении, его смысле или главных героях. Укажите что конкретно понравилось, а что нет, и почему Вы так считаете.

x