ぱと隊長日誌

ブログ運用もエンジニアとしての生き方も模索中

アーキテクチャ

well-formedなトランザクションとlegalなスケジュール

はじめに Transaction management におけるwell-formedなトランザクションとlegalなスケジュールについて説明します。主に以下の資料を参考にします。 http://www.dis.uniroma1.it/~rosati/gd/1-concurrency.pdf P60付近を参照ください。 ここでは exclusive…

PostgreSQLマニュアルのトランザクション分離レベル表を参照する際の注意点

はじめに PostgreSQLマニュアル「13.2. トランザクションの分離」にはトランザクション分離レベルの表が記載されています。この表の記載は9.4以前と9.5以降で変わっており、PostgreSQLの挙動が変わったと勘違いしてしまうかもしれません。ですが、マニュアル…

SerializabilityとMonotonicityとRigorousnessの関係

概要 motononeなスケジュールのクラスでは、スケジュールから任意のトランザクションが消失してもスケジュールのクラスが変わりません。CSRはmonotoneです。CSRだけではabortを扱うのが難しいため、ロックによる手法を組み合わせます。SS2PLによって作られる…

PostgreSQLマニュアルの「リピータブルリード分離レベル」における「制御レコード」とはなにか?

PostgreSQL(9.1以降)マニュアルの「13.2.2. リピータブルリード分離レベル」に以下の記述があります。 リピータブルリードモードでは、全てのトランザクションがデータベースの一貫した不変のビューの状態を参照することが保証されます。 しかし、このビュ…

NTTDATATC2017「本当は恐ろしい分散システムの話」聴講メモ

前書き NTTデータ テクノロジーカンファレンス 2017 (NTTデータ テクノロジーカンファレンス2017 デジタルトランスフォーメーション成功のカギ~ Hadoop, Spark, ブロックチェーン | NTTデータのHadoopソリューション) 【テクノロジー】本当は恐ろしい分散シ…

急がば回れ、選ぶなら近道 TX記事 読解メモ

目次 目次 はじめに 前提知識 トランザクションの基礎知識 数学記号 iff Serializabilityの選択 predicate install 参考資料 本エントリでの表記 Welcome back to the TRANSACTION! A Critique of ANSI SQL Isolation Levels再読 A critique of ansi sql iso…

DBTS2017「次世代DB / 分散OLTP(MVCC系)を可能な限り全力で解説」聴講メモ

前書き db tech showcase Tokyo 2017 (db tech showcase Tokyo 2017 | db tech showcase) C31:次世代分散OLTP 次世代DB / 分散OLTP(MVCC系)を可能な限り全力で解説 の聴講メモです。スピーカーはノーチラステクノロジーズの神林さん(@okachimachiorz1)です…

DBTS2017 これからの”本命技術”はこう見つける! まとめ

前書き db tech showcase Tokyo 2017 (db tech showcase Tokyo 2017 | db tech showcase) A12 : KEYNOTE 2 これからの”本命技術”はこう見つける!~ポスト・リレーショナルデータベース時代を読み解くコツ~ のまとめ記事です。本セッションはウルシステムズ…

PostgreSQLの実行計画を読み解くための参考資料集

はじめに PostgreSQLは商用DBに比べて書籍が少なく、まとまった情報が入手しにくいです。また、有志の方がPostgreSQLに関する資料を公開していますが、散在しており、せっかくの有益な情報にアクセスしにくい状況にあります。そこで、本エントリではPostgreS…

PostgreSQL実行計画のハッシュノードに出力されるバケット数とバッチ数の解説

目的 PostgreSQLの実行計画のハッシュノード(Hash)に出力されるバケット数(Buckets)とバッチ数(Batches)について解説を行います。また、バッチ数とパフォーマンスの関係についても触れます。このテーマについて Pat Shaughnessy さんが英語の解説記事を公開…

テーブル結合における外部表・内部表の選択

目的 テーブル結合の外部表(駆動表)はデータセットの小さい方を選ぶ可能性が高いです。データセットの小さい方を選ぶことでI/Oコストの観点から有利になることを示します。また、オプティマイザの外部表・内部表選択基準の例を挙げます。 疑問 表Rと表Sの…

機能要求・ビジネスルール・非機能要求の定義

はじめに 書籍「ソフトウェア要求のためのビジュアルモデル(以下、本エントリ内では「本書」とする)」の「第1章 RML概論」で機能要求・ビジネスルール・非機能要求について定義している。ただ、その定義についてわかりづらい部分があったので、改めてまと…