タグ

2018年4月3日のブックマーク (2件)

  • Block Range Indexes(BRIN)の実装とwal_compressionパラメータの追加

    今回は、PostgreSQL 9.5(以下、9.5)で実装された以下2つの機能について、実際に動かしながら紹介します。 Block Range Indexes(BRIN)の実装 wal_compressionパラメータの追加 9.5から「Block Range Indexes(BRIN)」と呼ばれる新しいインデックスが実装されました。例えばDWH(Data Ware House)システムで扱われるような巨大なテーブルを検索する際に効果を発揮します。BRINインデックス(公式ドキュメントでは「BRIN Indexes」と呼称)は、物理的に隣接するブロック(ページ)の集合を1つのグループとし、それら各グループの値の範囲(最小値と最大値)を保持しています(図1)。これにより検索時の走査範囲を絞り込むことができるため、走査範囲が広くなりがちな巨大なテーブルほど高い効果が得られます。 巨大なテーブル

    Block Range Indexes(BRIN)の実装とwal_compressionパラメータの追加
    toenobu
    toenobu 2018/04/03
  • PostgreSQLのIndex入門 | 酒と涙とRubyとRailsと

    PostgreSQLでのSELECTなどで対象のレコードを早く検索するための「Index(インデックス、索引)」についてのまとめです。 🗻 お勧めスライド:PostgreSQLクエリ実行の基礎知識 PostgreSQLについて丁寧な解説がされているスライドです。PostgreSQLの実行計画を理解するのにすごく参考になりました! 😼 Index作成までの流れ いつ 新規テーブルの作成時 DBのパフォーマンス・チューニングの際 どうやって SQLの実行ログから、実行回数が多い & 実行に時間がかかるSQLを探す EXPLAINで実行計画を元に最適なindexを探す 代替案としてサマリテーブルを作ったり、キャッシュをもつことも検討 🐹 Index作成SQLCREATE INDEXでIndexを作成できます。 -- レコードがユニークではないインデックスの場合 CREATE INDEX

    PostgreSQLのIndex入門 | 酒と涙とRubyとRailsと
    toenobu
    toenobu 2018/04/03