1、程式所有的元件就不可能執行在一台機器上
#因為這台機器一旦掛掉則意味著整個軟體的崩潰,並且程式的執行效率依賴於承載它的硬體,而一台機器機器的效能總歸是有限的,受限於目前的硬體水平,就一台機器的效能垂直進行擴充套件是有極限的。2、資料安全問題#於是我們只能通過水平擴充套件來增強我們系統的整體效能,這就需要我們將程式的各個元件分布於多台機器去執行。
#根據1的描述,我們將程式的各個元件分布到各台機器,但需知各元件仍然是乙個整體,言外之意,所有元件的資料還是要共享的。但每台機器上的元件都只能操作本機的檔案,這就導致了資料必然不一致。3、併發根據2的描述,我們必須寫乙個socket服務端來管理這台機器(資料庫伺服器)上的檔案,然後寫乙個socket客戶端,完成如下功能:#於是我們想到了將資料與應用程式分離:把檔案存放於一台機器,然後將多台機器通過網路去訪問這台機器上的檔案(用socket實現),即共享這台機器上的檔案,共享則意味著競爭,會發生資料不安全,需要加鎖處理。。。。
#1.遠端連線(支援併發)1. 有約束#2.開啟檔案
#3.讀寫(加鎖)
#4.關閉檔案
2. 基於硬碟的儲存 (就是將資料儲存到硬碟上, 持久化 === 落地)
典型代表:
1. 沒有約束 (key--->value)
2. 基於記憶體儲存 (將資料放入到記憶體中) 斷電資料就消失
典型代表:
客戶端socket客戶端, 連線服務端, 傳送指令 (sql語句)
服務端socket服務端, 接收客戶端的指令, 並將結果返回給客戶端
資料庫分類 SQL資料庫 NoSQL資料庫
一 資料庫產品 二.sql資料庫 sql 是所有關係型資料庫的公共語言 關係型資料庫,是建立在關係模型基礎上的資料庫,借助於集合代數等數學概念和方法來處理資料庫中的資料,我們平常使用的資料庫,像mysql,oracle,sql server等都是傳統的關係型資料庫。關係模型指的就是二維 模型,而乙個...
資料庫語言分類
dml data manipulation language 它們是select update insert delete,就象它的名字一樣,這4條命令是用來對資料庫裡的資料進行操作的語言 ddl data definition language ddl比dml要多,主要的命令有create alt...
資料庫的分類
1關係型資料庫 2非關係型資料庫 3兩種資料庫之間的區別 3.1關係型資料庫的特性 1 關係型資料庫,是指採用了關係模型來組織資料的資料庫 2 關係型資料庫的最大特點就是事務的一致性 3 關係模型指的就是二維 模型 表 而乙個關係型資料庫就是由二維表及其之間的聯絡所組成的乙個資料組織。3.2關係型資...