MongoDB с Hadoop и соответствующими технологиями больших данных



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

Реляционных баз данных в течение долгого времени было достаточно для обработки небольших или средних наборов данных. Но колоссальная скорость роста данных делает традиционный подход к хранению и извлечению данных невозможным. Эта проблема решается новыми технологиями, которые могут обрабатывать большие данные. Hadoop, Hive и Hbase - популярные платформы для работы с такими большими наборами данных. Базы данных NoSQL или Not Only SQL, такие как MongoDB, предоставляют механизм для хранения и извлечения данных в модели согласованности проигравших с такими преимуществами, как:

  • Горизонтальное масштабирование
  • Более высокая доступность
  • Более быстрый доступ

Группа инженеров MongoDB недавно обновила соединитель MongoDB для Hadoop, чтобы обеспечить лучшую интеграцию. Это упрощает пользователям Hadoop:





  • Интегрируйте данные из MongoDB в реальном времени с Hadoop для глубокой офлайн-аналитики.
  • Коннектор предоставляет аналитическую мощь MapReduce Hadoop для данных приложений в реальном времени из MongoDB, повышая эффективность больших данных быстрее и эффективнее.
  • Connector представляет MongoDB как Hadoop-совместимую файловую систему, позволяющую заданию MapReduce читать из MongoDB напрямую, без предварительного копирования его в HDFS (файловую систему Hadoop), тем самым устраняя необходимость перемещать терабайты данных по сети.
  • Задания MapReduce могут передавать запросы как фильтры, избегая необходимости сканировать целые коллекции, а также могут использовать преимущества богатых возможностей индексирования MongoDB, включая геопространственный, текстовый поиск, массивы, составные и разреженные индексы.
  • При чтении из MongoDB результаты заданий Hadoop также могут быть записаны обратно в MongoDB для поддержки операционных процессов в реальном времени и специальных запросов.

Примеры использования Hadoop и MongoDB:

Давайте посмотрим на высокоуровневое описание того, как MongoDB и Hadoop могут работать вместе в типичном стеке больших данных. В первую очередь у нас есть:

  • MongoDB используется как «Оперативное» хранилище данных в реальном времени
  • Hadoop для автономная пакетная обработка и анализ данных

Читайте дальше, чтобы узнать почему и как MongoDB использовалась такими компаниями и организациями, как Aadhar, Shutterfly, Metlife и eBay .



Применение MongoDB с Hadoop в пакетной агрегации:

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

В этом сценарии:

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

Агрегация БД Hadoop Mongo



Применение в хранилищах данных:

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

В таком сценарии:

  • Периодические задания MapReduce загружают данные из MongoDB в Hadoop.
  • Как только данные из MongoDB и других источников станут доступны в Hadoop, можно будет запросить больший набор данных.
  • Аналитики данных теперь могут использовать MapReduce или Pig для создания заданий, которые запрашивают большие наборы данных, включающие данные из MongoDB.

Команда, работающая над MongoDB, убедилась, что благодаря своей обширной интеграции с технологиями больших данных, такими как Hadoop, он может хорошо интегрироваться в стек больших данных и помогает решать некоторые сложные архитектурные проблемы, когда дело доходит до хранения, извлечения, обработки, агрегирования и хранения данных. . Следите за обновлениями в нашей предстоящей публикации о перспективах карьерного роста для тех, кто использует Hadoop вместе с MongoDB. Если вы уже работаете с Hadoop или просто выбираете MongoDB, обязательно ознакомьтесь с курсами, которые мы предлагаем для MongoDB.