SQL Server и ACID свойство базы данных - PullRequest
3 голосов
/ 09 июля 2011

Я новичок в базе данных и SQL Server.

Поэтому, когда у меня есть поиск информации о базе данных в Интернете, я обнаружил, что База данных считается хорошей, если она подчиняется или следует ACID (атомарность, согласованность, изоляция, долговечность) имущество.

Интересно, что Microsoft SQL Server (любая текущая или предыдущая версия) внутренне следует за свойством ACID, или если мы используем MS SQL Server в нашем приложении, то мы должны написать кодирование таким образом, чтобы наш Приложение соответствует свойству ACID.

Вкратце: Сохранение свойства ACID является задачей (или ответственностью) База данных Или его задача Application Programmer .

Спасибо ..

Ответы [ 5 ]

8 голосов
/ 09 июля 2011

ИМХО, это двукратное сопровождение. Администраторы БД (пишущие хранимые процедуры) и программисты должны применять свойства ACID. SQL Server поддерживает свои собственные свойства ACID внутри, и нам не нужно об этом беспокоиться.

Свойства ACID применяются в SQL Server.

Прочитайте это: Кислотные свойства SQL 2005

Но это не значит, что база данных будет обрабатывать все для вас.

Согласно Пиналу Дэйву ( blog.sqlauthority.com )

КИСЛОТА (сокращение от Atomicity Изоляция (долговечность) Понятие, что База данных Профессионалов вообще ищите при оценке базы данных и приложения архитектуры. Для надежной базы данных все эти четыре атрибута должны быть достигнута.

Атомность - это все или ничего предложение.

Консистенция гарантирует, что транзакция никогда не покидает вашу базу данных в недоделанном состоянии.

Изоляция поддерживает разделение транзакций друг от друга, пока они не завершено.

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

Над четырьмя правилами очень важны для любых разработчиков, имеющих дело с базы данных.

Это касается разработчиков, работающих с базами данных.

Но разработчики приложений должны также написать бизнес-логику, для которой применяются свойства ACID.

Пример Практическое использование свойств ACID поможет вам больше, я думаю

2 голосов
/ 30 ноября 2011

Почти во всех современных системах баз данных применяются свойства ACID. Прочитайте это: Свойства транзакции базы данных и ACID

1 голос
/ 20 декабря 2016

КИСЛОТА -> атомарность, согласованность, изоляция, долговечность

атомарность:
Транзакция является фундаментальной единицейобработка.Либо все его операции выполняются, либо ни одна из них не выполняется.Предположим, что система дает сбой после операции записи (A) (но до записи (B).)
База данных должна быть в состоянии восстановить старые значения A и B (или завершить всю транзакцию)

Сохранение согласованности:
Выполнение транзакции само по себе должно перевести базу данных из одного согласованного состояния в другое согласованное состояние.Сумма A и B должна быть неизменной при выполнении транзакции

Изоляция:
Транзакция не должна сообщать о своих эффектах другим транзакциям до тех пор, пока она не завершится.Если две транзакции выполняются одновременно, должно показаться, что одна из них завершила выполнение до начала другой.Если другая транзакция, выполняющаяся в то же время, читает (и / или записывает) счета A и B, она не должна иметь возможность считывать данные в несогласованном состоянии (после записи в A и перед записью в B)

Долговечность:
После фиксации транзакции изменения в базе данных не могут быть потеряны из-за будущего сбоя.После завершения транзакции у нас всегда будут новые значения A и B в базе данных

1 голос
/ 26 февраля 2015

Транзакция: -Транзакция - это пакет операторов SQL, который ведет себя как единое целое. Проще говоря, транзакция - это единица, в которой выполняется последовательность работ для завершения всей операции. Мы можем взять пример банковской транзакции, чтобы понять это.

Когда мы переводим деньги со счета «A» на счет «B», происходит транзакция. Каждая транзакция имеет четыре характеристики, которые называются свойствами ACID.

omic Атомность ◦ последовательность ◦ Изоляция Ura долговечность

Атомарность: - Каждая транзакция следует модели атомарности, что означает, что если транзакция запущена, она должна быть либо завершена, либо откатана. Чтобы понять это, давайте рассмотрим приведенный выше пример: если человек переводит сумму со счета «A» на счет «B», она должна быть зачислена на счет B после завершения транзакции. В случае, если произойдет сбой, после списания суммы со счета «А», изменение должно быть отменено.

Согласованность: - Согласованность говорит о том, что после завершения транзакции изменения, сделанные во время транзакции, должны быть согласованными. Давайте разберемся в этом на примере выше. Если счет «A» был списан с счета в 200 RS, то после завершения транзакции счет «B» должен быть зачислен на 200 RS. Это означает, что изменения должны быть последовательными.

Изоляция: - Изоляция гласит, что каждая транзакция должна быть изолирована друг от друга, не должно быть никаких помех между двумя транзакциями.

Долговечность: - Долговечность означает, что после завершения транзакции все изменения должны быть постоянными, это означает, что в случае любого сбоя системы изменения не должны быть потеряны.

1 голос
/ 07 октября 2013

КИСЛОТА:

[A] tomic: - Все успешно или неудачно как единое целое.

[C] onsistent: - После завершения операции все остается в безопасном состоянии.

[I] solated: - Никакая другая операция не может повлиять на меня.

[D] urable: - Когда операция завершена, изменения безопасны

...