Hive на Hadoop для MongoDB


Вышла новая версия соединителя MongoDB Connector для Hadoop от 10gen с добавленной поддержкой Apache Hive и дополнительных заданий MapReduce.

Соединитель MongoDB для Hadoop представляет MongoDB как файловую систему, совместимую с Hadoop, так что данные в реальном времени из MongoDB могут быть прочитаны и обработаны заданиями Hadoop MapReduce. Он проверяет коллекцию MongoDB и вычисляет набор разделений на основе данных. Каждое разбиение назначается узлу в кластере Hadoop, и параллельно узлы Hadoop извлекают данные для своих разбиений из MongoDB (или BSON) и обрабатывают их локально. Затем Hadoop объединяет результаты и передает их обратно в MongoDB или BSON.

Основные изменения в новой версии начинаются с Apache Hive с SQL-подобными запросами к живым наборам данных MongoDB. Hive — это механизм запросов для Hadoop, который предоставляет альтернативу написанию заданий MapReduce для анализа наборов данных распределенной файловой системы Hadoop (HDFS). Использование Hive с MongoDB не будет полностью простым; некоторые типы данных MongoDB, такие как ObjectID, не имеют прямых совпадений в Hive, и может быть сложно понять, как выразить сопоставления полей между полями Hive и полями MongoDB, чтобы все случаи обрабатывались правильно из-за различных базовых моделей данных.

В новой версии добавлена поддержка файлов резервного копирования BSON (двоичный JSON) MongoDB, которые могут храниться локально в HDFS, что сокращает перемещение данных между MongoDB и Hadoop. Возможность работы с файлами резервных копий MongoDB также открывает возможность снижения нагрузки на работающий кластер; анализ можно было провести на резервной копии без значительной потери точности.

В новой версии также добавлена поддержка дополнительных заданий MapReduce, что упрощает проведение эффективной специальной аналитики. Это достигается с помощью новой функции MongoUpdateWriteable, которая позволяет Hadoop изменять существующую коллекцию в MongoDB, а не только писать в новые коллекции. Используя это, вы можете запускать добавочные задания MapReduce для ежедневного агрегирования тенденций или сопоставления с образцом, которые затем могут эффективно запрашиваться в единой коллекции с помощью MongoDB.

Есть хороший веб-семинар, объясняющий новые функции, а также краткое изложение в этом наборе слайдов:


Добавить комментарий