Welcome to my personal place for love, peace and happiness❣️

Интеграция данных на базе SeaTunnel: Как 58.com обрабатывает более 500 млрд датасетов ежедневно

Перевод: https://dev.to/seatunnel/seatunnel-powered-data-integration-how-58-group-handles-over-500-billion-data-points-daily-3d1m

Введение

В эпоху цифровизации данные стали одним из самых ценных активов для бизнеса. Как ведущая платформа услуг повседневной жизни в Китае, 58 Group постоянно исследует и внедряет инновации в построении своей платформы интеграции данных. В этой статье будут подробно рассмотрены эволюция архитектуры, стратегии оптимизации и планы будущего развития платформы интеграции данных 58 Group на основе Apache SeaTunnel.

Вызовы платформы интеграции данных

Бизнес-контекст

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

В настоящее время 58 Group обрабатывает более 500 миллиардов сообщений ежедневно, с пиковым объемом обработки сообщений, превышающим 20 миллионов, и количеством задач, превышающим 1600. Обработка такого огромного объема данных представляет значительные вызовы.

Вызовы

В обеспечении свободного перемещения и конвергенции данных между различными источниками и достижении единого управления, циркуляции и обмена данными 58 Group сталкивается с вызовами, включая:

  • Высокая надежность: Обеспечение отсутствия потерь данных при различных условиях сбоя, обеспечение согласованности данных и стабильной работы задач.
  • Высокая пропускная способность: Обработка больших потоков данных для достижения высокой параллельности и массового переноса данных.
  • Низкая задержка: Соответствие бизнес-потребностям в обработке данных в реальном времени и быстром отклике.
  • Простота обслуживания: Упрощение конфигурации и автоматизация мониторинга для снижения нагрузки на обслуживание, упрощения быстрого обнаружения и устранения неисправностей, а также обеспечения долгосрочной доступности системы.

Эволюция архитектуры

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

Ранняя архитектура

  • 2017: Использовался Flume для интеграции платформы.
  • 2018: Внедрен Kafka Connect 1.0.
  • 2020: Использовалась версия Kafka Connect 2.4, достигнута инкрементальная балансировка нагрузки и CDC (Change Data Capture).
  • 2023: Внедрен Apache SeaTunnel, интегрированный в платформу реального времени вычислений, и расширены различные Source/Sink.

С 2017 по 2018 год платформа интеграции данных 58 Group использовала архитектуру Kafka Connect, основанную на интеграции данных с Kafka, с горизонтальным масштабированием и распределенной обработкой, поддерживающей работу Workers и Tasks на нескольких узлах; Workers автоматически перераспределяют задачи на другие Workers при сбое, обеспечивая высокую доступность; также поддерживается автоматическое управление смещением и управление задачами и конфигурацией через Rest API.

Однако с расширением объема бизнеса и разнообразием сценариев эта архитектура столкнулась с ограничениями:

Ограничения архитектуры

  • Невозможность достижения полной интеграции данных.
  • Проблемы с Coordinator Bottleneck
    • Heartbeat Timeout: Тайм-ауты сердцебиения Worker-to-coordinator вызывают перебалансировку задач, вызывая временные прерывания задач.
    • Heartbeat Pressure: Workers синхронизируются с координаторами, отслеживая состояния Workers и управляя большим объемом метаданных задач.
    • Coordinator Failure: Простой координатора влияет на распределение и перераспределение задач, вызывая сбои задач и снижение эффективности обработки.
  • Влияние Task Rebalance
    • Task Pause and Resume: Каждая перебалансировка приостанавливает задачи, затем перераспределяет их, что приводит к кратковременным прерываниям задач.
    • Rebalance Storms: Если несколько узлов Workers часто присоединяются или покидают кластер, или если сетевая дрожь вызывает тайм-ауты сердцебиения, частые Rebalance могут значительно повлиять на эффективность обработки задач, вызывая задержки.

Учитывая эти недостатки, 58 Group в 2023 году внедрила Apache SeaTunnel, интегрировав его в платформу реального времени вычислений для свободного расширения различных Source/Sink.

Текущая архитектура

В настоящее время платформа интеграции данных 58 Group, основанная на движке Apache SeaTunnel, интегрирует источники данных (Kafka, Pulsar, WMB, Hive и т.д.), обрабатывает их через встроенные функции Transform SeaTunnel и отправляет их в целевые базы данных (Hive, HDFS, Kafka, Pulsar, WMB, MySQL, SR, Redis, HBASE, Wtable, MongoDB и т.д.), достигая эффективного управления задачами, управления статусом, мониторинга задач, интеллектуальной диагностики и многого другого.

Плавная миграция и настройка производительности

Плавная миграция

При внедрении Apache SeaTunnel 58 Group должна была выполнить плавную миграцию платформы интеграции данных, чтобы минимизировать влияние на пользователей или бизнес и обеспечить согласованность данных, сохраняя согласованность формата, пути и отсутствие потерь данных.

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

Для решения этой проблемы 58 Group предприняла следующие меры:

  • Для источников добавлен RawDeserializationSchema для совместимости с неструктурированными данными.
  • Для целей, таких как использование hdfs sink для hive, для совместимости с загрузкой партиций и путями.
  • Разработка автоматических инструментов миграции:
    • Автоматическое генерирование конфигураций задач, генерирование соответствующих конфигураций задач SeaTunnel на основе конфигураций Kafka Connect.
    • Отключение исходных задач, сброс смещений и запуск новых задач.
    • Проверка и проверка.

Настройка производительности

