2017年8月5日のブックマーク (2件)

  • Optimistic Concurrency Controlについて - Qiita

    コミットまでロックを獲得せずに実行する方式の並行制御方式。 まず、更新のたびにバージョン番号が増加する複数のデータを読む際、読んだデータのバージョン番号とデータのペアで手元で保持しておけば、再度読んだ時にバージョン番号の変動を確認すれば値が書き換わっていないかを検出できる。 この図の中の緑色の領域の中で値が変わっていない事をバージョン番号から保証できる。 これは対象となるデータがいくつに増えても同様である。 こうすれば複数の値を論理的に一瞬で読めた事になる。これを一般にスナップショット読み出しと言う。 これに2PLを組み合わせる事で、トランザクション中で読み書きする値に一切ロックをかけずにコミット時のバージョン比較で代用できることになる。 Optimistic Concurrency Control(OCC)はこの考え方を拡張したもので、トランザクション実行中は 値を読み出す時はバージョン

    Optimistic Concurrency Controlについて - Qiita
    digo
    digo 2017/08/05
    Cloud DatastoreのTransactionコレかな。
  • BigQueryの12のコンポーネント - Qiita

    下記のメモ。図は下記URLのものを引用。 https://medium.com/google-cloud/the-12-components-of-google-bigquery-c2b49829a7c7 BigQueryの主要なコンポーネントについて顧客視点(利用者視点)からまとめている。 以下は顧客視点でのBigQueryの構成概要 Serverless Service Model BigQueryはサーバレスモデルで、VMやCPU/RAMのサイジングをする必要がない。BigQueryの計算能力はすごい伸縮性があり、数秒で数万コアまでスケールする。 Opinionated Managed Storage Engine BigQueryはすばらしいストレージエンジン、継続的に進化し最適化するストレージを備えている。 GFSの後継であるColossusは耐久性があり、高性能でスケールする。

    BigQueryの12のコンポーネント - Qiita