目錄二:資料庫的演變方向
三:資料庫基本概念
四;軟體開發架構
五:資料庫的分類(兩大類)
六:sql語句的由來
七:資料庫的本質
一:資料庫演變史
1.什麼是資料庫?
1、顧名思義,資料庫(db,database)是按照資料結構來組織、儲存和管理資料的「倉庫」。
2、資料庫指的是以一定方式儲存在一起、能為多個使用者共享、具有盡可能小的冗餘度的特點的、與應用程式彼此獨立的資料集合。
3、資料庫可以通過統一的一些指令對資料進行增、刪、改、查(create,retrive,updata,delete)等操作。
4,看作是冰箱,可以訪問物品的地方
2.資料庫的作用
1.實現資料共享:
資料共享包含所有使用者可同時訪問資料庫中的資料,也包括使用者可以用各種方式通過介面使用資料庫,並提供資料共享。
2.減少資料的冗餘度:
同檔案系統相比,由於資料庫實現了資料共享,從而避免了使用者各自建立應用檔案。減少了大量重複資料,減少了資料冗餘,維護了資料的一致性。
3.保持資料的獨立性:
資料的獨立性包括邏輯獨立性(資料庫中資料庫的邏輯結構和應用程式相互獨立)和物理獨立性(資料物理結構的變化不影響資料的邏輯結構)。
4.資料實現集中控制:
檔案管理方式中,資料處於一種分散的狀態,不同的使用者或同一使用者在不同處理中其檔案之間毫無關係。利用資料庫可對資料進行集中控制和管理,並通過資料模型表示各種資料的組織以及資料間的聯絡。
5.資料一致性和可維護性:
以確保資料的安全性和可靠性:主要包括:安全性控制、完整性控制、併發控制,使在同一時間週期內,允許對資料實現多路訪問,又能防止使用者之間的不正常互動作用。
6.故障恢復:
由資料庫管理系統提供一套方法,可及時發現故障和修復故障,從而防止資料被破壞。資料庫系統能盡快恢復資料庫系統執行時出現的故障,可能是物理上或是邏輯上的錯誤。比如對系統的誤操作造成的資料錯誤等。
二:資料庫的演變方向
1.檔案操作階段(儲存資料(讀寫方式))
jason|123|read
缺點:
每個人資料格式都不相同 程式之間無法相容
2.軟體開發目錄規範(儲存資料分類不同(資料夾))
db 資料儲存檔案
缺點:
雖然儲存目錄相同了,但是每個人資料格式都不相同 程式之間無法相容
3.儲存位置和格式(解決程式之間無法相容)
使用資料庫的目的就是為了解決資料不相容的問題,基於網路使資料在某乙個地方以相同的格式統一儲存,實現資料共享(完成資料之間的格式與儲存位置統一)
4.只儲存本地自己資料,彼此不共享(單機模式)
單機遊戲: 不需要連線網路就可以玩,在本機儲存資料,你的通關記錄,賬號密碼,都儲存在本機
缺點:限制於在一台計算機玩,如果你計算機壞掉了,在換一台,那這些記錄都沒有。你註冊的賬號換一台電腦登入也是沒有記錄的,還是初始化狀態。(其實單機好像不需要註冊賬號)
5.資料儲存全部統一在相同的地方完成(聯機模式)
聯機遊戲:不在本地儲存資料。所有人基於網路把自己的資料儲存到相同的位置,資料儲存的格式都相同,訪問的格式也相同,所以不管在那台計算機上,登入賬號密碼就可以訪問到我們儲存在資料庫的資訊,這樣就實現了相容問題。
6.集群的概念
如果資料庫機房內,伺服器著火了,**了,海嘯了。那這樣是不是所有使用者的資料都會流失,所以我們用到了集群。 多台計算機從事相同的工作內容
集群一般由兩個或兩個以上的伺服器組建而成,每個伺服器被稱為乙個集群節點,集群節點之間可以相互通訊。通訊方式有兩種,一種是基於rs232線的心跳監控,另一種是一塊單獨的網絡卡 來跑心跳。因而,集群具有節點服務狀態監控功能,同時還必須具有服務實體擴充套件功能,可以靈活地增加和剔除某個服務實體。
集群中,同樣的服務可以由多個服務實體提供。因此,當乙個節點出現故障時,集群的另乙個節點,可以自動接管故障節點的資源,從而保證服務持久、不間斷地執行。因而集群具有故障
自動轉移功能。
乙個集群系統必須擁有共享的資料儲存,因為集群對外提供的服務是一致的,任何乙個集群節點執行乙個應用時,應用的資料集中儲存在節點共享空間內,而每個節點的作業系統上僅執行應用的服務,同時儲存應用程式檔案。
三:資料庫基本概念
1.什麼是資料(data)?
事物的狀態
2.什麼是記錄?
一組資料結構成一條記錄,相當於檔案中的一行內容,如1,tanke,male,18
3.什麼是表?
檔案4.什麼是庫?
資料夾5.什麼是資料庫管理系統(database management system 簡稱dbms)
管理資料的套接字軟體,cs架構
6.什麼是資料庫伺服器?
執行有dbms伺服器的計算機,該計算機對記憶體和硬體要求都很高
四;軟體開發架構
1.c/s架構
客戶端 服務端
2.b/s架構瀏覽器 服務端
本質:bs架構本質也是cs架構
五:資料庫的分類(兩大類)
1.關係型資料庫(簡稱rdbms)
具有固定的表結構 並且表與表之間可以通過外來鍵建立關係
mysql、mariadb、oracle、postgresql、sqlserver、sqlite、db2
sql server
微軟公司的產品,主要應用於大中型企業,如聯想、方正等。
oracle
主要用於銀行、鐵路、飛機場等。該資料庫功能強大,軟體費用高。
也是甲骨文公司的產品。
mysql
因為開放源**這個資料庫是免費的,他現在是甲骨文公司的產品。
mariadb
sun被甲骨文收購後,mysql 的原創人員有拉出另外乙個分支,
命名mariadb 。該資料庫被維基百科,facebook 甚至 google
等技術巨頭使用。 mariadb 是一種可為 mysql 提供外掛程式替換功能的
資料庫伺服器。開發人員的首要關注點是安全性,在每個版本發布時,
開發人員還會合併所有 mysql 的安全修補程式,
並在需要時對其進行增強。
注意: sql語句通用
2.非關係型資料庫
沒有固定的表結構 資料儲存採用k:v鍵值對的形式
redis、mongodb、memcache
mongodb(可用來作為後端資料庫管理軟體)
redis(多用來作為快取)
memcache(多用來作為快取)
3.關係型資料庫與非關係型資料庫語句
我們通常將操作關係型資料庫的語句稱為:sql語句
我們通常將操作非關係型資料庫的語句稱為:nosql語句
有時候甚至使用nosql指代非關係型資料庫
4.資料庫可以指代的
1.程式
2.資料庫管理軟體
3.存放資料的某個'資料夾'
六:sql語句的由來
1.什麼是sql語句?
就是運算元據庫軟體的命令
2.為什麼要有sql語句?是因為資料庫能夠支援的語言非常的多 為了避免識別問題
發明了sql語句 規定只要想使用資料庫就統一使用sql語句操作
七:資料庫的本質
資料庫本質其實就是一款cs架構的軟體
所以我們所有人其實都可以寫一款資料庫軟體
在市面上確實有很多資料庫軟體
資料庫結構演變
以電商 為例,在 建立之初,日均訪問量可能只有幾百到幾千人,這時整個業務後台可能就乙個資料庫,所有業務表都放在這個資料庫中,一台普通的伺服器就可以支撐,而且這種架構對業務開發人員也非常友好,因為所有的表都在乙個庫中,這樣查詢語句就可以靈活關聯了,使用起來很便捷。圖1 所有業務表都在乙個資料庫中 但是...
資料庫技術演變與發展
隨著資訊科技的發展,採用兩維表結構的資料庫,已經無法儲存大量的多 非結構化複雜資料,以及各類資料之間的關係。關係型資料庫亟待突破。資訊科技平台的選擇常常是建立或重新建立應用系統時的關鍵問題,而資料庫正是其中需要做出選擇的關鍵平台。關聯式資料庫管理系統曾處於技術主流而獨領 但是這種傳統的資料庫管理系統...
資料庫發展史
資料庫 database 是按照 資料結構來組織 儲存和管理資料的倉庫,它產生於距今六十多年前,隨著 資訊科技和市場的發展,特別是二十世紀九十年代以後,資料管理不再僅僅是儲存和管理資料,而轉變成使用者所需要的各種資料管理的方式。資料庫有很多種 型別,從最簡單的儲存有各種資料的 到能夠進行海量 資料儲...