Допустим, я пытаюсь преобразовать хранилище SQL в хранилище без SQL (например, с SQL Server на Cosmos DB).У меня есть три связанных таблицы A
, B
, C
, которые я хочу преобразовать в коллекции документов X
, Y
, Z
.Но я не имею возможности обновлять все документы транзакционно, как в SQL.То, как я проектирую обновление документов в моем рабочем процессе, является последовательным обновлением, таким как
1. Update X
2. Update Y
3. Update Z
, таким, что любой из следующих сценариев
1 -> FAIL
2 -> FAIL
3 -> FAIL
1 -> SUCCEED
2 -> FAIL
3 -> FAIL
1 -> SUCCEED
2 -> SUCCEED
3 -> FAIL
1 -> SUCCEED
2 -> SUCCEED
3 -> SUCCEED
может оставить данные в «несовместимом состоянии», но я использую шаблон хранилища для запроса данных с помощью запроса, подобного
Get data from Z
Get matching data from Y
Get matching data from X
, чтобы все сценарии обновленияпокрыты.
Есть ли название для этого паттерна [или я придумал что-то новое :)]?
Это паттерн или антишаблон?
Есть ли лучшийспособ