В чем разница между менеджером транзакций и менеджером баз данных? - PullRequest
3 голосов
/ 12 ноября 2010

Читая оба документа, кажется, что они оба имеют схожие обязанности по управлению совместным использованием и целостностью ресурсов, а также по приоритетам выполнения, но я не могу найти, как они отличаются?Может кто-то прояснить это недоразумение.Спасибо

Ответы [ 2 ]

4 голосов
/ 12 ноября 2010

В дополнение к тому, что уже сказал Одед:

Менеджер транзакций управляет транзакциями - и транзакция может включать / обращаться к другим ресурсам, а не только к базам данных. В некоторых случаях я уже приводил пример принтера.

Менеджер баз данных управляет данными - и не обязательно транзакционным способом. Существует очень популярная система SQL, чья версия 1.0 не имела фиксации / отката, поэтому не обеспечивала транзакционную функциональность и, таким образом, не обеспечивала значительную поддержку целостности данных.

Однако это различие довольно тупое, потому что:

  • большое количество реальных транзакций не требует никаких других извлекаемых ресурсов, кроме базы данных,
  • Для обеспечения согласованности данных СУБД не может избежать необходимости предлагать большинство, если не всю функциональность транзакций.
2 голосов
/ 12 ноября 2010

Менеджер транзакций управляет транзакциями - они могут быть распределены (т. Е. С участием нескольких баз данных / систем).

Менеджер баз данных работает с одной базой данных - управляет ею на диске, использует память, анализирует запросы и т. Д...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...