给我你的怀抱2017-05-02 09:28:37
嗯是我踩的,因為這樣的答案是在誤導讀者。
無論哪種資料庫建立索引的時候開銷都是巨大的,因為這代表著要遍歷整個表裡的數據,怎麼可能壓力不大?所以才會有{background: true}
選項可以適當緩解這種情況。當在一個壓力實在太大的集群中創建索引,我們更建議使用「滾動」創建索引的方式,將從結點逐一摘下來創建索引再放上線,以避免影響線上系統運行。
至於鎖的問題,3.0開始WT引擎支援的就是文檔鎖定(行鎖)。
查詢索引的時候開銷龐大,多半是你的索引建立不當,可以舉出具體的例子來討論。
數據過億的時候坑多也請舉出具體例子討論。
天蓬老师2017-05-02 09:28:37
Mongodb支援自動分片和分割架構,可以利用它來建立一個水平擴展的資料庫叢集系統,將資料庫分錶儲存在各個sharding節點上。
請看 mongodb 分片代替資料庫分錶 [1]: https://yq.aliyun.com/article...
PHPz2017-05-02 09:28:37
我個人覺得還是有必要的,MongoDB有鎖庫(低版本)和鎖表(中版本)的問題,即使有存儲文件的分片,但是在建立索引、以及在查索引的時候開銷還是巨大! ! ! !數據過億的時候還是坑多!