資料庫基礎知識講解
99%的網站瓶頸都在後端 最主要的瓶頸在於:資料庫和儲存
儲存前面用快取來減輕壓力
資料庫前面用memcached快取來減輕壓力
資料庫就是存放資料的倉庫
比較流行的資料庫模型有三種:層次式資料庫、網路式資料庫和關係型資料庫
最常用的有關係型資料庫和非關係型資料庫
關係型資料庫是把資料結構歸結為簡單的二元關係(二維表格形式),對資料的操作都建立在一個或多個關係表格上。
1、二維表格形式
2、典型代表:MySQL oracle
3、用sql語句對資料進行操作與管理
非關係型資料庫誕生原因:動態請求越來越多,對資料庫要求越來越高,傳統的資料庫無法滿足要求,存取速度慢。
非關係型資料庫有哪些種類呢?
(1) 鍵值儲存資料庫(key-value)
典型產品:memcached redis memcacheDB Berkeley DB
(2) 列儲存資料庫(column-oriented)
典型產品:cassandra,HBase
(3) 面向文件資料庫(Document-Oriented)
典型產品:MongoDB CouchDB
(4) 圖形資料庫(Graph)
典型產品:Neo4J InfoGrid
關係型資料庫現在的市場佔有率以ORACLE和MYSQL為主:
oracle關聯式資料庫產品的市場佔有率數一數二
適用範圍:傳統大企業、大公司、政府、金融、證券等
版本升級:8i 9i 10g 11g 12c
MySQL資料庫是中小型關係型資料庫管理系統
有點:體積小,速度快,擁有成本低、開放原始碼
適用範圍:網際網路領域、大中小型網站、遊戲公司、電商平臺
MariaDB資料庫:mysql資料庫的一個分支,擔心mysql被收購後存在閉源風險,由此誕生這個資料庫,相對於mysql而言,只是替換了儲存引擎
SQL server資料庫:微軟平臺的資料庫 適用於:部分企業電商(央視購物),使用windows伺服器平臺的企業
ACCESS資料庫: 入門級小型桌面資料庫,效能安全性都很一般,適用於個人管理或小型網站使用。
應用領域:中小型應用系統,小型程式系統asp+access系統,留言板,校友錄等。
memcached是一個開源的、高效能的、具有分散式記憶體物件的快取系統 http://memcached.org
作用:減輕資料庫負載,加速動態的web應用。
優點:它屬於純記憶體的資料庫,所以快。
缺點:重啟資料庫所有資料就會丟失了。
新浪網結合memcached增加Berkeley db的持久化儲存機制和非同步主輔複製機制,使memcached具備了事務回覆能力、持久化資料儲存能力和分散式複製能力,所以Memcachedb非常適合需要超高效能讀寫速度、持久化儲存的應用場景,但最近幾年逐漸被redis等產品替代。
redis的資料都是快取在記憶體中。區別是redis會週期性的把更新的資料寫入磁碟或者把修改操作寫入追加的記錄檔案,並且在此基礎上實現了master-slave同步。
redis特點:
1 支援記憶體快取,此功能相當於memcached
2 支援持久化,這個功能相當於memcachedb,ttserver.
3 資料型別更豐富,比其他key-value庫功能更強
4 支援叢集,分散式
5 支援佇列等特殊功能
MongoDB是一個介於關聯式資料庫和非關聯式資料庫之間的產品,是非關聯式資料庫中功能最豐富,最像關聯式資料庫的,
最大的特點:支援的查詢語言非常強大。
mysql是一種關係型資料庫管理系統,是將資料儲存在不同的表中,再將這些表放入不同的資料庫中,而不是將所有資料統一存放在一個大倉庫中,這樣的設計增加了mysql的讀取速度,靈活性可管理性也得到了很大提高。訪問及管理mysql資料庫的最常用標準化語言為sql結構化查詢語言。
MariaDB是很多業界人士擔憂資料庫的老大有可能將mysql閉源,為了規避閉源風險,由此而產生了MariaDB資料庫
官方地址:https://mariadb.org.
絕大多數使用linux作業系統的大中小型網際網路網站都在使用mysql作為其後端的資料庫儲存,從大型的BAT網站,到電商平臺,分類入口網站等無一例外都使用mysql資料庫
優勢和特點:
1、效能卓越,服務穩定,很少出現異常當機
2、開放原始碼且無版權制約,自主性及使用成本低
3、歷史悠久,社群及使用者非常活躍,遇到問題,可以尋求幫助。
4、軟體體積小,安裝使用簡單,易於維護,安裝及維護成本低。
5、品牌口碑效應,使得企業無需考慮就直接用之,LAMP,LEMP流行架構
6、支援多種作業系統,提供多種API介面,支援多種開發語言,特別對流行的PHP語言有很好的支援。
相關文章
- 資料庫基礎知識資料庫
- 基礎知識梳理~資料庫資料庫
- 資料庫基礎重要知識資料庫
- GEO資料庫基礎知識資料庫
- 資料庫基礎知識介紹!資料庫
- NoSQL資料庫的基礎知識SQL資料庫
- 半導體分立器件基礎知識講解
- 資料庫安裝以及基礎知識資料庫
- 資料庫基礎知識總結(轉)資料庫
- 小白系列:資料庫基礎知識解析資料庫
- SQL與NoSQL資料庫入門基礎知識詳解SQL資料庫
- MySQL 資料庫基礎知識點複習MySql資料庫
- mysql資料庫sql語句基礎知識MySql資料庫
- mysql資料庫學習基礎知識整理MySql資料庫
- 軟體測試--資料庫基礎知識資料庫
- MySQL?資料庫的基礎知識撩磅MySql資料庫
- MySQL資料庫基礎知識及優化MySql資料庫優化
- 閃回資料庫(基礎例項講解)資料庫
- 好程式設計師大資料培訓分享Hive基礎知識講解程式設計師大資料Hive
- 扣丁學堂大資料開發之Hive基礎知識精華講解大資料Hive
- 【編測編學】MySQL資料庫基礎知識MySql資料庫
- 資料庫學習筆記 - MySQL基礎知識資料庫筆記MySql
- 基礎知識6——標準資料庫稽核——未完資料庫
- 前端基礎技術知識講解-面試圖譜前端面試
- 面試圖譜:前端基礎技術知識講解面試前端
- 資料結構基礎知識資料結構
- 達夢資料庫基礎知識(二)資料庫邏輯結構資料庫
- 學習資料庫的基礎知識的書籍資料庫
- 夯實基礎系列三:資料庫知識總結資料庫
- 【編測編學】MySQL資料庫基礎知識2MySql資料庫
- 資料庫基礎知識整理與複習總結資料庫
- 基礎知識3——資料庫初始化引數資料庫
- [TEAP早期試讀]NoSQL資料庫的基礎知識SQL資料庫
- 資料庫安全基礎入門知識簡介(轉)資料庫
- 達夢資料庫基礎知識(一)資料庫物理儲存結構資料庫
- SAP SD基礎知識之主資料
- java基礎知識--資料型別Java資料型別
- 協程庫基礎知識