2016-08-17 9 views
0

2600万行のPostgresテーブルがあり、インデックス付きブール型列を追加したいと思います。大きなPostgresqlテーブルにインデックスを作成する時間はどのように計算されますか?

実稼働中に試行する前に、その操作のタイプを計算する方法はありますか?

+3

ブール値の列をインデックス化する理由を教えてください。ブール値としての性能が大幅に向上するわけではありませんが、2つのオプションだけが真/偽対インデックスで改良されるユニークなishです。 – mituw16

+0

ブール値の列をインデックス化するのは、パフォーマンスを向上させると仮定したからです。 (1)ブール型列のインデックスがパフォーマンスを向上させない、または(2)インデックスが役立つかどうかを知る方法を記述するリソースやリンクがありますか? –

+1

これはmysql用ですが、同じ考え方が適用されます。ブール値の列にインデックスを付けることで、クエリのスピードはほとんど向上しません。 http://stackoverflow.com/a/1845014/1729859また、http://stackoverflow.com/a/10524734/1729859 – mituw16

答えて

1

それは多くの要因(ハードウェア、ソフトウェア、コンフィギュレーション、負荷など)に依存して、インデックス時間を計算する方法

は時間がかかりますが、ロックしない、良いニュースは、あなたがCREATE INDEX CONCURRENTLYかもしれないということですがありませんテーブル。したがって、サーバー上の負荷が高いことを除けば、操作に副作用はありません。

一部の警告については、check the documentationです。

+0

ありがとう!知っておいてよかった。 –

関連する問題