Це так процедура в СУБД, яка допомагає нам керувати двома одночасними процесами, які виконуються без конфліктів між собою, ці конфлікти виникають у багатокористувацьких системах. Паралельність можна просто назвати виконанням кількох транзакцій одночасно. Це необхідно для підвищення ефективності використання часу.
Визначення паралелізму бази даних Паралельність бази даних – це унікальна характеристика, що дозволяє двом або більше користувачам отримувати інформацію з бази даних одночасно, не впливаючи на цілісність даних.
П’ять проблем паралельності, які можуть виникнути в базі даних:
- Проблема тимчасового оновлення.
- Проблема з неправильним підсумком.
- Проблема втрати оновлення.
- Неповторна проблема читання.
- Проблема фантомного читання.
Контроль паралельності гарантує, що одночасні транзакції в СУБД не заважають одна одній. Це також запобігає поширеним проблемам, таким як брудне читання, втрачені оновлення та неповторювані читання. Ключові функції включають уникнення тупикових блокувань, забезпечення серіалізації транзакцій і підтримку цілісності даних.
Загальний підхід до вирішення конфліктів одночасності:
- Перехопити DbUpdateConcurrencyException під час SaveChanges.
- Використовуйте DbUpdateConcurrencyException. …
- Оновіть вихідні значення маркера паралельності, щоб відобразити поточні значення в базі даних.
- Повторюйте процес, доки не виникнуть конфлікти.
Канонічним прикладом паралелізму є банківський рахунок. Клас BankAccount використовується в програмі, що належить величезному банку, який обслуговує багато-багато клієнтів, і щоб обслуговувати всіх клієнтів, банк додав кілька потоків, які виконують операції на рахунках банку.