Sobes.tech
Middle

Транзакциялардын изоляциясынын кандай түрлөрү бар?

sobes.tech AI

AIден жооп

Транзакциялардын изоляциясы бир транзакциянын башка параллел жүргүзүлүп жаткан транзакциялардын аралыгындагы өзгөртүүлөрдү канчалык көрө алат дегенди аныктайт.

SQL стандарты төрт изоляция деңгээлин аныктайт:

  1. Read Uncommitted (Жазылбаган маалыматтарды окуу): Эң төмөнкү деңгээл. Транзакция башка транзакциялардын жазылбаган өзгөртүүлөрүн окуй алат ("кырсык" окуу).
  2. Read Committed (Жазылган маалыматтарды окуу): Транзакция башка транзакциялар тарабынан жазылган гана маалыматтарды окуй алат. "Кырсык" окуудан качат.
  3. Repeatable Read (Кайталаган окуу): Транзакция убакыт ичинде окуган маалыматтар өзгөрбөйт деп кепилдик берет. "Кырсык" жана "кайталгыс" окуудан качат. Мүмкүн "фантомдор" пайда болушу мүмкүн.
  4. Serializable (Сериалдаштырылган): Жогорку деңгээл. Бардык параллел транзакциялар биринин артынан бири сыяктуу аткарылат деп кепилдик берет. Бардык керексиз көрүнүштөрдөн качат: "кырсык" окуу, "кайталгыс" окуу жана "фантомдор".

Параллел ишке ашырылууда керексиз көрүнүштөр:

  • Dirty Read (Кырсык менен окуу): A транзакциясы B транзакциясы менен өзгөртүлгөн, бирок дагы эле бекитилбеген маалыматтарды окуйт. Эгер B өзгөртүүлөрдү кайтарса, A туура эмес маалыматтар менен иштейт.
  • Non-repeatable Read (Кайталанбаган окуу): A бир эле маалыматты эки жолу окуйт, бирок B ортосунда өзгөртүүлөрдү жасайт. Натыйжада, A ар түрдүү маанилерди алат.
  • Phantom Read (Фантом окуу): A транзакциясы суроо-талапты аткарат, ал кайтарган саптардын топтомун түзөт. B жаңы саптарды кошот же алып салат, алар Aнын суроо-талаптарына жооп берет. Кайталанган суроо-талапта, A башка топтомду алат.

Изоляция деңгээли боюнча керексиз көрүнүштөрдүн кестеси:

Изоляция деңгээли Кырсык менен окуу Кайталанбаган окуу Фантомдор
Read Uncommitted Ооба Ооба Ооба
Read Committed Жок Ооба Ооба
Repeatable Read Жок Жок Ооба
Serializable Жок Жок Жок

Изоляция деңгээлинин тандалышы иштөө ылдамдыг жана колдонмонун тактыгын таасирлейт. Жогорку деңгээл көбүрөөк чыгымдарды талап кылат.