Binance Blog опубликовал новую статью, в которой подробно описано внедрение фреймворка Binance Small File Doctor, направленного на повышение эффективности платформы данных. В статье подчеркиваются проблемы, связанные с маленькими файлами в крупномасштабных платформах данных, которые могут приводить к увеличению накладных расходов на метаданные, росту задержек в худшем случае и сбоям заданий. Small File Doctor призван решить эти проблемы, превращая очистку маленьких файлов из разрозненных скриптов в управляемую систему, что значительно сокращает количество маленьких файлов и ежегодно экономит значительные средства на вычислениях и хранении данных.

Основная цель проектирования Small File Doctor — обеспечить безопасное непрерывное выполнение оптимизации файлов в производственной среде, сосредоточив усилия там, где это приводит к измеримому улучшению задержек, стабильности и стоимости. Современные платформы сильно зависят от потоков данных, которые играют ключевую роль в различных рабочих процессах, таких как мониторинг, обнаружение мошенничества, аналитика и поддержка клиентов. Когда эти потоки замедляются или выходят из строя, это приводит к задержкам в дашбордах, пропуску согласованных уровней обслуживания и ухудшению пользовательского опыта. Мелкие файлы, которые распространены в крупных хранилищах данных, усугубляют эти проблемы, увеличивая амплификацию чтения и задержки в хвосте, в конечном итоге влияя на производительность систем данных.

Small File Doctor работает, непрерывно определяя, где мелкие файлы оказывают влияние, безопасно перезаписывая базовые данные в более здоровые размеры файлов и регистрируя каждое действие для измерения воздействия. Фреймворк направлен на улучшение производительности за счет сближения размеров файлов с разумной целью, снижение операционной нагрузки за счет автоматического обнаружения «горячих точек» и обеспечение контроля за записью каждого перезаписывания, чтобы связать оптимизацию с измеримыми результатами, такими как задержки, стабильность и стоимость. Он приоритизирует оптимизацию на основе метаданных хранилища и паттернов доступа, фокусируясь на таблицах и партициях, которые существенно влияют на производственные результаты.

Фреймворк заменяет хрупкие, специализированные скрипты непрерывно работающим рабочим процессом, который вычисляет статистику на уровне каталогов, определяет, стоит ли выполнять слияние, безопасно его выполняет и регистрирует результаты для измерения и аудита. Он включает правила безопасности, чтобы избежать потраченных усилий, и гарантирует, что слияния выполняются без изменения бизнес-логики или риска конфликтов при чтении и записи. Основные меры безопасности в производственной среде необходимы, чтобы ограничить параллелизм и избежать перегрузки кластеров, а также обеспечить выполнение в определенных окнах вне пиковых нагрузок. Small File Doctor уже оптимизировал множество таблиц, значительно сократив количество мелких файлов и устранив сбои на этапе чтения, с ожидаемой годовой экономией от 90 000 до 100 000 долларов.

В перспективе Binance планирует более глубоко интегрировать Small File Doctor в производственные процессы, обеспечивая улучшение производительности в реальном времени. Такая интеграция обеспечит, что проверка состояния файлов станет встроенным этапом производственного процесса, повышая эффективность и надежность. На масштабе Binance мелкие файлы — это не просто уборка, а ограничение инфраструктуры, требующее системного решения, такого как Small File Doctor, для поддержания надежных критически важных каналов передачи данных по мере роста платформы.