2018-01-01から1ヶ月間の記事一覧

Transactional write の調査: MySQL 編

引き続き trx write の実装について調べていく。 今回は MySQL を見ている。 MySQL はめちゃくちゃたくさんログを書いているしどれが何をしているのかというのは初見ではわかりにくい。 実際にトランザクションに関係するログは、innodb_log_* 系で設定する …

Transactional write の調査: SQLite wal 編

今回は、SQLite の wal モードについて調べた。 こちらもドキュメントが豊富で、以下の2つが参考になる。 Write-Ahead Logging Database File Format wal モードは、redo log のみを使って永続化を行っている。 書き込みの時に以下のような動作を行う。 wal …

Transactional write の調査: SQLite rollback journal 編

プログラミングをしていると、電源断などの障害時でも不整合が起こらないようにデータを保存したいという要求がしばしばある。 通常こういう要求は DBMS やライブラリなどで担保することになるわけであるが、データ自体が DBMS に収まらない場合、 2 phase c…