Versione shell MongoDB v4.0.5: query molto lenta


0

Shell versione MongoDB v4.0.5: query molto lenta | Prendersi del tempo per recuperare | Dimensione dei dati: 2-3 milioni di documenti in una raccolta e ci sono circa 13-15 di tali raccolte.

Conf. Sistema:

Architecture:          x86_64
CPU op-mode(s):        32-bit, 64-bit
Byte Order:            Little Endian
CPU(s):                6
On-line CPU(s) list:   0-5
Thread(s) per core:    1
Core(s) per socket:    6
Socket(s):             1
NUMA node(s):          1
Vendor ID:             GenuineIntel
CPU family:            6
Model:                 79
Stepping:              1
CPU MHz:               2097.570
BogoMIPS:              4195.14
Hypervisor vendor:     VMware
Virtualization type:   full
L1d cache:             32K
L1i cache:             32K
L2 cache:              256K
L3 cache:              20480K
NUMA node0 CPU(s):     0-5

MemTotal:       16432268 kB

Ho eseguito l'indicizzazione sui tavoli e funziona bene, ma il sistema impiega molto tempo:

Di seguito è riportato il planner delle query:

db.vnms_vccells_5.find({auid:"<1e000097>",hub_ip:"10.252.0.105",sector_ip:"<1e000046>", last_updated_time:{$gt:"2016-12-24 05:49:00"}}).explain("executionStats")
{
        "queryPlanner" : {
                "plannerVersion" : 1,
                "namespace" : "opennms.vnms_vccells_5",
                "indexFilterSet" : false,
                "parsedQuery" : {
                        "$and" : [
                                {
                                        "auid" : {
                                                "$eq" : "<1e000097>"
                                        }
                                },
                                {
                                        "hub_ip" : {
                                                "$eq" : "10.252.0.105"
                                        }
                                },
                                {
                                        "sector_ip" : {
                                                "$eq" : "<1e000046>"
                                        }
                                },
                                {
                                        "last_updated_time" : {
                                                "$gt" : "2016-12-24 05:49:00"
                                        }
                                }
                        ]
                },
                "winningPlan" : {
                        "stage" : "FETCH",
                        "inputStage" : {
                                "stage" : "IXSCAN",
                                "keyPattern" : {
                                        "auid" : 1,
                                        "hub_ip" : 1,
                                        "sector_ip" : 1,
                                        "last_updated_time" : -1
                                },
                                "indexName" : "auid_1_hub_ip_1_sector_ip_1_last_updated_time_-1",
                                "isMultiKey" : false,
                                "multiKeyPaths" : {
                                        "auid" : [ ],
                                        "hub_ip" : [ ],
                                        "sector_ip" : [ ],
                                        "last_updated_time" : [ ]
                                },
                                "isUnique" : false,
                                "isSparse" : false,
                                "isPartial" : false,
                                "indexVersion" : 2,
                                "direction" : "forward",
                                "indexBounds" : {
                                        "auid" : [
                                                "[\"<1e000097>\", \"<1e000097>\"]"
                                        ],
                                        "hub_ip" : [
                                                "[\"10.252.0.105\", \"10.252.0.105\"]"
                                        ],
                                        "sector_ip" : [
                                                "[\"<1e000046>\", \"<1e000046>\"]"
                                        ],
                                        "last_updated_time" : [
                                                "({}, \"2016-12-24 05:49:00\")"
                                        ]
                                }
                        }
                },
                "rejectedPlans" : [ ]
        },
        "executionStats" : {
                "executionSuccess" : true,
                "nReturned" : 28788,
                "executionTimeMillis" : 34989,
                "totalKeysExamined" : 28788,
                "totalDocsExamined" : 28788,
                "executionStages" : {
                        "stage" : "FETCH",
                        "nReturned" : 28788,
                        "executionTimeMillisEstimate" : 34475,
                        "works" : 28789,
                        "advanced" : 28788,
                        "needTime" : 0,
                        "needYield" : 0,
                        "saveState" : 1039,
                        "restoreState" : 1039,
                        "isEOF" : 1,
                        "invalidates" : 0,
                        "docsExamined" : 28788,
                        "alreadyHasObj" : 0,
                        "inputStage" : {
                                "stage" : "IXSCAN",
                                "nReturned" : 28788,
                                "executionTimeMillisEstimate" : 7730,
                                "works" : 28789,
                                "advanced" : 28788,
                                "needTime" : 0,
                                "needYield" : 0,
                                "saveState" : 1039,
                                "restoreState" : 1039,
                                "isEOF" : 1,
                                "invalidates" : 0,
                                "keyPattern" : {
                                        "auid" : 1,
                                        "hub_ip" : 1,
                                        "sector_ip" : 1,
                                        "last_updated_time" : -1
                                },
                                "indexName" : "auid_1_hub_ip_1_sector_ip_1_last_updated_time_-1",
                                "isMultiKey" : false,
                                "multiKeyPaths" : {
                                        "auid" : [ ],
                                        "hub_ip" : [ ],
                                        "sector_ip" : [ ],
                                        "last_updated_time" : [ ]
                                },
                                "isUnique" : false,
                                "isSparse" : false,
                                "isPartial" : false,
                                "indexVersion" : 2,
                                "direction" : "forward",
                                "indexBounds" : {
                                        "auid" : [
                                                "[\"<1e000097>\", \"<1e000097>\"]"
                                        ],
                                        "hub_ip" : [
                                                "[\"10.252.0.105\", \"10.252.0.105\"]"
                                        ],
                                        "sector_ip" : [
                                                "[\"<1e000046>\", \"<1e000046>\"]"
                                        ],
                                        "last_updated_time" : [
                                                "({}, \"2016-12-24 05:49:00\")"
                                        ]
                                },
                                "keysExamined" : 28788,
                                "seeks" : 1,
                                "dupsTested" : 0,
                                "dupsDropped" : 0,
                                "seenInvalidated" : 0
                        }
                }
        },
        "serverInfo" : {
                "host" : "vnms",
                "port" : 27017,
                "version" : "4.0.5",
                "gitVersion" : "3739429dd92b92d1b0ab120911a23d50bf03c412"
        },
        "ok" : 1
}

Di seguito sono riportati i dati mongostat:

insert query update delete getmore command dirty  used flushes vsize   res qrw arw  net_in    net_out conn                time
             *0    *0     *0     *0       0     3|0  0.0% 80.0%       0 5.26G 3.52G 0|0 3|0    254b       101k    7 Jan 23 10:20:41.082
             *0    *0     *0     *0       0     1|0  0.0% 80.0%       0 5.26G 3.52G 0|0 3|0    134b      53.0k    7 Jan 23 10:20:42.261
             *0    *0     *0     *0       0     1|0  0.0% 80.0%       0 5.26G 3.52G 0|0 3|0    147b      58.4k    7 Jan 23 10:20:43.329
             *0    *0     *0     *0       0     1|0  0.0% 80.0%       0 5.26G 3.52G 0|0 3|0    138b      54.8k    7 Jan 23 10:20:44.469
             *0    *0     *0     *0       0     3|0  0.0% 79.9%       0 5.26G 3.52G 0|0 3|0    277b      81.9k    7 Jan 23 10:20:45.232
             *0    *0     *0     *0       0     1|0  0.0% 80.0%       0 5.26G 3.52G 0|0 3|0    138b      54.8k    7 Jan 23 10:20:46.371
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.