cari

Rumah  >  Soal Jawab  >  teks badan

mongodb - Mogodb menggunakan indeks teks, tidakkah ia boleh menggunakan indeks komposit?

Adakah benar jika indeks teks digunakan, indeks komposit tidak boleh digunakan?
Kerana saya menggunakan pernyataan pertanyaan berikut tetapi hanya melakukan pengindeksan teks:

db.tests.find({$text:{$search:'zhangshan'},'age':5,'city':'beijing'}

Melihat melalui explain, dia telah mengindeks teks tersebut. Kemudian tapis syarat lain daripada indeks ini!
Jadi apa yang perlu saya lakukan untuk mengindeks kesemuanya?
Saya terfikir untuk mencipta indeks teks untuk semua medan. Kerana jumlah data yang besar, saya belum mencubanya, saya ingin bertanya sama ada ini boleh dilaksanakan?
Terima kasih


Tambah explain()

"executionStats" : {
        "executionSuccess" : true,
        "nReturned" : 50424,
        "executionTimeMillis" : 510228,
        "totalKeysExamined" : 83546,
        "totalDocsExamined" : 167092,
        "executionStages" : {
            "stage" : "FETCH",
            "filter" : {
                "$and" : [
                    {
                        "age" : {
                            "$eq" : "5"
                        }
                    },
                    {
                        "city" : {
                            "$eq" : "beijing"
                        }
                    }
                ]
            },
            "nReturned" : 50424,
            "executionTimeMillisEstimate" : 509543,
            "works" : 167095,
            "advanced" : 50424,
            "needTime" : 116670,
            "needYield" : 0,
            "saveState" : 24418,
            "restoreState" : 24418,
            "isEOF" : 1,
            "invalidates" : 0,
            "docsExamined" : 83546,
            "alreadyHasObj" : 83546,
            "inputStage" : {
                "stage" : "TEXT",
                "nReturned" : 83546,
                "executionTimeMillisEstimate" : 509362,
                "works" : 167095,
                "advanced" : 83546,
                "needTime" : 83548,
                "needYield" : 0,
                "saveState" : 24418,
                "restoreState" : 24418,
                "isEOF" : 1,
                "invalidates" : 0,
                "indexPrefix" : {
                    
                },
                "indexName" : "banner_text",
                "parsedTextQuery" : {
                    "terms" : [
                        "ii"
                    ],
                    "negatedTerms" : [ ],
                    "phrases" : [ ],
                    "negatedPhrases" : [ ]
                },
                "textIndexVersion" : 3,
                "inputStage" : {
                    "stage" : "TEXT_MATCH",
                    "nReturned" : 83546,
                    "executionTimeMillisEstimate" : 509320,
                    "works" : 167095,
                    "advanced" : 83546,
                    "needTime" : 83548,
                    "needYield" : 0,
                    "saveState" : 24418,
                    "restoreState" : 24418,
                    "isEOF" : 1,
                    "invalidates" : 0,
                    "docsRejected" : 0,
                    "inputStage" : {
                        "stage" : "TEXT_OR",
                        "nReturned" : 83546,
                        "executionTimeMillisEstimate" : 509310,
                        "works" : 167095,
                        "advanced" : 83546,
                        "needTime" : 83548,
                        "needYield" : 0,
                        "saveState" : 24418,
                        "restoreState" : 24418,
                        "isEOF" : 1,
                        "invalidates" : 0,
                        "docsExamined" : 83546,
                        "inputStage" : {
                            "stage" : "IXSCAN",
                            "nReturned" : 83546,
                            "executionTimeMillisEstimate" : 1642,
                            "works" : 83547,
                            "advanced" : 83546,
                            "needTime" : 0,
                            "needYield" : 0,
                            "saveState" : 24418,
                            "restoreState" : 24418,
                            "isEOF" : 1,
                            "invalidates" : 0,
                            "keyPattern" : {
                                "_fts" : "text",
                                "_ftsx" : 1
                            },
                            "indexName" : "name_text",
                            "isMultiKey" : true,
                            "isUnique" : false,
                            "isSparse" : false,
                            "isPartial" : false,
                            "indexVersion" : 2,
                            "direction" : "backward",
                            "indexBounds" : {
                                
                            },
                            "keysExamined" : 83546,
                            "seeks" : 1,
                            "dupsTested" : 83546,
                            "dupsDropped" : 0,
                            "seenInvalidated" : 0
                        }
                    }
PHP中文网PHP中文网2781 hari yang lalu864

membalas semua(1)saya akan balas

  • 世界只因有你

    世界只因有你2017-05-24 11:33:30

    Cuba jawab:

    1 Pertama sekali, saya ingin melihat bagaimana indeks kompaun anda ditubuhkan secara khusus?

    2. Hasil pelaksanaan dilaksanakan mengikut pelan pelaksanaan yang dipilih jika prestasi tidak memuaskan, anda boleh menggunakan petunjuk untuk menentukan indeks komposit yang anda buat.

    Suka MongoDB!


    Persidangan Kumpulan Pengguna Komuniti Cina MongoDB Beijing 2017 akan datang tidak lama lagi, 3 Jun 2017 13:00-18:00

    Banyak perkongsian yang menarik! Berbaloi untuk mengambil bahagian!

    balas
    0
  • Batalbalas