Какую систему программирования с распределённой картой проще всего использовать?

Какую систему программирования с распределённой картой проще всего использовать?

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

Map:
for all records of type "user"
do for each user
    count number of connections
    retrun connection_count_for_one_user

Reduce:
reduce (connection_count_for_one_user)
    total_connections += connection_count_for_one_user

Есть ли какая-нибудь система mapreduce, которая позволяет мне программировать таким образом?


person yazz.com    schedule 17.02.2010    source источник
comment
В нынешнем виде ваш вопрос не имеет смысла.   -  person leeeroy    schedule 17.02.2010
comment
Спасибо Лирой. Я попытался сделать это более ясным сейчас. Это лучше? Или что я могу сделать, чтобы улучшить его?   -  person yazz.com    schedule 17.02.2010


Ответы (1)


Что ж, я попытаюсь внести некоторые предложения, но ваш вопрос не слишком ясен.

Итак, как вы храните свои данные? Механизм хранения не зависит от того, как вы применяете алгоритмы MapReduce к данным. Я предполагаю, что вы используете распределенную файловую систему Hadoop.

Проблема, которую вы иллюстрируете, на самом деле очень похожа на типичный пример подсчета слов Hadoop MapReduce. Вместо слов вы просто считаете пользователей.

Вот некоторые из вариантов применения MapReduce к данным, хранящимся в HDFS:

  • Java framework – хорошо, если вы хорошо разбираетесь в Java.
  • Pig — язык сценариев высокого уровня.
  • Hive — решение для хранения данных для Hadoop с интерфейсом, подобным SQL.
  • потоковая передача Hadoop – позволяет писать преобразователи и редукторы в красивом много любого языка.

Что проще?

Ну тут все зависит от того, что вам удобно. Если вы знаете Java, взгляните на стандартную среду Java. Если вы привыкли к языкам сценариев, вы можете использовать Pig или потоковую передачу. Если вы знаете SQL, вы можете взглянуть на использование Hive QL для запроса HDFS. Я бы посмотрел документацию для каждого в качестве отправной точки.

person Binary Nerd    schedule 19.02.2010