Что может пойти не так, когда писания в список SharePoint?
-
16-10-2019 - |
Вопрос
У нас есть система, в которой мы собираемся программно добавлять элементы в список SharePoint.
Мы обеспокоены согласованностью информации.
Написание в списке операции по всей или ничего? Есть ли опасность, что только половина полей будет заполнена? Поможет ли операция в сфере транзакции?
Решение
Прежде чем задуматься об этом, мои первые мысли - не было бы никаких проблем, если бы вы не писали много (> 10 пунктов в секунду?) И делать много чтений (> 50 в секунду?) В этом случае я ' Я предполагаю, что вы редко получаете точное количество строк в списке, или вы не можете вернуть все текущие строки должным образом.
Я серьезно сомневаюсь, однако, что вы пропустите поля в объеме операции записи, если вы не продезинфицировали данные и не имели ошибок, и в этом случае я думаю, что вся операция записи строки будет пропущена, но я ' М не совсем наверняка.
Программное написание в список - это то, что я не часто даю, хотя (получил большую уверенность в том, как SP пишет SQL), если сценарий не выглядит так, будто он будет развиваться до чего -то, напоминающего систему OLTP.
Другие советы
Я предлагаю вам использовать SQL Profiler и посмотреть, что обновляется при изменении элемента в вашем списке. Если у вас есть несколько обновлений, то есть вероятность, что если что-то произойдет на полпути через процесс (например, сбой аппаратного обеспечения), ваши данные могут быть в непоследовательном состоянии.
Когда люди беспокоятся о обновлениях транзакционных баз данных, они говорят о способности системы пережить сбой, возникающий во время серии подключенных операций в базе данных. Если вам действительно нужен этот уровень целостности, мое ощущение кишечника заключается в том, что список SharePoint не является правильным подходом, и вы должны использовать SQL Server непосредственно для хранения данных. Вы все еще можете разоблачить эти данные в SharePoint через BCS.
Я согласен с тем, что проблемы, вероятно, редки, но когда вам нужна гарантия, вам необходимо использовать транзакции базы данных, чтобы позволить откачук в согласованное состояние, если возникнут проблемы, хотя и маловероятны.