Toolverse
Wszystkie skille

mvcc

autor: tursodatabase

Kontrola współbieżności wielu wersji dla izolacji snapshot'ów w bazach danych

Instalacja

Wybierz klienta i sklonuj repozytorium do odpowiedniego katalogu skilli.

Instalacja

Szybkie info

Kategoria
Backend
Wyświetlenia
1

O skillu

MVCC to eksperymentalna funkcja umożliwiająca wielowersyjną kontrolę współbieżności w bazie danych. Zamiast blokowania między czytnikami a piszącymi, każda transakcja widzi spójny snapshot danych z momentu jej rozpoczęcia. Wersjonowanie odbywa się na poziomie wierszy, a nie stron, co zmniejsza konflikt dostępu. Funkcja zapisuje zmiany w logicznym pliku .db-log zamiast .db-wal. Pamiętaj: MVCC jest wciąż w fazie eksperymentalnej i nie powinna być używana w środowisku produkcyjnym.

Jak używać

  1. Włącz MVCC dla wybranej bazy danych, uruchamiając polecenie SQL PRAGMA journal_mode = 'mvcc';. Ustawienie jest konfigurowane w czasie wykonywania i dotyczy konkretnej bazy, nie całej aplikacji.

  2. Zweryfikuj, że MVCC jest aktywny, obserwując, że nowe pliki logów pojawią się jako .db-log zamiast .db-wal.

  3. Każda transakcja automatycznie otrzyma spójny snapshot danych z momentu jej rozpoczęcia. Czytelnicy i piszący nie będą się blokować nawzajem.

  4. Opcjonalnie dostosuj próg checkpointingu za pomocą PRAGMA mvcc_checkpoint_threshold = <liczba_stron>;, aby kontrolować, jak często wersje wierszy są zapisywane z powrotem do B-tree. Domyślna wartość jest ustalona wewnętrznie.

  5. Pamiętaj, że MVCC jest funkcją eksperymentalną — używaj jej tylko do testowania i nauki, nie w kodzie produkcyjnym. Jeśli debugujesz błędy, ignoruj MVCC chyba że problem jest bezpośrednio z nim związany.

Podobne skille