В чем секрет работы Didi с огромными данными?

HBase Kafka Flink Spark
В чем секрет работы Didi с огромными данными?


Резюме

Это выступление в основном для того, чтобы поделиться с вами сценариями приложений и некоторыми практиками вычислений в реальном времени в Didi.

Источник контента:12 августа 2017 г. Лян Лиинь, руководитель вычислительной платформы Didi в реальном времени, выступил с речью на тему «Практика Didi по обработке массивных данных в реальном времени» на «Дне практики обучения NetEase: конференции по технологиям больших данных и искусственного интеллекта». IT big coffee сообщил, что как эксклюзивный видео-партнер, он был выпущен с разрешения организатора и спикера.

Количество прочитанных слов: 1260 | 4 минуты чтения

Видеопросмотр выступлений гостей:t.cn/RQXAmrK

Система больших данных Диди


Главной особенностью системы больших данных 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. Сервисы реального времени предъявляют очень высокие требования к задержке и отказоустойчивости, что является серьезной проблемой, с которой мы сталкиваемся сейчас.

Разумное распределение пиков и падений в бизнесе. Теперь нам необходимо разумно распределять ресурсы, чтобы их можно было использовать более рационально и сократить расходы компании.

Вот и все на сегодняшнем обмене, спасибо всем!