NoSQL數據庫
========
NoSQL,泛指非關系型的數據庫。隨著互聯網web2.0網站的興起,傳統的關系數據庫在應付web2.0網站,特別是超大規模和高并發的SNS類型的web2.0純動態網站已經顯得力不從心,暴露了很多難以克服的問題,而非關系型的數據庫則由于其本身的特點得到了非常迅速的發展。NoSQL數據庫的產生就是為了解決大規模數據集合多重數據種類帶來的挑戰,尤其是大數據應用難題。
NoSQL數據庫的四大分類
===============
鍵值(Key-Value)存儲數據庫
--
這一類數據庫主要會使用到一個哈希表,這個表中有一個特定的鍵和一個指針指向特定的數據。Key/value模型對于IT系統來說的優勢在于簡單、易部署。但是如果DBA只對部分值進行查詢或更新的時候,Key/value就顯得效率低下了。 舉例如:Tokyo Cabinet/Tyrant, Redis, Voldemort, Oracle BDB.
列存儲數據庫
--
這部分數據庫通常是用來應對分布式存儲的海量數據。鍵仍然存在,但是它們的特點是指向了多個列。這些列是由列家族來安排的。如:Cassandra, HBase, Riak.
文檔型數據庫
--
文檔型數據庫的靈感是來自于Lotus Notes辦公軟件的,而且它同第一種鍵值存儲相類似。該類型的數據模型是版本化的文檔,半結構化的文檔以特定的格式存儲,比如JSON。文檔型數據庫可 以看作是鍵值數據庫的升級版,允許之間嵌套鍵值。而且文檔型數據庫比鍵值數據庫的查詢效率更高。如:CouchDB, MongoDb. 國內也有文檔型數據庫SequoiaDB,已經開源。
圖形(Graph)數據庫
--
圖形結構的數據庫同其他行列以及剛性結構的SQL數據庫不同,它是使用靈活的圖形模型,并且能夠擴展到多個服務器上。NoSQL數據庫沒有標準的查詢語言(SQL),因此進行數據庫查詢需要制定數據模型。許多NoSQL數據庫都有REST式的數據接口或者查詢API。[2] 如:Neo4J, InfoGrid, Infinite Graph.
因此,我們總結NoSQL數據庫在以下的這幾種情況下比較適用:1、數據模型比較簡單;2、需要靈活性更強的IT系統;3、對數據庫性能要求較高;4、不需要高度的數據一致性;5、對于給定key,比較容易映射復雜值的環境。
- 目錄
- 第一章:PHP簡介、開發環境、基本語法
- 0.0 各類操作系統下環境配置
- 1.0 基本語法和控制符
- 1.1 變量常量
- 1.1.1 顯示數據Echo、Var_dump
- 1.1.2 數據類型
- 1.2 判斷邏輯(if、switch)
- 1.3 循環邏輯(for、while)
- 1.4 數組
- 1.4.1 Foreach循環
- 1.4.2 數組操作
- 1.5 函數
- 1.5.5 編碼規范PSR
- 1.6 魔術變量
- 1.7 超全局變量
- 1.8 時間日期
- 1.9 字符串操作
- 1.10 開發/部署環境配置
- 1.11 PECL 、 Yaf 、 Swoole
- 第二章:PHP+數據庫
- 2.0 SQL入門
- 2.1 PDO連接、操作數據庫
- 2.2 PDO的CURD操作
- 2.3 預處理
- 2.4 SQLite輕量級數據庫
- 2.5 NoSQL數據庫
- 2.6 緩存 、主從復制、集群 、負載均衡
- _連接 + 管理數據庫(過期)
- _增刪查改CURD操作(過期)
- 第三章:PHP面向對象 + 常用功能
- 5.1 面向對象入門
- 5.2 面向對象特性
- 5.3 文件上傳
- 5.4 富文本編輯
- 5.6 MVC框架模式
- 5.7 文件讀取函數
- 5.8 URL相關
- 5.9 Serialize序列化
- 第四章:Cookie+Session+用戶模塊
- 4.1 Cookie
- 4.2 Session
- 4.3 用戶中心
- 4.4 SSO單點登錄
- 4.5 類 C S 架構REST和Oauth用戶中心
- 第五章:Linux基礎+Git入門+遠程部署
- 3.1 Linux基礎
- 3.2 Git使用
- 3.3 遠程部署
- 第六章:PHP框架
- 第七章:PHP安全和測試
- 第八章:包管理工具+PSR代碼規范
- PHP社區代碼規范 PSR
- 第九章:PHP測試 + PHP調試
- 第十章:性能優化+網站架構+第三方服務
- 10.1 云計算和網站架構
- 第十一章:PHP拓展
- 拓展:十二章 PHP爬蟲
- 拓展:十三章 CMS實戰
- 拓展:十四章 微信公眾號開發
- 拓展:第十五章 注釋、API文檔、IDE自動提示
- 拓展:第十六章 API開發
- 附錄:參考資料
- 附錄:實用在線工具
- 實用技巧和常用函數
- Linux下WDCP主機面板配置
- 使用Git部署到MoPass云
- Curl內網訪問封裝函數
- 附錄:開源組件參考