Метод TransactGetItems
Статья создана
Обновлена 12 июля 2022 г.
Синхронная операция, которая атомарно извлекает несколько элементов из таблиц.
Записи возвращаются постранично, за один раз можно вернуть до 25 объектов, каждый из которых содержит Get
-структуру. За один раз можно извлечь до 4 Мб данных.
Метод может быть целиком отклонен, причины отклонения описаны в ошибке TransactionCanceledException.
Запрос
Запрос содержит данные в формате JSON.
{
"ReturnConsumedCapacity": "string",
"TransactItems": [
{
"Get": {
"ExpressionAttributeNames": {
"string" : "string"
},
"Key": {
"string" : {
"B": blob,
"BOOL": boolean,
"BS": [ blob ],
"L": [
"AttributeValue"
],
"M": {
"string" : "AttributeValue"
},
"N": "string",
"NS": [ "string" ],
"NULL": boolean,
"S": "string",
"SS": [ "string" ]
}
},
"ProjectionExpression": "string",
"TableName": "string"
}
}
]
}
Параметры
Параметр | Описание |
---|---|
TransactItems |
Упорядоченный массив из объектов типа TransactGetItem , каждый из которых содержит Get -структуру.Тип: массив объектов TransactGetItem Элементы массива: 1-25 элементов. Обязательно: Да |
ReturnConsumedCapacity |
Нужно ли возвращать информацию о потребляемой мощности.
Тип: Строка Возможные значения: TOTAL | NONE Обязательно: Нет |
Ответ
В случае успеха вернется HTTP с кодом 200.
Запрос возвращает данные в формате JSON.
{
"ConsumedCapacity": [
{
"CapacityUnits": number,
"GlobalSecondaryIndexes": {
"string" : {
"CapacityUnits": number,
"ReadCapacityUnits": number,
"WriteCapacityUnits": number
}
},
"LocalSecondaryIndexes": {
"string" : {
"CapacityUnits": number,
"ReadCapacityUnits": number,
"WriteCapacityUnits": number
}
},
"ReadCapacityUnits": number,
"Table": {
"CapacityUnits": number,
"ReadCapacityUnits": number,
"WriteCapacityUnits": number
},
"TableName": "string",
"WriteCapacityUnits": number
}
],
"Responses": [
{
"Item": {
"string" : {
"B": blob,
"BOOL": boolean,
"BS": [ blob ],
"L": [
"AttributeValue"
],
"M": {
"string" : "AttributeValue"
},
"N": "string",
"NS": [ "string" ],
"NULL": boolean,
"S": "string",
"SS": [ "string" ]
}
}
}
]
}
Параметры
Параметр | Описание |
---|---|
ConsumedCapacity |
Единицы мощности, потребленные операцией удаления. Возвращается только в том случае, если в запросе был указан параметр ReturnConsumedCapacity со значением TOTAL .Тип: объект типа ConsumedCapacity |
Responses |
Упорядоченный массив, содержащий объекты типа ItemResponse .Каждый объект содержит ассоциативный массив пар ключ/значения, которые являются атрибутами запрошенного элемента. Если элемент не может быть получен, то соответствующий объект имеет значение Null . Если элемент не имеет атрибутов, то соответствующий объект будет пуст.Тип: Массив объектов ItemResponse Размер массива: 1 - 25 элементов. |
Ошибки
Параметр | Описание |
---|---|
InternalServerError |
Произошла внутренняя ошибка на стороне сервера. Код состояния HTTP: 500 |
ProvisionedThroughputExceededException |
Вы слишком часто отправляете запросы. Попробуйте увеличить интервалы между запросами. Если таких запросов будет не слишком много, Managed Service for YDB постарается обработать их все. Код состояния HTTP: 400 |
RequestLimitExceeded |
Пропускная способность превышает квоту. Код состояния HTTP: 400 |
ResourceNotFoundException |
Указанная таблица не существует. Код состояния HTTP: 400 |
TransactionCanceledException |
Весь запрос целиком был отменен.Это может произойти в следующих случаях:
Код состояния HTTP: 400 |
Также могут возникать Общие ошибки, одинаковые для всех методов.