深入淺出MongoDB(一)NoSQL起源

2021-12-30 13:15:30 字數 1169 閱讀 5636

隨著網際網路的發展,當我們把一台伺服器一台伺服器變成兩台伺服器,當我們開始建立資料備份,當我們需要加乙個緩衝層,來調整所有的查詢,投入更多的硬體。

最後,需要將資料切分多個集群上,並重構大量的應用邏輯以適應這種切分。不久之後,你就會發現被自己數月前的設計資料結構限制住了。

隨著web2.0的興起,關係型資料庫本身無法克服的缺陷越來越明顯,主要表現為如下幾點。

1、對資料高併發讀寫的需求

2、對海量資料的高效率儲存和訪問的需求。

3、對資料庫的高可擴充套件性和高可用性的需求。

4、資料庫事務一致性需求。

5、資料庫寫實性和讀寫時性需求。

6、對複雜sql的查詢,特別是對關聯查詢的需求。

nosql是notonly sql的縮寫,nosql不使用sql作為查詢語言。其資料儲存可以不需要固定的**模式,也經常避免使用sql的join操作,一般有水平可擴充套件性的特徵。

1、nosql一詞最早出現在2023年,是carlo strozzi開發的乙個輕量、開源、不提供sql功能的關聯式資料庫。

2、2023年,last.fm的johan oskarsson發起了一次關於分布式開源資料庫的討論,來自rackspace的eric evans再次提出了nosql概念,這時的nosql主要是指非關係型、分布式、不提供資料庫設計模式。

3、2023年趨勢高漲,被定為「非關係型的」資料儲存,相對於關係型資料庫運用,這一概念無疑是一種全新思維的注入。

nosql具有如下幾點

優點:1、高併發讀寫

2、海量資料儲存

3、高可擴充套件性

4、高可用性

缺點:5、缺乏事務一致性

6、缺乏讀寫實時性

7、不支援複雜查詢

nosql資料庫型別

key-value:key指value的鍵值對,通常用hash table來實現

列式資料庫:同一列資料存在一起

文件型資料庫:key-value對應的鍵值對,value為結構化資料產品:mongodb

圖結構資料庫:以「圖」為基本儲存模型,產品:neo4j,infogrid,infinitegraph

1、membase軟體

2、hypertable

3、apachecassandra

4、mongodb

在這裡我們用的是mongodb,下篇著重說明mongodb,以及例項操作。

深入淺出viewport 一

viewport對於移動瀏覽器上的網頁展示比較重要,那麼我們為什麼需要設定viewport呢?viewport到底是個什麼東東?讓我們一起來抽絲剝繭,一點點的揭露它的真相。這裡是翻譯的文章,沒有逐字翻譯。viewport的作用是限制頁面頂級的包含元素,這聽起來可能有點模糊不清。舉個例子,假設你有乙個...

深入淺出AOP(一)

aop事實上非常早之前依照做出來了一些東西,之所以不敢說做出來了。是由於它是什麼?怎麼實現?做出來的東西是不是?先前一直查資料。查到的資料跟著做。到後來發現,aop越來越大,而非常多資料跟aop本身的思想有衝突的地方,所以還有非常多要學習的地方。能夠動態的加入和刪除在切面上的漏記而不影響原來的執行 ...

深入淺出sizeof

int佔 位元組,short佔 位元組 1.0 回答下列問題 答案在文章末尾 1.sizeof char 2.sizeof a 3.sizeof a 4.strlen a 如果你答對了全部四道題,那麼你可以不用細看下面關於sizeof的論述。如果你答錯了部分題目,那麼就跟著我來一起 關於sizeof...