Redis(一)——NoSQL入門和概述
什麼是NoSQL
NoSQL=Not Only SQL,意為“不僅僅是SQL”,即非關系型資料庫。
NoSQL特點
- 易擴充
- 大資料量,高性能
- 多樣靈活的資料模型
Redis核心
- KV:鍵值對
- Cache:緩存
- Persistence:持久化
大資料時代的3V
- 海量Volume:海量的資料
- 多樣Variety:多樣化的資料
- 實時Velocity:實時的資料
網際網路需求的3高
- 高并發
- 高可擴
- 高性能
橫向擴充和縱向擴充
縱向擴充:如計算機加硬體,總有極限
橫向擴充:相當于啟動多個執行個體做同一件事情,有點像docker的容器和負載均衡
NoSQL資料模型簡介——聚合模型
- KV鍵值對
- Bson,類似于JSON
- 列族:如圖所示
- 圖形:如圖所示
NoSQL的CAP理論
CAP理論:
- C:強一緻性
- A:高可用性
- P:分布式容忍性
CAP的3進2:
在分布式系統中,最多隻能選取CAP理論的兩點,如CA、CP、AP。
ps:
其中AP為大多數網站架構的選擇,
CA就是以前的關系型資料庫,如MySQL
CP指的就是Redis、MongoDB
BASE
BASE:就是為了解決關系型資料庫強一緻性引起的問題而引起的可用性降低提出的解決方案。
- 基本可用(Basically Available)
- 軟狀态(Soft State)
- 最終一緻(Eventually consistent)
思想:通過讓系統放松某一時刻資料一緻性要求來換取系統整體伸縮性和性能上的改觀。
分布式和叢集
分布式:不同的多台伺服器上面部署不同的服務子產品(工程),他們之間通過RPC/RMI之間的通信和調用,對外提供服務群組内協作。
叢集:不同的多台伺服器上面部署相同的服務子產品,通過分布式排程軟體進行統一排程,對外提供服務和通路。
版權聲明:本文為CSDN部落客「weixin_34032827」的原創文章,遵循CC 4.0 BY-SA版權協定,轉載請附上原文出處連結及本聲明。
原文連結:https://blog.csdn.net/weixin_34032827/article/details/91873541