Электронная коммерция

EDTL-интеграция для eLADY

eLADY eDTL: CSV/Sheets → таксономия партнёра за 3s циклы. Go-ядро обрабатывает десятки тысяч строк, дедуплицирует и ускоряет конвертацию на ~60%.

Клиент: eLADY
13 августа 2025 г.
Время чтения: 5 минут
edtlинтеграция магазиновShopify разработка
EDTL-интеграция для eLADY

О компании eLADY

eLADY — №1 онлайн-ретейлер pre-owned люксовых товаров в Японии с 1999 года. Компания, базирующаяся в Токио, является членом International Anti-Counterfeiting Coalition и внедряет корпоративные антифальсификационные решения, помогая искоренять распространение контрафакта в интернете.
Направления и сервисы:

  • eLADY GLOBAZONE — подлинные pre-owned luxury товары: тысячи сумок, часов и аксессуаров ведущих брендов по выгодным ценам и с высоким контролем качества.
  • UKEROO — подлинные автозапчасти. В коллаборации с Ecoline (100% компания Toyota) — крупнейший eBay-магазин, продающий оригинальные и восстановленные детали для всех японских моделей.
  • LISUTO! — «List Once, Sell Everywhere»: платформа для создания маркетплейс-листингов на любых языках, публикуйте один раз — продавайте везде.

Задача интеграции

Подключить поставки данных в CSV и Google Sheets, привести их к целевой таксономии партнёра, устранить дубли и загрузить результат в нужный формат/систему — без ручных правок и с минимальной задержкой.


Что такое eDTL (Extract → Deduplicate → Transform → Load)

  • Extract — приём данных из CSV/Google Sheets/SFTP/HTTP/облаков, потоковое чтение крупных наборов.
  • Deduplicate — удаление жёстких и «мягких» дублей (по SKU/EAN/Brand+Model, близости названий и пр.), фиксируем причины отбраковки.
  • Transform — нормализация полей, конвертация таксономий источник → партнёр, паттерн-матчинг, расчётные атрибуты.
  • Load — выгрузка в целевую схему (CSV/NDJSON/API), статусы, отчёты, вебхуки.

Вставка D (Deduplicate) делает конвейер устойчивым к «грязным» данным и обеспечивает детерминированность результата при слиянии разных источников.


Источники: CSV и Google Sheets

  • CSV: поддержка разных разделителей/кодировок, потоковый парсинг без загрузки файла целиком в память.
  • Google Sheets: чтение по API с регулярным опросом, снапшоты версий, дифф изменений по строкам/столбцам.

Автообновление каждые 3 секунды

Для критически важных листингов внедрён режим псевдо-реального времени:

  • Поллинг 3s: планировщик запускает микропроход каждые 3 секунды, подтягивая инкрементальные изменения из Google Sheets/CSV-эндпоинтов.
  • Инкрементальная обработка: только дельта — быстрее конвертация, меньше I/O.
  • Защита от перегрузки: джиттер, троттлинг, экспоненциальный бэкофф при ошибках, idempotency-ключи для безопасных повторов.
  • Гарантии последовательности: очередь событий, порядковая фиксация снапшотов, «at-least-once» с дедупликацией на приёмнике.

От Fastify к Go: +≈60% скорости на конвертации/маппинге/паттерн-матчинге

Изначально сервис был реализован на Fastify (Node.js) — быстрый старт и гибкость экосистемы. По мере роста объёмов мы полностью переписали вычислительное ядро на Go, что дало ощутимый прирост производительности:

  • Потоковый парсинг (bufio + csv.Reader), конвейерная обработка с worker-pool.
  • Компиляция и кэширование правил таксономий/регекспов, LRU/TTL-кэши горячих соответствий.
  • Предсказуемое потребление памяти и стабильный GC под нагрузкой.

Результат: ускорение этапов «конвертация таксономии → маппинг → паттерн-матчинг» примерно на 60% по нашим референсным наборам.


Пропускная способность

Ядро на Go уверенно принимает и обрабатывает десятки тысяч строк за итерацию, сохраняя низкую латентность на шаге трансформации. Это достигается за счёт:

  • параллельной нормализации и сопоставления полей;
  • батч-пакетов с контролируемым размером;
  • «мягких» очередей с приоритетами (горячие/холодные источники).

Управление таксономиями и качеством

  • Маппинг таксономий: каскад «категория → подкатегория → атрибуты», синонимы, исключения, fallback-классификация.
  • Паттерн-матчер: регулярные выражения, префиксы/суффиксы, парсинг составных полей.
  • Отбраковка: отсутствие фото, ≥3 незаполненных критичных полей, аномалии цен/размеров, «мягкие» дубли.
  • Отчётность: причины отбраковки, доля «красных» карточек, дифф «до/после».

Наблюдаемость и надёжность

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

Что получает бизнес eLADY

  • Публикация данных почти в реальном времени благодаря автообновлению каждые 3 секунды.
  • Чистый и согласованный каталог: предсказуемая конверсия таксономий, меньше дублей и «мусора».
  • Высокая производительность: Go-ядро обрабатывает десятки тысяч строк без деградации UX партнёров.
  • Прозрачность процессов: отчёты, причины отбраковки, управляемые откаты.

Итог

Мы создали для eLADY eDTL-конвейер, который стабильно «переваривает» CSV и Google Sheets, обновляется каждые 3 секунды, конвертирует таксономии, удаляет дубликаты и отдаёт чистый результат партнёрам. Переезд вычислительного ядра на Go обеспечил значительный прирост скорости и устойчивости — фундамент для масштабирования поставок и каналов продаж.

Использованные технологии

FastifyGoSQL

Достигнутые результаты

🎯

+60% скорости

🎯

Простота интеграции с новыми партнерами

🎯

Экономия 300$/месяц

Хотите создать похожий проект?

Расскажите о вашей идее, и мы поможем её реализовать