私はpostgresの初心者です。私はhost
(文字列varchar2)という名前の列を約2,000万行のテーブルに持っています。特定のホストを見つけるためにインデックスを使用して検索を最適化する方法を教えてください。また、この列は毎日更新され、特定の間隔でトリガーインデックスを作成する必要がありますか?はいの場合、どうすればよいですか?あなたは、正確なマッチをやっていると仮定すると、Postgres Indexing?
7
A
答えて
7
(レコードについて、私はRubyとRailsの3を使用しています)、あなただけのインデックスを作成することができるはずですし、それを残す:
CREATE INDEX host_index ON table_name (host)
クエリオプティマイザはちょうどそれを使用する必要があります自動的に。
使用する照合などの他のオプションを指定することもできます。
詳細については、PostgreSQL docs for CREATE INDEXを参照してください。
0
私はBRIN Index
を、従来のbtreeインデックスではなくPostgreSQL 9.5からの導入以来使用することをお勧めします。
0
テキスト検索の場合は、GINまたはGiSTインデックスタイプを使用することをお勧めします。
https://www.postgresql.org/docs/9.5/static/textsearch-indexes.html
もう一つの可能性は、あなたが唯一の正確な関与host
列、すなわち、無不平等の比較(>
、<
)と部分一致(like
、ワイルドカード)に一致する実行していた場合、あなたはhost
変換検討することができるということです検索を大幅に高速化するためにハッシュ整数に変換します。
関連する問題
- 1. Clustered Indexing
- 2. RoR:Monitor Indexing Migration
- 3. JQGrid&Search Engine Indexing
- 4. KeyDown/KeyPress and Indexing
- 5. jcarouselとGoogle Indexing
- 6. Soling slow indexing中に
- 7. Django haystack with elasticsearch、indexing issue
- 8. Python TkinterのトラブルText Widget Indexing
- 9. GAE Indexing(やり直し)
- 10. MongoDB with Mongoid in Rails - Geospatial Indexing
- 11. スフィンクス+ Postgresは+ UUIDは
- 12. Nutch/Solr Indexing Sentences - パーサープラグインまたはインデクシングプラグイン?
- 13. Postgres:パーシャルユニークインデックス
- 14. Postgresの -
- 15. Postgres Tuning
- 16. Postgresアダプタ
- 17. のPostgres:
- 18. ポリゴンエリアPostgres
- 19. Postgresの
- 20. PARTITIONSでINDEXINGすることはできますか?
- 21. Drupal + SOLR Indexing - "Enabled Filters"タブにフィールドが表示されない
- 22. Numpy Indexing - 奇妙な行動/不一致に関する質問
- 23. Google DeepLink用にiOSにGoogle App Indexing SDKが必要ですか?
- 24. ハイフネーションされた単語のLucene Indexing/Query strategy
- 25. Postgresダンプ:pg_catalog.setval
- 26. のPostgres 9.4クラッシュ
- 27. PostgresのOPENXML
- 28. postgres接続プーリングライブラリ
- 29. list Postgres ENUMタイプ
- 30. CakePHP/Postgres nextval()
私はトリガーを書く必要はありませんか?レコードが更新されるとインデックスが更新されますか? –
レコードが更新されている間、インデックスが更新されます。一般的なルールは、インデックスは検索の速度を上げますが、情報の更新は遅くなります。したがって、索引構造の選択に注意してください。更新のパフォーマンスに劇的な影響を与える可能性があります。 – J0HN