Имеется ли теоретический анализ, который описывает, какие проблемы может решить mapreduce?
Какие проблемы могут решить mapreduce?
Ответ 1
В Map-Reduce для машинного обучения на многоядерном уровне Chu et al описывает алгоритмы, которые соответствуют модели статистического запроса, могут быть записаны в определенном "суммирующей формы", что позволяет легко их распараллеливать на многоядерных компьютерах". Они специально реализуют 10 алгоритмов, включая, например, взвешенную линейную регрессию, k-средства, Naive Bayes и SVM, используя каркас с уменьшением масштаба.
Проект Apache Mahout опубликовал недавнюю реализацию Hadoop (Java) некоторых методов, основанных на идеях из этой статьи.
Ответ 2
Для проблем, требующих обработки и создания больших наборов данных. Скажите, что запрос на получение процентов распространяется на все учетные записи банка. Скажем, обрабатывать данные аудита для всех транзакций, которые произошли в прошлом году в банке. Наилучший вариант использования - это поисковый индекс Google для поисковой системы Google.
Ответ 3
Многие проблемы, которые "Смущающе параллельны" (отличная фраза!), могут использовать MapReduce. http://en.wikipedia.org/wiki/Embarrassingly_parallel
Из этой статьи.... http://www.businessweek.com/magazine/content/07_52/b4064048925836.htm ...
Doug Cutting, основатель Hadoop (реализация с открытым исходным кодом MapReduce) говорит... "Facebook использует Hadoop для анализа поведения пользователей и эффективности рекламы на сайте"
и... "техническая команда The New York Times арендовала вычислительную мощность на облаке Amazons и использовала Hadoop для конвертации 11 миллионов архивных статей, относящихся к 1851 году, в цифровые и поисковые документы. Они развернулись за один день работа, которая в противном случае заняла бы месяцы".
Ответ 4
Все, что связано с выполнением операций над большим набором данных, где проблема может быть разбита на более мелкие независимые подзадачи, результаты которых затем могут быть агрегированы для получения ответа на большую проблему.
Тривиальный пример будет вычислять сумму огромного набора чисел. Вы разбиваете множество на более мелкие множества, вычисляете суммы этих меньших множеств параллельно (что может включать разделение их на еще более мелкие множества), а затем суммируйте эти результаты, чтобы достичь окончательного ответа.
Ответ 5
Ответ лежит во имя алгоритма. MapReduce - это не работа по параллельному программированию общего назначения или пакетная реализация, как предлагают некоторые из ответов. Сокращение карты действительно полезно, когда массивы данных большие, которые необходимо обработать (этап сопоставления), и получить определенные атрибуты оттуда, а затем необходимо обобщить эти производные атрибуты (фаза сокращения).
Ответ 6
Вы также можете посмотреть видео @Google, я сам их наблюдаю, и я нахожу их очень образовательными.
Ответ 7
Вид приветствия мира в MapReduce
http://blog.diskodev.com/parallel-processing-using-the-map-reduce-prog
Ответ 8
Этот вопрос задавали до его времени. С 2009 года фактически проведен теоретический анализ вычислений MapReduce. В этой статье 2010 года Говард Карлофф и др. формализует MapReduce как класс сложности так же, как теоретики изучают P и NP. Они доказывают некоторые отношения между MapReduce и классом NC (который можно рассматривать как параллельные компьютеры с разделяемой памятью или определенный класс ограниченных схем). Но основной частью работы являются их формальные определения.