Yandex Cloud
Поиск
Связаться с намиПодключиться
  • Документация
  • Блог
  • Все сервисы
  • Статус работы сервисов
    • Популярные
    • Инфраструктура и сеть
    • Платформа данных
    • Контейнеры
    • Инструменты разработчика
    • Бессерверные вычисления
    • Безопасность
    • Мониторинг и управление ресурсами
    • Машинное обучение
    • Бизнес-инструменты
  • Все решения
    • По отраслям
    • По типу задач
    • Экономика платформы
    • Безопасность
    • Техническая поддержка
    • Каталог партнёров
    • Обучение и сертификация
    • Облако для стартапов
    • Облако для крупного бизнеса
    • Центр технологий для общества
    • Облако для интеграторов
    • Поддержка IT-бизнеса
    • Облако для фрилансеров
    • Обучение и сертификация
    • Блог
    • Документация
    • Контент-программа
    • Мероприятия и вебинары
    • Контакты, чаты и сообщества
    • Идеи
    • Истории успеха
    • Тарифы Yandex Cloud
    • Промоакции и free tier
    • Правила тарификации
  • Документация
  • Блог
Проект Яндекса
© 2025 ООО «Яндекс.Облако»
Yandex Data Streams
  • Управление доступом
  • Правила тарификации
    • Обзор
    • Все методы
      • CreateStream
      • DecreaseStreamRetentionPeriod
      • DeleteStream
      • DescribeStream
      • IncreaseStreamRetentionPeriod
      • GetRecords
      • GetShardIterator
      • ListStreams
      • PutRecord
      • PutRecords
      • UpdateShardCount
    • Общие ошибки
    • Примеры
  • Вопросы и ответы

В этой статье:

  • Запрос
  • Параметры запроса
  • Ответ
  • Параметры ответа
  • Ошибки
  1. HTTP API, совместимый с Amazon Kinesis Data Streams
  2. Методы
  3. PutRecords

PutRecords

Статья создана
Yandex Cloud
Улучшена
Dmitry A.
Обновлена 19 января 2023 г.
  • Запрос
    • Параметры запроса
  • Ответ
    • Параметры ответа
  • Ошибки

Записывает несколько сообщений в поток данных за один вызов.

Метод позволяет достичь большей производительности по сравнению с PutRecord. В одном запросе можно передать до 500 сообщений. Каждое сообщение в запросе может иметь размер до 1 МБ. Весь запрос не может превышать 5 МБ, включая ключи сегментов.

В запросе указывается имя потока и массив сообщений Records. Для каждого элемента массива указывается ключ сегмента и объект, содержащий данные пользователя в кодировке Base64. Для явного определения хеша ключа сегмента, в который будут записаны сообщения, используется параметр ExplicitHashKey.

Возвращает массив элементов с данными о записанных сообщениях. Каждому элементу возвращаемого массива соответствует элемент отправленного. Элементы в обоих массивах упорядочены одинаково. Массив ответа включает данные как успешно, так и неуспешно обработанных сообщений. Сбой записи одного сообщения не останавливает обработку последующих.

PutRecords гарантирует, что сообщения будут записаны в том же порядке, в каком они находятся в отправленном массиве.

Данные об успешно обработанном сообщении содержат идентификатор сегмента (ShardId), в который было записано сообщение, и порядковый номер сообщения (SequenceNumber).

Данные о неуспешно обработанным сообщением содержат тип ошибки (ErrorCode) и сообщение об ошибке (ErrorMessage). Тип ошибки может иметь значение ProvisionedThroughputExceededException или InternalFailure. Для типа ProvisionedThroughputExceededException сообщение об ошибке содержит идентификатор учетной записи, имя потока и идентификатор сегмента сообщения, которое не удалось обработать.

ЗапросЗапрос

Запрос содержит данные в формате JSON.

{
  "Records": [{
    "Data": blob,
    "ExplicitHashKey": "string",
    "PartitionKey": "string"
  }],
  "StreamName": "string"
}

Параметры запросаПараметры запроса

Параметр Описание
Records Сообщения для записи.

Тип Массив объектов PutRecordsRequestEntry
Количество элементов: 1-500
Обязательный: Да
StreamName Имя потока данных.

Тип: Строка
Размер: 1-128 символов.
Возможные значения: [a-zA-Z][a-zA-Z0-9-]+*(?<!-)$
Обязательный: Да

ОтветОтвет

В случае успеха возвращаются HTTP-ответ с кодом 200 и данные в формате JSON.

{
  "EncryptionType": "string",
  "FailedRecordCount": number,
  "Records": [{
    "ErrorCode": "string",
    "ErrorMessage": "string",
    "SequenceNumber": "string",
    "ShardId": "string"
  }]
}

Параметры ответаПараметры ответа

Параметр Описание
EncryptionType Тип шифрования.

Тип: Строка
Возможные значения: NONE
Обязательный: Да
FailedRecordCount Количество необработанных сообщений.
Records Информация о результатах обработки сообщений.

Тип Массив объектов PutRecordsRequestEntry
Количество элементов: 1-500
Обязательный: Да

ОшибкиОшибки

Параметр Описание Код HTTP
InvalidArgumentException Недопустимый аргумент. Дополнительные сведения смотрите в сообщении об ошибке. 400
ResourceNotFoundException Запрошенный ресурс не найден. 400

Могут возникать ошибки, общие для всех методов.

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

Предыдущая
PutRecord
Следующая
UpdateShardCount
Проект Яндекса
© 2025 ООО «Яндекс.Облако»