Yandex Cloud
Поиск
Связаться с намиПодключиться
  • Документация
  • Блог
  • Все сервисы
  • Статус работы сервисов
    • Популярные
    • Инфраструктура и сеть
    • Платформа данных
    • Контейнеры
    • Инструменты разработчика
    • Бессерверные вычисления
    • Безопасность
    • Мониторинг и управление ресурсами
    • Машинное обучение
    • Бизнес-инструменты
  • Все решения
    • По отраслям
    • По типу задач
    • Экономика платформы
    • Безопасность
    • Техническая поддержка
    • Каталог партнёров
    • Обучение и сертификация
    • Облако для стартапов
    • Облако для крупного бизнеса
    • Центр технологий для общества
    • Облако для интеграторов
    • Поддержка IT-бизнеса
    • Облако для фрилансеров
    • Обучение и сертификация
    • Блог
    • Документация
    • Контент-программа
    • Мероприятия и вебинары
    • Контакты, чаты и сообщества
    • Идеи
    • Истории успеха
    • Тарифы Yandex Cloud
    • Промоакции и free tier
    • Правила тарификации
  • Документация
  • Блог
Проект Яндекса
© 2025 ООО «Яндекс.Облако»
Yandex Data Transfer
  • Доступные трансферы
  • Начало работы
    • Взаимосвязь ресурсов сервиса
    • Типы и жизненные циклы трансферов
    • Объекты, переносимые трансфером
    • Периодическое инкрементальное копирование
    • Параллельное копирование
    • Трансформация данных
    • Сериализация
    • Работа Yandex Data Transfer с источниками и приемниками
    • Гарантии поставки
    • Операции над трансфером
    • Сеть в Yandex Data Transfer
    • Скорость копирования данных в Yandex Data Transfer
    • Захват изменения данных
    • Какие задачи решает сервис
    • Квоты и лимиты
  • Решение проблем
  • Управление доступом
  • Справочник Terraform
  • Метрики Monitoring
  • Аудитные логи Audit Trails
  • Публичные материалы
  • Обучающие курсы
  1. Концепции
  2. Гарантии поставки

Гарантии поставки данных

Статья создана
Yandex Cloud
Обновлена 25 декабря 2024 г.

Существует три стратегии поставки данных:

  • At-most-once — источник отправляет сообщение один раз. Если приемник не смог получить сообщение, оно будет безвозвратно потеряно. Скорость передачи данных увеличивается, но гарантия поставки отсутствует.
  • At-least-once — источник отправляет сообщение до тех пор, пока приемник не подтвердит получение. Такая стратегия обеспечивает полную гарантию поставки, но может приводить к появлению дублей на приемнике.
  • Exactly-once — источник отправляет сообщение до тех пор, пока приемник не подтвердит получение. Приемник обрабатывает сообщение при получении так, чтобы исключить возникновение дублей. Стратегия обеспечивает полную гарантию поставки без дублей, но требует больше вычислительных затрат и сложнее в реализации.

В сервисе Data Transfer для всех пар источник-приемник реализована стратегия поставки данных At-least-once. Приемник записывает в базу все полученные от источника сообщения и отправляет на источник подтверждение записи. Если источник по какой-то причине не получит от приемника подтверждение записи, сообщение будет отправлено повторно. В результате данные в базе приемника могут дублироваться.

При этом стратегия Exactly-once реализуется с точки зрения данных на уровне СУБД, если выполнены оба требования:

  • Поставляемая таблица содержит первичный ключ.

  • База данных приемника выполняет дедупликацию по первичному ключу:

    Приемник Дедупликация по первичному ключу
    Топик Apache Kafka® — собственный или в составе сервиса Managed Service for Apache Kafka®
    База данных ClickHouse® — собственная или в составе сервиса Managed Service for ClickHouse®
    Собственная база данных Elasticsearch
    База данных Greenplum® — собственная или в составе сервиса Managed Service for Greenplum®
    База данных MongoDB — собственная или в составе сервиса Managed Service for MongoDB
    База данных MySQL® — собственная или в составе сервиса Managed Service for MySQL®
    База данных PostgreSQL — собственная или в составе сервиса Managed Service for PostgreSQL
    База данных OpenSearch — собственная или в составе сервиса Managed Service for OpenSearch
    База данных Managed Service for YDB — в составе сервиса Managed Service for YDB
    Бакет Yandex Object Storage
    Поток данных Yandex Data Streams

Совет

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

ClickHouse® является зарегистрированным товарным знаком ClickHouse, Inc.

Была ли статья полезна?

Предыдущая
Работа Yandex Data Transfer с источниками и приемниками
Следующая
Операции над трансфером
Проект Яндекса
© 2025 ООО «Яндекс.Облако»