黄昏より暗きもの、血の流れより赤きもの

読者です 読者をやめる 読者になる 読者になる

黄昏より暗きもの、血の流れより赤きもの

自分の好きな事を好きなように書いて行きます。

MySQLを高速で動かすために必要な5つの事

「大規模サービス技術入門 ―データ構造、メモリ、OS、DB、サーバ/インフラ」を読み、高速化に必要な5つの事をまとめてみました。

  1. インデックスを張る(P)
  2. テーブルを細分化して、呼び出すデーター量を減らす(P97)
  3. RDBのクエリを使う必要がないときは、KVSを活用する(P98)
  4. OSのキャッシュを活かす
  5. スケーリングを前提にした設計

特に1のインデックスを張る技術に、「B+木」が使われている点にも驚きました。「B木:naoyaのはてなダイアリー」などを読み、基本的なことを復習しながら読んでいました。

するとこのデータ構造を活用することにより計算量がO(n)からO(log n)まで減少し、nが大きくなればなるほど速度向上につながる点も知れてよかったです。

大学の頃データー構造について勉強していたのですが、実務のどのような部分で使われているか分からなかったので非常に感激しながら読んでいます。

参考書籍