VK Object Storage в архитектуре Data Lakehouse

VK Object Storage — экономичное объектное хранилище неструктурированных данных от VK Cloud. Является ключевым компонентом DLH, так как обеспечивает гибкость, масштабируемость и экономическую эффективность хранения данных.

Компонент выполняет следующие функции:

  • Распределенное хранение объектов различных форматов.

  • Управление метаданными хранилища на уровне сущностей:

    • Projects — проекты, к которым относятся файлы S3.
    • Buckets — подключенные к S3 локальные диски внутри проектов.
    • Objects — ключевые параметры обработки объектов (файлов) S3.
  • Определение правил загрузки, хранения, обработки и скачивания файлов.

  • Управление ролевой моделью доступа к данным с поддержкой Access Control List (ACL) – кто может получать доступ к файлу и какие именно операции разрешено выполнять.

  • Поддержка стандартного S3 API Amazon для доступа к данным.

  • Организация входящих и исходящих потоков передачи контента в хранилище.

  • Организация отказоустойчивой загрузки больших файлов в несколько потоков (multipart), в том числе:

    • политика повторных попыток (retry);
    • логика разделения файлов.
  • Контроль успешности загрузки и отсутствия битых файлов в S3.

  • Быстрый поиск объектов в S3.

  • Предоставление данных S3 по запросам внешних сервисов.