58 Group также провела несколько оптимизаций производительности на платформе интеграции данных, включая:

  • Добавление Pulsar Sink Connector: Для увеличения пропускной способности.
  • Поддержка Array Data: Улучшение совместимости HbaseSink.
  • Поддержка установки времени истечения срока действия: Оптимизация RedisSink.
  • Увеличение пропускной способности PulsarSource: Оптимизация метода сжатия файловых коннекторов.
  • Исправление проблем с парсингом KafkaSource: Улучшение гибкости конфигурации клиентов Kafka.

Мониторинг и автоматизация операций

Кроме того, 58 Group улучшила стабильность и эффективность платформы интеграции данных через мониторинг и автоматизацию операций:

  • Мониторинг задач: Реальный мониторинг статуса задач для быстрого обнаружения и устранения сбоев.
  • Автоматизация операций: Сокращение ручного вмешательства через автоматизированные инструменты для увеличения операционной эффективности.

Планы будущего развития

58 Group имеет четкие планы на будущее развития платформы интеграции данных:

  • Постоянное улучшение интеллектуальной диагностики: Повышение точности и эффективности диагностики неисправностей через технологии машинного обучения и искусственного интеллекта.
  • Обновление на облачную и контейнеризованную инфраструктуру: Перенос платформы интеграции данных в облачную среду и реализация контейнеризованного развертывания для улучшения использования ресурсов и гибкости.

Заключение

Эволюция и оптимизация архитектуры платформы интеграции данных 58 Group — это непрерывный процесс итерации и инноваций. Через постоянные технологические исследования и практику 58 Group успешно построила эффективную, стабильную и масштабируемую платформу интеграции данных на основе Apache SeaTunnel, обеспечивая сильную поддержку данных для развития бизнеса. В будущем 58 Group продолжит углубляться в область интеграции данных, чтобы предоставлять лучшие услуги для пользователей.

Для справки

Что такое Apache SeaTunnel и для чего он нужен?

Apache SeaTunnel — это открытая платформа для интеграции данных, разработанная на основе Apache Spark и Apache Flink. Она предназначена для обеспечения высокопроизводительной, надежной и масштабируемой обработки потоковых и пакетных данных. SeaTunnel предоставляет удобный интерфейс для разработчиков, позволяющий легко интегрировать различные источники данных (такие как Kafka, Pulsar, Hive и другие) и отправлять их в различные хранилища данных (такие как HDFS, Kafka, MySQL, Redis и т.д.).

Основные функции и преимущества Apache SeaTunnel:

  1. Высокая производительность: SeaTunnel использует мощные движки Apache Spark и Apache Flink для обеспечения высокой скорости обработки данных.
  2. Надежность: Платформа обеспечивает гарантию доставки данных, чтобы избежать потерь данных при сбоях.
  3. Масштабируемость: SeaTunnel может легко масштабироваться для обработки больших объемов данных.
  4. Гибкость: Поддерживает множество источников и приемников данных, что делает его универсальным инструментом для интеграции данных.
  5. Простота использования: Предоставляет удобный интерфейс для разработчиков, упрощая настройку и управление задачами интеграции данных.

Для чего нужен Apache SeaTunnel?

Apache SeaTunnel используется для решения задач интеграции данных в различных сценариях, таких как:

  • Обработка потоковых данных: SeaTunnel может использоваться для обработки данных в реальном времени, например, для анализа данных сенсоров, мониторинга активности пользователей и т.д.
  • Интеграция данных из различных источников: SeaTunnel позволяет объединять данные из разных источников, таких как базы данных, хранилища объектов, системы логгирования и т.д.
  • Перенос данных: SeaTunnel может использоваться для переноса данных между различными хранилищами данных, например, из MySQL в HDFS или из Kafka в Elasticsearch.
  • Агрегация и трансформация данных: SeaTunnel предоставляет мощные инструменты для агрегации и трансформации данных, что позволяет создавать сложные аналитические модели.

Что за компания 58 Group в Китае?

58 Group — это ведущая китайская платформа услуг повседневной жизни, предоставляющая широкий спектр онлайн-сервисов, включая поиск работы, недвижимость, вторичный рынок товаров, местные услуги и многое другое. Компания была основана в 2005 году и с тех пор стала одним из крупнейших игроков на рынке онлайн-услуг в Китае.

Основные направления деятельности 58 Group:

  1. Поиск работы: Платформа предоставляет услуги по поиску работы для соискателей и размещению вакансий для работодателей.
  2. Недвижимость: 58 Group предлагает услуги по аренде и продаже недвижимости, включая жилую и коммерческую недвижимость.
  3. Вторичный рынок товаров: Платформа позволяет пользователям покупать и продавать б/у товары, такие как электроника, мебель, одежда и т.д.
  4. Местные услуги: 58 Group предоставляет широкий спектр местных услуг, включая ремонт, уборку, перевозки и многое другое.
  5. Информационная безопасность: Компания также занимается обеспечением информационной безопасности для своих пользователей.

Значение 58 Group в китайской экономике:

58 Group играет важную роль в китайской экономике, предоставляя удобные и доступные услуги для миллионов пользователей. Благодаря широкому спектру услуг и постоянному внедрению инноваций, 58 Group помогает упростить повседневную жизнь китайцев и стимулировать развитие местного бизнеса.

Проще говоря: 58 Group — это как китайский аналог Craigslist или Avito, но гораздо большего масштаба, предлагающий множество различных услуг в одном месте.

Презентация старая: http://filecache.investorroom.com/mr5ir_58/144/download/58.com%20Presentation-Q2%2719_0919_Management%20update.pdf

Follow this blog
Send
Share
Pin