Рубрика «map reduce»

"…те, кто не прочь поглазеть на любителя прилюдно свалять дурака, пусть понаблюдают, как я доказываю, что Java и Visual Basic – близнецы, разлученные при рождении, а С++ им даже не дальний родственник."

Брюс Мак-Кинни “Крепкий орешек Visual Basic”

Введение

Постоянный интерес к подходам функционального программирования в настоящее время приводит к тому, что традиционные языки программирования активно обзаводятся функциональными средствами. И, хотя чистые функциональные языки остаются пока не слишком популярными, функциональные возможности прочно обосновались в таких языках, как С++, Java, JavaScript, Python и др. Язык VBA уже многие годы пользуется заслуженной популярностью у довольно многочисленной аудитории пользователей Microsoft Office, однако этот язык практически не содержит функциональных средств.
Давайте попытаемся заполнить этого пробел – предлагаю законченную (хотя, возможно, и не безупречную) реализацию функциональных интерфейсов, выполненную средствами VBA. Реализация может служить основой для последующих доработок и улучшений.
Читать полностью »

Привет!

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

Как мы переписали архитектуру Яндекс.Погоды и сделали глобальный прогноз на картах - 1

Сперва пару слов про продукт. Погодные карты — способ узнавать погоду, очень популярный на западе и пока что не очень популярный в России. Причиной тому является, собственно, сама погода. Из-за особенностей климата наиболее населенные регионы нашей страны не подвержены внезапным погодным катаклизмам (и это хорошо). Поэтому интерес к погоде у жителей этих регионов скорее бытовой. Так, людям в центральной России важно знать, например, какая погода будет в Москве в выходные или что в четверг в Питере будет дождь. Такую информацию проще всего узнать из таблицы, в которой будет дата, время и набор погодных параметров.

Читать полностью »

Выбор алгоритма вычисления квантилей для распределённой системы - 1

Всем привет!

Меня зовут Александр, я руковожу отделом Data Team в Badoo. Сегодня я расскажу вам о том, как мы выбирали оптимальный алгоритм для вычисления квантилей в нашей распределённой системе обработки событий.

Читать полностью »

Распределенные вычисления в Elixir

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

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

Читать полностью »

image
Некоторое время назад, в рамках конференции Strata + Hadoop World был анонсирован выход в коммерческой эксплуатацию Windows Azure HDInsight — облачного сервиса 100% совместимого с Apache Hadoop. Подробности о истории появления сервиса и его возможностях можно найти в этой статье на Хабре. Об анонсах конференции Strata + Hadoop World можно прочитать в другой свежей статье.

В этой статье речь пойдет о внутреннем устройстве кластеров HDInsight, старте работы с ними и первых задачах и запросах к Hive. В конце статьи приводятся реальные примеры использования Windows Azure HDInsight крупными международными организациями.

Windows Azure HDInsight предлагает следующие преимущества для своих пользователей:

  • Работа с большими данными с помощью знакомых инструментов: благодаря глубокой интеграции с инструментами бизнес-аналитики от Microsoft, такими как PowerPivot, Power View и Excel, сервис HDInsight позволяет вам легко анализировать ваши данные с помощью возможностей Hadoop. Прозрачно объединяйте данные из различных источников данных, включая HDInsight с помощью Power Query. Легко анализируйте и визуализируйте географические данные с помощью Power Map – новый картографический 3D-инструмент в Excel 2013;
  • Гибкость – HDInsight предлагает гибкость соответствующую изменениям потребностей вашей организации. С богатый набором скриптов PowerShell вы можете размещать и администрировать кластер Hadoop за считанные минуты вместо привычных часов или даже дней. Если вам нужен кластер большего размера, просто удалите существующий и создайте новый нужного размера в течении нескольких минут без потери каких либо данных;
  • Hadoop корпоративного уровня: HDInsight предлагает безопасность и управляемость корпоративного уровня. Благодаря выделенному узлу Secure Node, сервис HDInsight помогает обезопасить ваш кластер Hadoop. В дополнение, мы упростили управление вашим кластером Hadoop с помощью внушительного набора скриптов PowerShell;
  • Богатые возможности для разработчиков: сервис HDInsight предлагает мощные возможности для разработки приложений с богатым выбором языков, включая .NET, Java и другие. Разработчики на платформе .NET могут воспользоваться мощью запросов LINQ to Hive.

Читать полностью »

