一本寫給Mongo管理員的書——《深入學習MongoDB》

出版圈郭志敏發表於2012-03-05

作者:飛林沙

第一次使用MongoDB是在做網路爬蟲的時候,由於需要暫存從網際網路上爬下來的HTML內容等待抽取,由於該結構完全是非結構化的,於是順理成章,我們便選用了這個當時最流行的Nosql工具。再到現在公司也區域性實驗性地選擇Mongo,所以我也算是一個半專業的MongoDB使用者了。

但是我對MongoDB的知識卻僅僅限於曾經使用SQL Server經驗的遷移,以及從Mongo官方文件上的Beginner部分,瞭解最基本的driver for python / C# / Java,說白了做網站的邏輯無外乎就是增刪改差,當然這些內容對一個開發者來說已經綽綽有餘了。

但是一向贊成的學習方式是,理論優於實踐,所以我是無法容忍自己到現在還不知道mongo的sharding是什麼原理這種行為的。另外,由於我打算把MongoDB用到我自己的站上作為mysql的一個輔助,所以這些部署,維護等工作也通通都壓到了我頭上,所以看這樣一本寫給MongoDB的管理者的書也變得非常必要了。

全書不妨分做兩部分,第一部分很出彩,圖文並茂地講解了MongoDB核心功能——分片的原理,讓我們知道了到底怎麼樣建立片鍵更為合適,而這個思想是我們無法從傳統的關係型資料庫中獲得的。另外,最後的50條mongodb的軍規相對也比較受用。

我喜歡這樣的書,簡簡單單100多頁,內容卻極其的翔實。其實在我看來大多數的書完全可以用100——200頁來寫完,讀者非常容易把握住重點,也免著在一些廢話上浪費 時間。不過這卻要求作者有著比較好的語言概括和表達能力以及對書的受眾有著一個比較清晰的定位。

另外,也吐槽一下:

  1. 本書的後50條軍規是很實踐性的,不過有些條規之間重複性很大,如果再總結歸納一下,完全可以用20,30條左右概括出來。而且,因為這些實踐都是針對理論方面的優化,所以也許我更希望能夠看到一個講解MongoDB內部原理的書。

有些人看到這肯定說,可以看原始碼啊,可以看文件啊這些這些。。。不過對於我這種看A片都懶著從頭開始看的懶人,顯然是不現實的。

  1. MongoDB確實不是一個足夠靠譜的東西,Auto sharding , 以及穩定性等時至今日仍然不足夠成熟,所以MongoDB er 可以持續跟進,不過大規模地應用於一個商業產品上還是有待考驗。

最後,這本書還是值得每一個像我一樣懶著看文件的MongoDB管理員或者是希望相對深入瞭解MongoDB的開發者買回來看看,然後像那些Effecive的書一樣 時常翻一翻的。

相關文章