MongoDB 模糊查询效率太差,如何提速?
阿神
阿神 2017-04-24 09:09:39
0
3
752

在70W的数据中,执行 'name': /Mamacitas / 需要17.358767秒才完成
数据内容例:

{
  "Attitude_low": NumberInt(0),
  "Comments": "i",
  "file": [
    "mamacitas-7-scene3.avi",
    "mamacitas-7-scene4.avi",
    "mamacitas-7-scene5.avi",
    "mamacitas-7-scene2.avi",
    "mamacitas-7-scene1.avi",
    "14968frontbig.jpg",
    "[000397].gif",
    "mamacitas-7-bonus-scene1.avi",
    "14968backbig.jpg"
  ],
  "Announce": "http://exodus.desync.com/announce",
  "View": NumberInt(0),
  "Hash": "9E3842903C56E8BBC0C7AF7A0A8636590491923C",
  "name": "Mamacitas 7[SILVERDUST]",
  "Encoding": "!",
  "EntryTime": 1403169286.9712,
  "Attitude_top": NumberInt(0),
  "CreatedBy": "ruTorrent (PHP Class - Adrien Gibrat)",
  "CreationDate": NumberInt(1365851919)
}

关于索引部分:

请问我该如何提高匹配速度?

阿神
阿神

闭关修行中......

全員に返信(3)
刘奇

ファジー クエリを使用する場合、ハッシュ タイプのインデックスは役に立ちません。単語の分割後にインデックスを構築するには、実際に検索エンジンに依存する必要があります。

1 つは、エラスティック検索のようなものを使用し、専用のものを構築することです

単語セグメンテーション ライブラリを使用してフィールドを単語にセグメント化し、mongodb を使用して単語セグメンテーションのコレクションを作成することも検討できます。mongodb のデフォルトのインデックス作成メカニズムを使用することもできます。
いいねを押す +0
Peter_Zhu

MongoDB テキスト インデックスを試すことができます。完全な単語を一致させたいだけのようです。これは、このインデックスのアプリケーション シナリオと同じです。

いいねを押す +0
PHPzhong

Lucence/Sphinx を MongoDb と組み合わせて使用​​すると、Mongodb クエリの効率は確かに比較的低いです

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート