Резюме
Это выступление в основном для того, чтобы поделиться с вами сценариями приложений и некоторыми практиками вычислений в реальном времени в Didi.
Источник контента:12 августа 2017 г. Лян Лиинь, руководитель вычислительной платформы Didi в реальном времени, выступил с речью на тему «Практика Didi по обработке массивных данных в реальном времени» на «Дне практики обучения NetEase: конференции по технологиям больших данных и искусственного интеллекта». IT big coffee сообщил, что как эксклюзивный видео-партнер, он был выпущен с разрешения организатора и спикера.
Количество прочитанных слов: 1260 | 4 минуты чтения
Система больших данных Диди
Главной особенностью системы больших данных Didi является то, что данные поступают в режиме реального времени, и при сборе данных можно собрать более 90% данных. Существует три типа источников данных.Один из них Binlog data.Все данные на терминале попадают в базу данных и собираются в режиме реального времени через Binlog.Кроме того, есть publiclog,где также в реальном времени собираются все логи на сервере.
Поскольку все наши данные собираются в режиме реального времени, поток обработки на уровне клиента также широко использует технологию реального времени. Три продукта используются для хранения в реальном времени: один — ES, который в основном используется для извлечения журналов и анализа в реальном времени, другой — Druid, который используется для отчетов и мониторинга в реальном времени, HBase — для запрос и сканирование данных.
Автономная часть в настоящее время использует Hive и Spark. Hive в основном отвечает за работу ETL, а Spark выполняет анализ данных и запросы за анализом. Для потоковых вычислений мы используем Spark Streaming и Flink Streaming.
С точки зрения масштаба, наше хранилище в реальном времени и автономное масштабирование достигли ведущего внутреннего уровня.
Сцена расчета в реальном времени
Существует четыре сценария для вычислений в реальном времени, ETL, отчетов в реальном времени, мониторинга в реальном времени и бизнеса в реальном времени.
Поскольку 90% наших данных собираются в режиме реального времени, первым шагом после сбора является выполнение ETL, поэтому масштаб ETL теперь самый большой. Отчеты в режиме реального времени можно использовать для отображения отчетов по операциям и обслуживанию клиентов.
Масштабы мониторинга в реальном времени уступают только ETL.Существует два типа требований к внутреннему мониторингу.Один на уровне машины, используются другие технические решения.Все используют систему вычислений в реальном времени.
Наш ключевой прорыв в этом году — бизнес в реальном времени, мы хотим совершить прорыв в сценарии потоковых вычислений на терминале.
ETL в реальном времени
Чтобы упростить использование ETL, мы сделали его платформой, и пользователям нужно только настроить его в Интернете, чтобы добиться очистки данных. Текущий объем очистки может достигать около 3,5 млн данных в секунду, а объем данных в несколько P очищается каждый день. Это полностью реализовано на основе облачных вычислений Spark Streaming.
Отчетность в режиме реального времени
Основными технологиями реального времени, используемыми для отчетов в реальном времени, являются Spark Streaming и Druid. Spark Streaming по-прежнему выполняет очистку данных. Druid может потреблять данные Kafka в режиме реального времени, но к данным предъявляются определенные требования, поэтому сначала необходимо пройти цикл очистки и преобразования.
Существует также множество сценариев для отчетов в режиме реального времени, включая большие экраны обслуживания клиентов, аномальную статистику и тепловые карты заказов.
Большой экран обслуживания клиентов — это экран, который может отображать такую информацию, как частота ответов на звонки в службу поддержки, точки доступа для жалоб и условия очередей.
Панель управления аномальной статистикой включает в себя мониторинг запросов, инициированных клиентом к серверу.Таким образом можно отслеживать процент успешных и неудачных запросов, а также количество запросов.
Тепловая карта заказа может видеть объем заказа, количество пассажиров и количество водителей в определенной области и отображать их на карте.
Мы выбрали Druid, потому что у него есть некоторые функции, такие как гибкий запрос.
мониторинг в реальном времени
Чтобы повысить эффективность мониторинга в будущем, мы создали универсальную платформу мониторинга самообслуживания и выполнили создание платформы с полной связью.
На основе этой платформы Didi имеет внутренний доступ к примерно 200 источникам данных и отслеживает около 400 или 500 показателей.
бизнес в реальном времени
Flink Streaming — это движок, представленный только в этом году, и мы хотим предложить лучшие решения таких проблем, как очень высокая задержка, потеря данных и дублирование данных через сервисы в реальном времени.
столкнуться с проблемой
Сократите затраты на разработку, рассчитываемые в режиме реального времени: что касается Hive и т. д., сложность разработки вычислений в реальном времени все еще относительно велика, мы также изучаем возможности разработки более простым способом.
Развитие бизнеса в режиме реального времени и проблемы: наша текущая технология в области ETL в реальном времени, отчетности в реальном времени и мониторинга в реальном времени является очень зрелой и в основном охватывает все внутренние бизнес-сценарии Didi. Сервисы реального времени предъявляют очень высокие требования к задержке и отказоустойчивости, что является серьезной проблемой, с которой мы сталкиваемся сейчас.
Разумное распределение пиков и падений в бизнесе. Теперь нам необходимо разумно распределять ресурсы, чтобы их можно было использовать более рационально и сократить расходы компании.
Вот и все на сегодняшнем обмене, спасибо всем!