Название: Введение в облачные и распределенные информационные системы
Автор: Тимур Машнин
Издательство: Издательские решения
Жанр: Компьютеры: прочее
isbn: 9785005303110
isbn:
Здесь объекты – это по существу процессы.
Таким образом, каждый объект является процессом, который работает на каком-либо устройстве.
И каждый объект является автономным и программируемым, так как это процесс.
Асинхронный также очень важно, это означает, что каждый процесс или каждый объект работает в соответствии со своим собственным циклом или часами, так как каждое устройство имеет свое системное время, и эти часы не синхронизируются друг с другом.
И эти объекты подвержены сбоям, и их коммуникация не надежна.
Асинхронность отличает распределенные системы от параллельных систем.
Параллельные системы включают в себя многопроцессорные системы и суперкомпьютеры.
Но, по сути, при этом очень большое количество процессоров используют одну и ту же материнскую плату.
Они взаимодействуют друг с другом по тесно связанной сети, и все они имеют синхронизированные циклы или часы.
И этим параллельная система отличается от распределенной системы.
Таким образом, процесс, это автономная работающая программа, которая может иметь несколько потоков.
Процесс выполняет множество задач, которые могут быть распределены по потокам, и которые могут выполняться на одном или нескольких процессорах.
В распределенных системах, эти процессы работают на разных устройствах, системные времена которых не синхронизированы.
В параллельных системах каждый поток процесса выполняется на своем процессоре или ядре процессора, и задачи таким образом выполняются параллельно.
При этом процессоры имеют синхронизированное системное время.
MapReduce
MapReduce – это модель распределённых вычислений, представленная компанией Google.
И эта модель используется для параллельных вычислений над очень большими наборами данных в компьютерных кластерах.
Термины map и reduce, которые составляют термин MapReduce, заимствованы из функциональных языков, таких как Lisp.
Например, вы хотите вычислить сумму квадратов.
Функция map – функция, которая может быть применена к любому из этих целых чисел и вычисляет квадрат каждого числа.
Так что map здесь является мета функцией, которая обрабатывает каждую запись.
Это первая часть.
Вторая часть – это функция reduce, которая получает на вход список соответствующих квадратов целых чисел и просто суммирует их.
reduce здесь снова является мета функцией, которая применяется к группе записей.
Предположим, что у нас есть текст, и нам нужно произвести подсчет для каждого слова, которое СКАЧАТЬ