Пример использования экосистемы больших данных в Linkedin сочинение пример

ООО "Сочинения-Про"

Ежедневно 8:00–20:00

Санкт-Петербург

Ленинский проспект, 140Ж

magbo system

Сочинение на тему Пример использования экосистемы больших данных в Linkedin

Рабочие потоки сложны и построены с использованием различных доступных инструментов для экосистемы Hadoop: Hive, Pig и MapReduce – это три основных интерфейса обработки. Avro используется в качестве формата сериализации. Данные, хранящиеся в HDFS, обрабатываются цепочечными заданиями MapReduce, которые формируют рабочий поток, ациклический ориентированный граф зависимостей. Если данные за день неполные, система автоматически откатывается. Для управления этими рабочими потоками LinkedIn использует Azkaban, планировщик рабочих процессов с открытым исходным кодом. Его характеристики:

     

  1. Azkaban поддерживает сбор заданий, которые образуют поток работ. Каждое задание выполняется как отдельный процесс и может быть объединено в цепочку для создания графиков зависимостей. Конфигурация и зависимости для заданий поддерживаются в виде файлов простых пар ключ-значение.
  2.  

  3. Azkaban позволяет планировать графики, сохраняя журналы и статистику предыдущих выполнений. Система предоставляет возможности мониторинга и перезапуска. Если задание не выполнено, запускаются оповещения, и когда проблема решается, неисправный подграф необходимо перезапустить.
  4.  

  5. Azkaban также обеспечивает блокировку ресурсов, хотя эта функция часто не используется, так как большинство наших данных только добавляются.

Построение производственного потока выглядит следующим образом

<Р> 1. Исследователь начинает экспериментировать с данными через сценарий, пытаясь преобразовать их в нужную им форму. Если машинное обучение, очистка данных и разработка функций требуют большого времени. Затем это становится отдельной работой Azkaban, за которой следует выход этих рабочих мест. Эти функции могут быть обучены в модели, и для этого у нас есть пакетные задания.

Исследователь может добавлять или изменять эти функции, он настраивает Azkaban только для выполнения измененных заданий и их зависимостей; Поскольку рабочие потоки повторяются и становятся более зрелыми, они, естественно, становятся более сложными, и Азкабан становится более полезным. LinkedIn поддерживает три экземпляра Azkaban. Azkaban в сети ETL управляет загрузкой Hadoop и полностью скрыт от пользователей экосистемы Hadoop. Для сред разработки и производства исследователь развертывает свои рабочие потоки на экземпляре Azkaban для проверки результатов своих алгоритмов. После тестирования каждый рабочий процесс проходит производственный анализ, где выполняются базовые интеграционные тесты и выполняется любая необходимая настройка.

После проверки рабочий процесс развертывается на производственном экземпляре Azkaban. Наборы данных и наборы инструментов синхронизируются между средами, что позволяет легко воспроизводить результаты. СООТВЕТСТВИЕ РЕЗУЛЬТАТА Результат рабочего потока передается в другие системы либо обратно для онлайн-обслуживания, либо как производный набор данных для дальнейшего потребления. Это задание состоит из простой однострочной команды для развертывания данных.

В зависимости от потребностей приложения доступны три основных механизма:

     

  1. Ключ-значение. Полученные данные доступны в виде ассоциативного массива или коллекции.
  2.  

  3. Потоки: данные публикуются в виде журнала изменений кортежей данных.
  4.  

  5. OLAP: данные преобразуются в многомерные кубы для аналитических онлайн-запросов.

Ключевое значение: это наиболее часто используемый транспорт от Hadoop в LinkedIn, который стал возможен благодаря Voldemort. Кортежи сгруппированы в логические хранилища, которые соответствуют таблицам базы данных. Каждый ключ реплицируется на несколько узлов, в зависимости от коэффициента репликации его соответствующего узла, далее делится на разделы, причем каждый ключ в хранилище отображается с использованием согласованного хеширования для нескольких разделов между узлами. Voldemort – это распределенное хранилище значений ключей, похожее на Amazon Dynamo, с простым интерфейсом get (key) и put (key, value). Он был построен для скорочтения с возможностью чтения и записи с помощью механизма хранения, использующего MYSQL / Berkeley DB. Это обеспечивает подключаемую природу, которая представляет механизм хранения, адаптированный к HDFS. Он состоит из наборов блоков индекса и файлов данных. Индексный файл – это компактная структура, содержащая хэш ключа, за которым следует смещение до соответствующего значения в файле данных, причем весь файл отсортирован по хешированным ключам. Устройства отображения идентификаторов в задании MapReduce только несколько раз генерируют хэш ключа «фактор репликации», за которым следует пользовательский разделитель, который направляет ключ в редуктор, отвечающий за набор фрагментов. Наконец, редукторы получают данные, отсортированные по хэшу ключа, и выполняют добавление к соответствующему набору фрагментов. Это задание поддерживает создание нескольких наборов блоков на один раздел, что позволяет настроить количество редукторов для увеличения параллелизма. Со стороны Voldemort, настраиваемое количество каталогов поддерживается для каждого магазина: только один обслуживает запросы в реальном времени, а другие действуют как резервные копии. После генерации новых наборов чанков в Hadoop узлы Voldemort тянут свои соответствующие наборы чанков параллельно в новые каталоги. Приняв метод извлечения вместо push, Voldemort может регулировать выборку данных. Проверка также выполняется с помощью предварительно созданных контрольных сумм для проверки целостности извлеченных данных. После успешного выполнения операции извлечения файлы наборов блоков текущего рабочего каталога закрываются, а индексы в новых наборах блоков отображаются в памяти, полагаясь на кэш страниц операционной системы. Эта операция «подкачки» выполняется параллельно на разных машинах и занимает менее миллисекунды.

Последний шаг после свопинга – это асинхронная очистка старых версий для поддержания количества резервных копий. Поддержание нескольких версий резервных копий данных для каждого магазина помогает в быстром откате к исправному состоянию в случае проблем с данными или алгоритмом. Эта полная операция генерации чанка, извлечения и замены абстрагируется в единственную строку Pig StoreFunc, которая добавляется пользователем к последнему заданию их рабочего потока. Доступ ключ-значение является наиболее распространенной формой выхода из системы Hadoop в LinkedIn. Мы успешно управляем этими кластерами в течение последних 3 лет, с более чем 200 магазинами в производстве. Мы видели постоянную задержку 99-го процентиля в большинстве магазинов ниже 10 мс.

Потоки. Второй механизм для производных данных, сгенерированных в Hadoop, – это поток обратно в Kafka. Это полезно для приложений, которым требуется журнал изменений базовых данных. Эта возможность публикации данных в Kafka реализована в виде Hadoop OutputFormat. Здесь каждый слот MapReduce действует как производитель Kafka, который испускает сообщения, регулируя их по мере необходимости, чтобы избежать перегрузки брокеров Kafka. Драйвер проверяет схему для обеспечения обратной совместимости.

