0

私はMongoDBを使用しています。テストの目的で、データベース (500 000 000 ドキュメント) とコレクションを作成します。すべてのドキュメントは次のようになります。

{

        "_id" : ObjectId("50c1fbcda8cf8e11c43ea8ce"),
        "sql_id" : 8311,
        "text" : "WD7TYIM0H H3Q 3874 000 VFBF6H",
        "xml" : "<root> <tag_0>WD7TYIM0H</tag_0> <tag_1>H3Q</tag_1> <tag_2>3874</tag_2><tag_3>000</tag_3><tag_4>VFBF6H</tag_4></root>",
        "tags" : [
                "WD7TYIM0H",
                "H3Q",
                "3874",
                "000",
                "VFBF6H"
        ]
}

フィールド「タグ」でインデックスを作成し、「タグ」インデックスを使用する複数の正規表現条件を使用したいと考えています。これは可能ですか?

私は試した:

> db.items.find({ "$and" : [{ "tags" : /^AAA/ }, { "tags" : /^BBB/ }] })

> db.items.find({ "tags" : { "$all" : [/^AAA/, /^BBB/] } })

モンゴが2回ダウンしました。

1 つの条件で検索すると、結果が非​​常に速く返されます。

ありがとう!

4

1 に答える 1

0

私のテストでは、うまくいきます。私はdbバージョンv1.6.5を使用しています。DB にいくつかのドキュメントしかないという事実を考えると、問題はパフォーマンス関連の問題である可能性があります。

于 2012-12-21T15:25:22.670 に答える