怎么在mongo中查詢不存在的字段?很多新手對(duì)此不是很清楚,為了幫助大家解決這個(gè)難題,下面小編將為大家詳細(xì)講解,有這方面需求的人可以來(lái)學(xué)習(xí)下,希望你能有所收獲。
建網(wǎng)站原本是網(wǎng)站策劃師、網(wǎng)絡(luò)程序員、網(wǎng)頁(yè)設(shè)計(jì)師等,應(yīng)用各種網(wǎng)絡(luò)程序開(kāi)發(fā)技術(shù)和網(wǎng)頁(yè)設(shè)計(jì)技術(shù)配合操作的協(xié)同工作。成都創(chuàng)新互聯(lián)專業(yè)提供成都做網(wǎng)站、成都網(wǎng)站制作,網(wǎng)頁(yè)設(shè)計(jì),網(wǎng)站制作(企業(yè)站、成都響應(yīng)式網(wǎng)站建設(shè)公司、電商門(mén)戶網(wǎng)站)等服務(wù),從網(wǎng)站深度策劃、搜索引擎友好度優(yōu)化到用戶體驗(yàn)的提升,我們力求做到極致!集合:
XXXX_message
數(shù)據(jù)量約 600萬(wàn)
我執(zhí)行了下面的mongo查詢:
db.XXXX_message.find({"channel_id": "1000000009XXXX700XXXX"}).limit(20);
但是上述語(yǔ)句中的 "channel_id" 字段不存在,真實(shí)字段應(yīng)該是channel(有索引),屬于失誤操作
在執(zhí)行過(guò)程中,我發(fā)現(xiàn)查詢時(shí)間很久,于是中斷了查詢又重試了兩次,還是很久,最后中斷了查詢,我意識(shí)到我想查的字段可能錯(cuò)了,于是看了下集合索引,使用正確的字段檢索得到結(jié)果
但就在這時(shí)候,一場(chǎng)事故也在悄然醞釀,2分鐘后,阿里云監(jiān)控中心打來(lái)告警電話,mongo數(shù)據(jù)庫(kù)cpu、iops異常升高
起初并沒(méi)有意識(shí)到是這個(gè)查詢導(dǎo)致的,還以為是半小時(shí)前發(fā)布的版本可能有問(wèn)題,于是立即回滾了版本并開(kāi)始項(xiàng)目檢查
查了許久,并沒(méi)有查到可能造成本次數(shù)據(jù)庫(kù)異常告警的原因,項(xiàng)目對(duì)該庫(kù)的依賴的操作的地方非常少。
當(dāng)我們苦苦想不到原因的時(shí)候,我們?nèi)ゲ榱讼孪嚓P(guān)慢sql日志,果然一道耗時(shí)約1800000ms的慢sql日志引起了我們的注意
這時(shí)候我似乎意識(shí)到了點(diǎn)什么,我立馬查阿里云控制臺(tái)查詢歷史核對(duì)了我剛才查詢的時(shí)間和數(shù)據(jù)庫(kù)cpu、磁盤(pán)iops異常升高的時(shí)間節(jié)點(diǎn)
完全對(duì)上了,該起事故持續(xù)半小時(shí)左右,那條沒(méi)有被成功中斷的sql也執(zhí)行了半小時(shí)左右
看完上述內(nèi)容是否對(duì)您有幫助呢?如果還想對(duì)相關(guān)知識(shí)有進(jìn)一步的了解或閱讀更多相關(guān)文章,請(qǐng)關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝您對(duì)創(chuàng)新互聯(lián)網(wǎng)站建設(shè)公司,的支持。