軟件系統的數據存儲設計
數據庫的設計是系統開發必不可少的環節,數據庫設計的合理性將會節省大量數據存儲空間,同時保證了數據的完整性以及整個系統運行的暢通高效性。此外,優秀的數據庫設計還應當考慮到數據庫應用系統的后續開發,保證數據查詢的高效性,滿足用戶的應用需求,加快網頁訪問瀏覽速度,給用戶帶來良好的使用體驗等等。
一般涉及大規模數據的查詢處理時,用戶查詢數據的效率就會體現的越發明顯,而查詢數據的效率將會直接影響到用戶的使用感,如果數據庫表設計不合理, 數據訪問遲緩造成系統的卡頓,這對于系統的性能而言無疑是致命的。因此在系統設計的初期就需要對數據的特征作詳細分析整理,當充分了解到被處理數據互相之間的聯系后再設計數據庫表就會避免很多后續工作意外的發生,既減少冗余和耦合同時也減少了不必要的工作量。如下表所示是系統內所有數據表的說明,后續主要對他們中的核心字段以及字段對應之間的聯系和信息進行介紹說明。
RDBMS 讀寫分離
讀寫分離是基于主從復制架構,一個主庫,有多個從庫,主庫主要負責寫,寫完后主庫會自動把數據給同步給從庫。主從復制,是用來建立一個和主數據庫完全一樣的數據庫環境,稱為從數據庫,主數據庫一般是準實時的業務數據庫。一臺服務器充當主服務器,而另外一臺服務器充當從服務器。此時主服務器會將更新信息寫入到一個特定的二進制文件中,并會維護文件的一個索引用來跟蹤日志循環,這個日志可以記錄并發送到從服務器的更新中去。一臺從服務器連接到主服務器時,從服務器會通知主服務器從服務器的日志文件中讀取最后一次成功更新的位置。然后從服務器會接收從哪個時刻起發生的任何更新,然后鎖住并等到主服務器通知新的更新。
?讀寫分離原理圖
主庫將變更寫入binlog日志,然后從庫連接到主庫之后,從庫有一個 IO 線程,將主庫的 binlog 日志拷貝到自己本地,寫入一個 relay中繼日志(relay log)中。接著從庫中有一個SQL線程會從中繼日志讀取binlog,然后執行binlog日志中的內容,也就是在自己本地再次執行一遍SQL語句,從而使從服務器和主服務器的數據保持一致。
主從配置就是圍繞這個原理配置,也就是說:從庫會生成兩個線程,一個I/O線程,一個SQL線程;I/O線程會去請求主庫的binlog,并將得到的binlog寫到本地的relay-log(中繼日志)文件中;主庫會生成一個log dump線程,用來給從庫I/O線程傳binlog;SQL線程,會讀取relay log文件中的日志,并解析成sql語句逐一執行。
審核編輯 黃宇
-
數據存儲
+關注
關注
5文章
997瀏覽量
51649 -
軟件系統
+關注
關注
0文章
65瀏覽量
9639
發布評論請先 登錄
#### KEPServerEX 數據存儲插件\\-2
嵌入式系統存儲的軟件優化策略
電腦軟件怎么云存儲文件,電腦軟件怎么搭建云存儲文件

數據怎么云存儲在電腦,數據怎么操作才能云存儲在電腦

評論