#azure #azure-table-storage
#azure #azure-table-storage
Вопрос:
У нас есть рабочий код, я думаю об оптимизации транзакций, каждый раз, когда мы вставляем что-то в таблицу, вызывается CreateIfNotExists() . Считается ли это транзакцией? У нас есть много таблиц, для каждого клиента несколько, чтобы иметь возможность удалить его одной транзакцией.
Было бы лучшим подходом для вставки данных, и если произойдет сбой с некоторым исключением «Таблица не существует», создайте ее и вставьте данные снова?
Ответ №1:
Каждый раз, когда мы вставляем что-то в таблицу, вызывается CreateIfNotExists() . Считается ли это транзакцией?
ДА. По сути CreateIfNotExists
, пытается создать таблицу, перехватывает и сравнивает исключение с Conflict (409)
кодом состояния. Поскольку это PUT
транзакция, с вас взимается плата за это.
Было бы лучшим подходом для вставки данных, и если произойдет сбой с некоторым исключением «Таблица не существует», создайте ее и вставьте данные снова?
Вы, конечно, можете это сделать. Другой подход (не уверен, сработает ли он для вас) заключается в проверке наличия этих таблиц только при запуске приложения (фактически, это то, что мы делаем в нашем приложении).