mongodbでの$ nin操作の最適化
Optimization Nin Operation Mongodb
私のビジネスに関する限り、削除することですnull and ''
、次のように書くことができます:
urlQuery.append('ir_urlcontent', new BasicDBObject('$gt', ''))
どちらを使用するか$gt:''
;
私は効果が同じであることをテストしました:
もちろん、ビジネスシナリオが$nin:['foo','yutao']
の場合、このような特定の文字を指定する方法はありません。
使用$gt:''
、除外に適していますnull and ''
。
パフォーマンス :実際に使用$gt:''
後で、想像したほど速くはありませんでした。私のビジネスに関する限り、720,000
データは、合計を取得するためにクエリを実行するときにも必要です2 to 4 seconds
、使用するよりも$nin
まあ、後者は直接リクエストのタイムアウトです。
しかし、私はサンドボックス環境、つまりキャッシュを備えた正式な環境にいます。
参照アドレス:
https://docs.mongodb.com/manual/reference/operator/query/nin/