Получение номера операции
Содержание раздела
Доступно получение номера операции записи:
- указанной успешной в таблице или представлении;
- последней успешной в таблице или представлении;
- последней* завершенной (успешно или нет) в логической БД.
* Для логической БД возвращается максимальный номер завершенной операции, перед которой нет незавершенных операций с меньшим номером. При наличии открытой дельты максимальный номер выбирается среди операций, выполненных до дельты.
Получение номеров операций доступно для сущностей логической БД:
- логических таблиц;
- материализованных представлений;
- простых логических представлений на базе логических таблиц и материализованных представлений (возвращается информация по сущности-источнику).
URL
- GET
{baseUrl}/api/v1/datamarts/{datamart}/entities/{entity}/cn/{ts}
-
Получение номера для успешно завершенной операции, имеющей метку времени
ts
, в таблице или представленииdatamart.entity
. - GET
{baseUrl}/api/v1/datamarts/{datamart}/entities/{entity}/cn
-
Получение номера для последней успешно завершенной операции в таблице или представлении
datamart.entity
. - GET
{baseUrl}/api/v1/datamarts/{datamart}/cn
-
Получение номера для последней завершенной (успешно или нет) операции в логической БД
datamart
.
Где:
baseUrl
— адрес ноды Prostore, состоящий из IP-адреса или доменного имени и номера порта;datamart
— имя логической базы данных, в которой была выполнена операция записи;entity
— имя таблицы или представления, для которого запрашивается информация об операции. Можно указать логическую таблицу любого типа, материализованное представление или простое логическое представление, построенное на подзапросе к логической таблице или материализованному представлению;ts
— метка времени операции в UTC- или Unix-формате.
Заголовки запроса
Заголовок x-request-id
Опциональный заголовок задает уникальный идентификатор HTTP-запроса. Если не указан, система генерирует UUID-значение и возвращает его в качестве идентификатора в ответе.
Тело запроса
Тело запроса отсутствует.
Примеры запросов и ответов
Запрос по указанной метке времени в логической таблице
Запрос по UTC-метке времени 2024-12-13 06:51:25.055
:
curl -X 'GET' \
'http://localhost:9090/api/v1/datamarts/marketing/entities/sales/cn/2024-12-13%2006%3A51%3A25.055' \
-H 'x-request-id: c214035f-cac5-4a77-a988-4750c3ad3c27'
Запрос по Unix-метке времени 1734072685055000
, соответствующей 2024-12-13 06:51:25.055
:
curl -X 'GET' \
'http://localhost:9090/api/v1/datamarts/marketing/entities/sales/cn/1734072685055000' \
-H 'x-request-id: 6accb5a2-33b8-4fb8-be74-5be45189b6a5'
Ответ:
{
"cn": 52
}
Запрос последней операции в логической таблице
Запрос:
curl -X 'GET' \
'http://localhost:9090/api/v1/datamarts/marketing/entities/sales/cn' \
-H 'x-request-id: 296af6fc-9a4a-44cc-b664-bc5ae0a884a8'
Ответ:
{
"cn": 52
}
Запрос последней операции в логической БД
Запрос:
curl -X 'GET' \
'http://localhost:9090/api/v1/datamarts/marketing/cn' \
-H 'x-request-id: cbdee094-6d25-4129-af3e-475ffaaac786'
Ответ:
{
"cn": 58
}
Запрос с неуспешным ответом
Запрос:
curl -X 'GET' \
'http://localhost:9090/api/v1/datamarts/marketing4/cn' \
-H 'x-request-id: 13ebe560-9ba2-4748-a852-17d8af69fd2f'
Ответ:
{
"exceptionMessage": "Database marketing4 does not exist"
}