Обкладинка нотатки:  Що означає ACID принцип у програмуванні?

Що означає ACID принцип у програмуванні?

ACID — це набір властивостей, що гарантують надійність роботи транзакцій у базах даних. Кожна транзакція є основним будівельним блоком роботи з даними, а ACID забезпечує, що вона виконується коректно та без втрати даних навіть у випадку збою.
acid.png
ACID — це акронім створений зі слів:
  • A - Atomicity (атомарність)
  • C - Consistency (послідовність)
  • I - Isolation (ізоляція)
  • D - Durability (довговічність)
Перший принцип, атомарність (більш детальніше про атомарні транзакції я вже писав раніше), гарантує, що транзакція виконується повністю або не виконується зовсім. Якщо сталася помилка, всі зміни, зроблені в ході цієї транзакції, скасовуються, повертаючи базу даних до попереднього стану. Наприклад, якщо ви здійснюєте платіж і трапляється збій у мережі, не буде такого, що гроші не списалися у відправника, та були зараховані отримувачу через збій,
Послідовність означає, що кожна транзакція переводить базу даних із одного правильного стану в інший. Навіть якщо є складні умови чи залежності між записами, результат виконання транзакції завжди буде коректним.
Ізоляція транзакцій гарантує, що вони не заважатимуть одна одній. Якщо дві транзакції виконуються одночасно, результат їх виконання буде таким же, як якщо б вони виконувалися послідовно. Це важливо, коли з базою виконується багато дій одночасно.
Останній принцип, довговічність, гарантує, що після завершення транзакції її результати зберігаються навіть у разі системного збою. Якщо дані були записані, вони не будуть втрачені при перезавантаженні системи.
Спрощена схема концепції ACID
Спрощена схема концепції ACID
ACID — це фундаментальний принцип, що забезпечує надійність, послідовність та безпеку роботи з транзакціями у базах даних, незалежно від зовнішніх умов.
Категорії: Програмування

🔗 Цитувати допис: " Що означає ACID принцип у програмуванні?"

Якщо ви хочете процитувати цей допис у своїй роботі, статті, блозі, використовуйте наведену нижче інформацію.

Розгорнути деталі


🙌 Підтримати блог @memecode

Ви можете поширити цей допис у соцмережах, чим допоможете платформі цейво розвиватись (* ^ ω ^)

📝 Більше публікацій:
Обкладинка нотатки: Що таке коміт (commit) у контексті програмування та SCM / Git?
Обкладинка нотатки: Що таке SCM (Source Control Management)?
Обкладинка нотатки: Яку ієрархію має DOM (Document Object Model)?
Обкладинка нотатки: Як працює модель штучного інтелекту?
Обкладинка нотатки: Що означає реляційний (в контексті реляційних баз даних)?
Обкладинка нотатки: Що таке RDBMS (relational database management system / реляційна система управління базами даних)?
Обкладинка нотатки: Що таке Сonvention over Сonfiguration (в контексті RoR і не тільки)?
Обкладинка нотатки: Округлення десяткових чисел: математичні правила, JavaScript і Ruby
Дисклеймер

Інформація на сайті tseivo.com є суб'єктивною та відображає особисті погляди та досвід авторів та авторок блогів.

Використовуйте цей ресурс як одне з декількох джерел інформації під час своїх досліджень та прийняття рішень. Завжди застосовуйте критичне мислення. Людина сама несе відповідальність за свої рішення та дії.