Впервые столкнувшись с MapReduce, я продолжительное время искал реальные примеры применения. Пресловутый поиск слов в тексте, встречающийся в каждой второй статье о MapReduce, искомым примером считать не будем. Наконец, на двух курсах по Big Data на Coursera, я нашёл не только живые примеры, но теоретическую подоплёку для более глубокого понимания происходящего. Возможность применить полученный багаж знаний не заставила себя долго ждать.

В этой небольшой статье я хочу поделиться опытом реализации классической для большинства Интернет-магазинов системы фильтров товаров по критериям применительно к туристическому порталу, где появилась задача поиска и фильтрации по базе в десятки тысяч отелей, каждый из которых описывается рядом параметров и наличием нескольких десятков предоставляемых сервисов из сотен возможных.
Читать полностью »

Meta

Доброго времени суток!

В данный момент я работаю над достаточно большим проектом, состоящим из нескольких модулей, и использующий разные технологии. Но сам сайт, а точнее его back-end написан целиком на Node.js, а Riak является основным хранилищем. Ничего не буду писать про сам Riak, на хабре и так есть отличная обзорная статья.

Как и для любой другой NoSQL базы данных, чтобы интегрировать функциональность БД в Node.js вам необходимо использовать драйвер или клиент этой базы данных, кому как нравится называть. Вам это надо для удобства пользования и составления запросов к БД, конечно вы можете это делать и напрямую, используя незатейливую команду curl.

Сразу хочу оговориться, что клиенты или драйвера для различных NoSQL БД называют по-разному, я же буду говорить или как об ORM или как о клиенте конкретной ДБ. Кстати, имено так о себе и пишут в Riak-js репозитории:

Node.js client for Riak.

Вот некоторые, а возможно что и все Node.js клиенты для riak

  • riak-js — используемый в нашем проекте
  • Simpleriak
  • Riak-PB — использует protobuff, может быть немого быстрее

Из-за незначительного опыта работы с последними двумя, сказать мне вообщем-то про них нечего, поэтому дальше речь пойдет только riak-js.

Читать полностью »

Ну вот, программа московского Big Data Week полностью сформирована.

Напоминаем. В этом году Москва является участником Big Data Week — мирового фестиваля, посвященного теме обработки больших объемов данных. В Москве мероприятия будут проходить 3 дня — 25-27 апреля на Мансарде объединенной компании Афиши и Рамблера.

image

Программа:
Читать полностью »

Как-то не выдавался раньше случай рассказать тут про наш проект Мансарда (Facebook, ВКонтакте). И вот выдался.

В этом году Москва является участником Big Data Week — мирового фестиваля, посвященного теме обработки больших объемов данных. В Москве мероприятия будут проходить 3 дня — 25-27 апреля на Мансарде объединенной компании Афиши и Рамблера. Регистрироваться можно (и нужно!) уже сейчас.

image

Читать полностью »

При выполнении расчетов в системах распределенных вычислений, в том числе с архитектурой MapReduce, часто возникают задачи, которые выполняются медленно или с опозданием на отдельно взятом узле (stragglers). Причиной появления таких задач может стать неоднородность кластера, hardware или software проблемы. Из-за таких запозданий падает быстродействие всей системы в целом. Создатели Hadoop стараются бороться с этим, дублируя запуски медленных задач на других узлах кластера (speculative execution), однако этот подход не позволяет определять медленные задачи своевременно.

20 сентября в московском офисе Яндекса пройдет научно-технический семинар, на котором выступит Эдуард Бортников, главный инженер исследовательского центра Yahoo!.. В первой половине своего доклада он расскажет, как решать проблему «узких мест» систем MapReduce с помощью машинного обучения. Этот метод, в отличие от технологии Hadoop, позволяет предсказывать замедление выполнения задач на конкретном узле. Предсказатель можно интегрировать с существующей системой MapReduce, таким образом увеличив эффективность системы.

Вторая часть доклада будет посвящена Sailfish – новой реализации модели MapReduce от Yahoo!.. В основе новинки лежит принцип объединения промежуточных данных и пакетная обработка операций дискового ввода-вывода. Система Sailfish блестяще прошла эксперимент на реальных данных и задачах в Yahoo!, показав поистине чемпионские результаты – эффективность выполнения задач увеличилась до 400% по сравнению с Hadoop. Кроме того, Sailfish позволяет делать автоматическую настройку параметров задачи при изменении объемов или распределения данных. Система Sailfish проще в использовании, чем Hadoop, где каждый запуск требует кропотливой, ручной настройки параметров.
Семинар пройдет на русском языке, начало в 19:00.

Для участия в семинаре необходима регистрация.

Для тех, кто не сможет прийти на семинар, будет организована видеотрансляция.Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js