MongoDB學習筆記03

來源:互聯網
上載者:User

標籤:

限制結果的返回數量可以使用limit、skip

sort用一個對象作為參數:一組鍵/值對,鍵對應文檔的鍵名,值代表排序的方向(1:升序,-1:降序);如果指定了多個鍵,則按照多個鍵的順序諸個排序。

MongoDB處理不同類型的資料有一個順序的,有時候一個鍵的值可能是多種類型的,對於這種混合類型的鍵排序,其排序是預先定義好的,從小到大,順序如下:

用skip略過少量的文檔還是可以的,但要是數量非常多的話,skip就會變得很慢(可以通過向文檔本身內建查詢條件,來避免過大的skip,或者利用上次的結果來計算下一次查詢)

查詢分為封裝的和普通的兩類。封裝的查詢是將查詢封裝在一個更大的文檔中

當查詢出一個文檔,並對文檔進行處理,在將其儲存回資料庫時,如果文檔體積增加而預留空間不足,則需要將其移動,通常會將其挪至集合的末尾處,如此往複,結果返回了已經被挪動的文檔。解決這個問題就是對查詢進行快照,如果使用了"$snapshot"選項,查詢就是針對不變的集合視圖啟動並執行。所有返回一組結果的查詢實際上都進行了快照。

遊標消耗記憶體和其它資源,遊標遍曆盡了結果以後或者客戶單發來訊息要求終止,資料庫將會釋放這些資源,釋放的資源可以被資料庫換做他用。當遊標完成匹配結果的迭代時,它會清除自身,另外當遊標在用戶端已經不在範圍內了,驅動會發送專門的訊息,讓其銷毀遊標,即便使用者沒有迭代完所有結果,並且遊標也還在範圍中,10分鐘不使用,資料庫遊標也會自動銷毀,如果希望遊標持續的時間長一些,多數驅動會實現一個叫immortal的函數或類似的機制,來告知資料庫不要讓遊標逾時,這種情況要在迭代完結果後將其關閉,否則它會一直在資料庫中消耗伺服器資源。

MongoDB學習筆記03

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.