我們常常把這些不同型別的資料庫用在錯誤的地方。
最常見的是在關聯式資料庫內儲存大量非計算的資料。
像日誌啊,賬號啊,這些僅僅只是需要讀取和寫入的資料都放在關聯式資料庫內。
把關聯式資料庫當作大硬碟使用。
例如小明,小黃誰的分數比較高?
所獲取的是不同物件的資料之間的邏輯關係。
mysql就是這類資料庫的典型代表,
他的語句就支援對資料的篩選和排序,把多個物件的資料放在同乙個表內。
這些功能都是為了方便,發現和整理資料之間的關係,
通過對資料關係的分析得到乙個統計意義的結論。
那麼關係型資料庫的特點決定了他不可能在讀寫效能上要求很高。
按儲存介質區分資料庫有硬碟資料庫和記憶體資料庫的區別,
硬碟資料庫的特點是儲存資料大,支援持久儲存,缺點是讀寫速度慢。
記憶體資料庫的特點是讀寫速度快,不支援持久儲存。
在過去因為記憶體**昂貴,作業系統不穩定,網路鏈結慢,
資料庫主要以硬碟資料庫為主。
隨著目前網路速度的提公升,記憶體**的下降,作業系統的成熟,
分布式儲存方案和分布式計算方案的成熟記憶體資料庫有取代硬碟資料庫的趨勢。
關係型資料庫要建立索引,對資料橫向的切割特點。
決定了關聯式資料庫在讀寫資料上和硬碟資料庫有很好的適配性。
例如張三和李四放入醫學的關係型資料庫,就會變成
張三頭和李四的頭資料放入腦科的表裡。
驅趕和身體放入外科的表裡。
剩下的放入內科的表裡。
這樣你想要張三的完整資料就必須所有的表都訪問一遍。
關係型資料庫的特點決定了資料庫是在乙個較高的全域性看所有完整資料的關係。
他是非關聯式資料庫+記憶體資料庫的模式。
所謂非關聯式資料庫的意思是並不關心某個物件在全域性下和別的物件之間的關係。
只要能快速讀寫計算某個物件的資料。
nosql的計算是在存入資料庫之前。
而關聯式資料庫的計算大多是在把資料存入資料庫之後作的。
nosql也可以相容實時計算系統,擴充套件成強大的資料計算中心。
nosql的特點是實時快速小範圍。
例如張三碰到李四給了他一塊錢。
在記憶體裡nosql就把這件事情處理了,所以比硬碟型資料庫要快很多。
記憶體型資料庫與硬碟型資料庫有很好的互補關係,
硬碟型資料庫的快取做的再好也不可能有記憶體資料庫的速度快。
最理解邏輯的還是開發人員自己。
就說簡單的賬號系統的快取命中率,
有快取的系統和直接讀mysql在效率上還是差別很大的。
全文完!
關係型資料庫和NoSQL資料庫
大家有沒有聽說過 nosql 呢?近年,這個詞極受關注。看到 nosql 這個詞,大家可能會誤以為是 no!sql 的縮寫,並深感憤怒 sql怎麼會沒有必要了 呢?但實際上,它是 not only sql 的縮寫。它的意義是 適用關係型資料庫的時候就使用關係型資料庫,不適用的時候也沒有必要非使用關係...
關係型資料庫和nosql非關係型資料庫
關係型資料庫目前主流 oracle,mysql,sql server,db2等 非關聯式資料庫包括 mongodb,nosql,cloudant 關係型資料庫的優勢 1.複雜查詢可以用sql語句方便的在乙個表以及多個表之間做非常複雜的資料查詢。2.事務支援使得對於安全效能很高的資料訪問要求得以實現。...
關係型資料庫和NOsql
關聯式資料庫,是建立在 關係模型 基礎上的資料庫,借助於集合代數等數學概念和方法來處理資料庫中的資料。現實世界中的各種實體以及實體之間的各種聯絡均用關係模型來表示。關係模型是由埃德加 科德於1970年首先提出的,並配合 科德十二定律 現如今雖然對此模型有一些批評意見,但它還是資料儲存的傳統標準。標準...