OLAP: конечный механизм предлагает многомерные данные (OLAP) для онлайн-запросов. Запросы позволяют конечному пользователю просматривать данные, разбивая их на части в различных измерениях. Решения OLAP решают эту проблему, связывая две необходимые подсистемы: генерацию куба и динамическое обслуживание запросов. В LinkedIn мы разработали систему под названием Avatara, которая решает эту проблему путем перемещение генерации куба в высокопроизводительную систему и обработку запросов в систему с малой задержкой. Полученные кубы данных должны обслуживаться в цикле запроса / ответа веб-сайта. Варианты использования в LinkedIn имеют естественный ключ шарда, что позволяет разделить конечный большой куб на несколько «маленьких кубов». Чтобы генерировать кубы, Avatarauses Hadoop как встроенный движок для выполнения пользовательских объединений и шагов предварительной агрегации данных. Чтобы упростить разработку, мы предоставляем простой API на основе конфигурационного файла, который автоматически генерирует соответствующие конвейеры заданий Azkaban. Основным форматом для этих маленьких кубов являются многомерные массивы, в которых кортеж является комбинацией пар измерения и измерения. Затем выходные кубы массово загружаются в Voldemort как хранилище только для чтения для быстрой онлайн-доставки. Благодаря своей архитектуре Avatara не связана с Voldemort и может поддерживать другие системы онлайн-обслуживания. Поскольку Avatara предоставляет возможность материализоваться как на внутреннем, так и на сетевом движке, разработчик может выбрать более быстрое время отклика или гибкие комбинации запросов.

Приложения

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

Key –value

При доступе по ключу-значению используется Voldemort, который является наиболее распространенным механизмом Egress, используемым в Hadoop. Некоторые из используемых методов:

Люди, которых вы можете знать

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

Коллабаративное наполнение

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

Эндросмент навыков

Одобрения – это облегченный механизм, при котором участник может подключиться к другому участнику в своей сети для получения навыка, который затем отображается в профиле одобренного участника. Эта функция дает рекомендации о том, кого одобрить, предлагая списки пользователей. Работа в первую очередь определяет, существуют ли одинаковые навыки среди членов базы. Это серьезная проблема извлечения информации, требующая дедупликации, определения синонимов.

Вакансии, которые могут вас заинтересовать

Это предоставляет пользователю задания, которые могут представлять его интерес в зависимости от информации, которая заполняется при создании учетной записи пользователя для LinkedIn.

Похожие поиски

Связанная поисковая система LinkedIn основана на нескольких сигналах и фильтрах, которые фиксируют несколько аспектов взаимосвязи между действиями по поиску членов. Связанные рекомендации поиска – это запрос в «Hadoop», который предоставляет релевантные результаты для их запросов.

Потоки

Потоки требуют push-модель Kafka в качестве механизма доставки. Как онлайн, так и внутренние системы согласовывают предопределенную тему Кафки с созданием внутренней системы и выходом сетевой системы.

Обновление новостных лент

Лента новостей генерируется онлайн-системой. Обновления создаются для каждого члена на основе взаимодействия с другими участниками в экосистеме. Поскольку обработка данных проста, она обеспечивает быстрое создание прототипов и тестирование обновлений.

Электронная почта

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

Отношение-сила

Социальный график LinkedIn оценивается по офлайн-заданиям, что помогает определить сильные и слабые отношения. Сгенерированные результаты публикуются в потоке и читаются потребителями для заполнения их индексов.

OLAP

Профили LinkedIn предоставляют различные измерения и взгляды на компанию, школу, группу, географию и т. д. Некоторые из его приложений являются

Кто просматривал мой профиль?

LinkedIn предоставляет пользователю возможность просматривать участников, которые просмотрели его / ее профиль. Это генерируется в зависимости от вычисления маленького куба на основе ключа идентификатора члена. Данные генерируются путем агрегирования профилей элементов на разных уровнях и выполнения операции соединения с набором данных. Сгенерированные кубы данных загружаются в хранилище только для чтения Voldemort с последующей группировкой / упорядочением в реальном времени для просмотра данных на основе запроса.

Кто смотрел эту работу?

Содержит список участников, просмотревших работу по названию, времени или компании. Идентификатор работы – это первичный ключ с аналогичным рабочим потоком, как «Кто просматривал мой профиль?» создать куб для 3-х измерений на рабочем месте.

Заключение

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

Зарегистрируйся, чтобы продолжить изучение работы

    Поделиться сочинением
    Ещё сочинения
    Нет времени делать работу? Закажите!

    Отправляя форму, вы соглашаетесь с политикой конфиденциальности и обработкой ваших персональных данных.