タグ

2022年7月31日のブックマーク (4件)

  • MySQL/Postgres におけるトランザクション分離レベルと発生するアノマリーを整理する

    読者対象 ANSI 定義の古典的なトランザクション分離レベルとアノマリーは概ね理解している MySQL/Postgres では理論的な部分がどうなっているのかを知りたい 理論面の前提知識 2022-08-19 追記: 社内勉強会向けのスライドを作成しました。先にスライドを見てから,引用文献およびこの記事を読むと理解が深まると思います。 まず ANSI 定義の古典的な定義を聞いたことが無い方は,以下のリンクを参照されたい。 ANSI 定義に対応する解説はこれらのサイト以外にもたくさんあるため,自分にとって読みやすいと感じる情報をあたってほしい。(既に熟知されている方は十分) 次点で読んでいただきたいのが, @kumagi さんの以下の記事。古典的には 4 つの分離レベルと 3 つのアノマリーだけで説明されていたものの,不十分であることが学術的に指摘され,解像度を上げようとする流れが後になって

    MySQL/Postgres におけるトランザクション分離レベルと発生するアノマリーを整理する
  • なぜベイズ推定にMCMCなのか? - プログラムを自動生成したい

    MCMC (マルコフ連鎖モンテカルロ法) なにも分からん。ベイズ推定を勉強しているといつだって「計算が困難なので MCMC で事後分布を近似しよう!」という話に遭遇する。しかしながら MCMC が何を計算するものなのかよく分からないし、なにが嬉しいのかも分からない....。 そんなあなたに向けて、記事ではベイズ推定と MCMC について解説します。以下の質問に答えられるようになるのが目標です。 MCMC は何を入力として何を出力するものなのか? なぜ MCMC はベイズ推論と相性がよいのか? まともにやると困難な計算を、なぜ MCMC では回避できるのか? なお、記事では以下の知識があることを想定します。 確率の基(同時分布、条件付き確率 など) ベイズ推定の概要(事前分布、尤度、事後分布 など) 目次: ベイジアンネットワークと同時分布 ベイズ推定と事後分布の計算 MCMC は何を

    なぜベイズ推定にMCMCなのか? - プログラムを自動生成したい
  • 電子メールを基礎の基礎から学んでいこう

    メールシステムにはサーバとクライアントがあるが、単純なサーバ/クライアントモ デルにはなっていない。メールシステムには3つの機能があり、その組み合わせによ ってメールが届けられる。ここではその仕組みを見ていこう。 メールシステムの全体像 メールシステムを図1のように俯瞰して捉えると4つの要素で構成されていることがわかる。相手に届ける情報である「メッセージ」、メッセージを作成して送信したり、メールサーバに受信したメールを表示したりするOutlook Express(以下OE )などに代表される「メーラ(メールクライアント)」、メールの配送を受け付け宛先に届けたり、受信したメールをユーザーのメールボックスに入れる「メールサーバ」、そしてメールサーバや宛先メールサーバのIPアドレスの問い合わせ先である「DNSサーバ」である。 この図からもわかるように電子メールを届けるというのは、宛先のメールサー

    電子メールを基礎の基礎から学んでいこう
  • 「バグを意図的にバグのまま残す」という選択肢がある

    はじめに gcc v12.1において、C++の正規表現ライブラリstd::regexに、正規表現のバリデーションを改善するパッチ(以下"改善パッチ"と表記)が取り込まれました。改善パッチによって、これまではバリデーションにひっかからなかった不正な正規表現文字列が"正しく"不正なものと認識されて例外が発生するようになりました。 これだけ聞けばいいことだけのように思えるかもしれませんが、実はそうでもなかったりします。経験豊富なかたであれば見た瞬間ゾッとしたかもしれません。記事では、この一見問題なさそうな改善パッチによって発生しうる問題、および、その具体的例について紹介するとともに、この手のパッチを当てるかどうかは難しい判断になるという知見を共有します。 結論 改善パッチによって発生する問題 発生条件 gcc v12.1以降、あるいは改善パッチをバックポートされた任意のバージョンを使ってC++

    「バグを意図的にバグのまま残す」という選択肢がある