vault backup: 2024-07-02 18:12:53

This commit is contained in:
Struchkov Mark 2024-07-02 18:12:53 +03:00
parent a119b71a3f
commit 5773fb9116
No known key found for this signature in database
GPG Key ID: A3F0AC3F0FA52F3C
5 changed files with 251 additions and 28 deletions

View File

@ -24,24 +24,24 @@
"unresolvedLinks": false, "unresolvedLinks": false,
"recentFilesStore": [ "recentFilesStore": [
{ {
"filepath": "_inbox/Serializable.md", "filepath": "_inbox/Read committed.md",
"timestamp": 1719932863763 "timestamp": 1719933168388
},
{
"filepath": "_inbox/drawing/ExcaliBrain Snapshot - Read committed.excalidraw.md",
"timestamp": 1719933165947
}, },
{ {
"filepath": "excalibrain.md", "filepath": "excalibrain.md",
"timestamp": 1719932863485 "timestamp": 1719933156894
}, },
{ {
"filepath": "Home.md", "filepath": "_inbox/Read uncommitted.md",
"timestamp": 1719932797895 "timestamp": 1719933146235
}, },
{ {
"filepath": "_inbox/Repeatable read.md", "filepath": "_inbox/Repeatable read.md",
"timestamp": 1719932751701 "timestamp": 1719933108286
},
{
"filepath": "_inbox/Read committed.md",
"timestamp": 1719932676552
} }
], ],
"bookmarkedFileStore": [], "bookmarkedFileStore": [],

View File

@ -1,28 +1,36 @@
{ {
"recentFiles": [ "recentFiles": [
{ {
"basename": "Serializable", "basename": "Read committed",
"path": "_inbox/Serializable.md" "path": "_inbox/Read committed.md"
},
{
"basename": "ExcaliBrain Snapshot - Read committed.excalidraw",
"path": "_inbox/drawing/ExcaliBrain Snapshot - Read committed.excalidraw.md"
}, },
{ {
"basename": "excalibrain", "basename": "excalibrain",
"path": "excalibrain.md" "path": "excalibrain.md"
}, },
{ {
"basename": "Home", "basename": "Read uncommitted",
"path": "Home.md" "path": "_inbox/Read uncommitted.md"
}, },
{ {
"basename": "Repeatable read", "basename": "Repeatable read",
"path": "_inbox/Repeatable read.md" "path": "_inbox/Repeatable read.md"
}, },
{ {
"basename": "Read committed", "basename": "Фантомное чтение",
"path": "_inbox/Read committed.md" "path": "_inbox/Фантомное чтение.md"
}, },
{ {
"basename": "Read uncommitted", "basename": "Serializable",
"path": "_inbox/Read uncommitted.md" "path": "_inbox/Serializable.md"
},
{
"basename": "Home",
"path": "Home.md"
}, },
{ {
"basename": "Deadlock", "basename": "Deadlock",
@ -191,14 +199,6 @@
{ {
"basename": "Кэширование", "basename": "Кэширование",
"path": "_inbox/Кэширование.md" "path": "_inbox/Кэширование.md"
},
{
"basename": "Старт с холодным кэшом",
"path": "_inbox/Старт с холодным кэшом.md"
},
{
"basename": "Кэширование в приложении",
"path": "_inbox/Кэширование в приложении.md"
} }
], ],
"omittedPaths": [], "omittedPaths": [],

View File

@ -33,4 +33,6 @@ next: "[[Serializable]]"
- В [PostgreSQL](00%20PostgreSQL.md) на уровне `REPEATABLE_READ` также предотвращены фантомные чтения. - В [PostgreSQL](00%20PostgreSQL.md) на уровне `REPEATABLE_READ` также предотвращены фантомные чтения.
**Проблемы:** **Проблемы:**
- [Фантомное чтение](Фантомное%20чтение.md) - [Фантомное чтение](Фантомное%20чтение.md)
**Когда использовать:** Вставка новых записей в параллельных транзакциях не влияет на текущую транзакцию.

View File

@ -14,4 +14,6 @@ prev: "[[Repeatable read]]"
**Serializable (упорядочиваемость).** Самый высокий уровень изолированности; транзакции полностью изолируются друг от друга, каждая выполняется так, как будто параллельных транзакций не существует. Только на этом уровне параллельные транзакции не подвержены эффекту «фантомного чтения». ^fdb385 **Serializable (упорядочиваемость).** Самый высокий уровень изолированности; транзакции полностью изолируются друг от друга, каждая выполняется так, как будто параллельных транзакций не существует. Только на этом уровне параллельные транзакции не подвержены эффекту «фантомного чтения». ^fdb385
**Минусы:** **Минусы:**
- Самый медленный уровень изоляции - Самый медленный уровень изоляции
**Когда использовать:** Если транзакция изменяет данные в БД и при этом проверяет, чтобы эти данные не противоречили уже существующим данным.

View File

@ -0,0 +1,219 @@
---
excalidraw-plugin: parsed
tags: [excalidraw]
---
==⚠ Switch to EXCALIDRAW VIEW in the MORE OPTIONS menu of this document. ⚠== You can decompress Drawing data with the command palette: 'Decompress current Excalidraw file'. For more info check in plugin settings under 'Saving'
# Excalidraw Data
## Text Elements
Read committed ^gMFoEZNA
2 ^UY2pmjfJ
1 ^kMdABBsE
1 ^fQRa1wO7
Read uncommitted ^78uvOI4H
2 ^cR9OEwP9
1 ^lKf8iYqv
повторяющееся чтение ^63wmHcmr
2 ^ypBAGXn4
1 ^hsC3kyII
1 ^RJlokz47
Уровни изоляций транзакций БД ^uvVVJ517
1 ^SCm5ZPVe
1 ^5MPoABp8
4 ^jC7D3L02
Serializable ^oT4fzmWA
2 ^CdSIv01s
1 ^2vdMaZBb
база данных ^nC3OBhyK
39 ^162WDYql
1 ^AUPr08Kv
[[_inbox/Read committed.md]] ^Mhvj51kw
[[_inbox/Read uncommitted.md]] ^6tmS0dOt
[[_inbox/Repeatable read.md]] ^NZhFUbj8
[[knowledge/dev/database/Уровни изоляций транзакций БД.md]] ^ZSFrNIwk
[[_inbox/Serializable.md]] ^Fnt5KORI
[[wiki/zero/00 Базы Данных.md]] ^ZUCa19vp
%%
## Drawing
```compressed-json
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=
```
%%