タグ

DBに関するmarshiのブックマーク (3)

  • 開発者のためのSQLパフォーマンスの全て

    前書き - インデックスの作成はなぜ開発者のタスクなのか インデックスの 内部構造 - インデックスは何に似ているか インデックス リーフノード - 二重連結リスト 検索 ツリー(Bツリー) - バランス木 遅いインデックス パートI - インデックスを遅くする2つの原因 where 句 - 検索のパフォーマンスを改善するためにインデックスを作成 等価 演算子 - 一致するキーの検索 プライマリキー - インデックスの使い方を確認 複合インデックス - 複数列に対するインデックス 遅いインデックス パートII - 前の問題点が再び 関数 - where句の 中での関数 大文字・小文字を区別する 検索 - UPPERと LOWER ユーザ定義 関数 - 関数インデックスの制限 インデックスの作り過ぎ - 冗長性の排除法 パラメータ化 クエリ - セキュリティとパフォーマンスのために 範囲 検

    開発者のためのSQLパフォーマンスの全て
  • 私がデータベースを愛する理由 | Yakst

    モダンなデータベースに使われる各種技術や運用に必要な知識について、Squareのデータベースエンジニアである筆者の見解。データベースの内部構造や仕組みについての興味をかき立てる。 昨年、私はSquareで色々なデータベースの面倒を見る中で、こんなことをしてきた。 データベースのパフォーマンス問題の調査と解決 新しいアプリケーションの、データモデルのデザインやシャーディング戦略の立案 データベース新製品の評価と運用化 最初は必要に迫られてやっていた私は、それから徐々に、データベースの虜になっていった。データベースを学ぶことは、コンピュータサイエンスのあらゆるトピックを横断的に扱うことであり、その理論や実装は、洗練され、かつチャレンジングでもある。 しかし、こういった感覚は他のみんなにも一般的なわけではないということも分かってきた。私の同僚や友人の多くにとっては、データベースは魔法のブラックボ

    私がデータベースを愛する理由 | Yakst
    marshi
    marshi 2014/12/06
  • なぜBTreeがIndexに使われているのか - maru source

    ※この内容は個人的な考察なので、間違っている箇所もあると思います。そういう部分を見つけた際はぜひ教えて下さい。 RDBMSの検索を早くするためにIndexって使いますよね。例えばこんなテーブル CREATE TABLE user ( id INT UNSIGNED NOT NULL, name VARCHAR(255) NOT NULL, UNIQUE INDEX (id) ); idカラムにIndexを張っています。これはidでの検索を高速にするためです。ここでidカラムにIndexが貼っていない場合と比べると検索時間が大幅に変わってきてしまいます(特にレコードが多くなった時) ではなぜIndexを貼ると検索が早くなるんでしょう?? Indexとはその名の通り索引を意味します。特定のカラムの索引を作成しておくことで検索を高速化します。 (の最後によみがな順で単語が並べられたりしています

    なぜBTreeがIndexに使われているのか - maru source
  • 1