版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、SQL Server 高可靠與高延展性的系統架構設計,精誠公司- 恆逸資訊教育訓練中心 陳俊宇,本場次是假設您,本場設計為 Levle 300(高級場次) 假設您具備以下基本技術知識: 實際 Windows 2000 & 2003 管理經驗 瞭解何謂 Microsoft 叢集(Microsoft Clustering) Network Load Balancing 叢集(NLB) 伺服器叢集(Server Cluster,MSCS) Component Load Balancing (元件平衡負載,CLB) 實際 SQL Server 2000 管理經驗 容錯移轉叢集(Failover Clu
2、stering) 記錄檔傳送(Log Shipping) 複寫(Replication) 備份與還原(Backup & Restore),講座大綱,企業永續經營計畫 災難復原計畫 異地備援計畫 高可用性分析 SQL Sever 高可用性的技術 SQL Server 高延展性的技術,天災人禍讓企業重視永續經營計畫,近年來的天災、人禍不斷: 天災:美國的卡翠娜(Katrina)颶風,南亞的大海嘯,台灣的921地震與風災、火災、SARS疾病等等。 人禍:美國的 911 事件、英國倫敦的地鐵爆炸事件等等。 永續經營計畫 一種策略規劃(Business Continuity Plan,BCP) 企業對於
3、各項天災人禍,事前規劃其處理方針,並模擬演練;當災難發生時,就可以利用企業永續經營計畫,有計畫的在第一時間內回復企業正常的營運與持續運作。 擬定有效的 BCP 分析計算:發生災難的企業損失,是其計算ROI(投資報酬率)的要點;BCP不是生財計畫。 功能強大的軟、硬體,但因費用高貴,很難引起高層主管的購買意願。 也必須要能確保員工的作業能與公司的IT系統一起同步。 如果備援系統能在 1小時內復原,那麼 BCP 就要考慮到公司員工是否也能在同一時間內就定位,執行所有例行作業。 是確保公司營運的策略,一般包含有: 異地備援(Remote Backup) 災難復原計畫(Disaster Recover
4、y,DR),未雨綢繆 有備無患,何謂異地備援,異地備援(Remote Backup) 是將企業內所需的資料,分開異地存放;讓不同地點之資料,隨時進行同步化動作。 當發生災難時,備援設備即可提供運作服務;當一地的設備發生問題,另一地備援設備可立即接手取代繼續運作。 實踐步驟 多半利用儲存設備廠商所提供及時同步與非即時同步機制( 對 SAN 或對 NAS ) 資料庫系統面臨的課題 使用中的資料檔案該如何備份?尚未完成交易的資料,是否要進行同步? 備份代理程式。,何謂災難復原計畫,災難復原計畫(Disaster Recovery,DR) 是一種發生災難時的執行流程,或者成為災難應變術。 讓您當遇到各
5、種營運中斷時,快速地回復系統運行,降低資料損毀的可能性。,復原程序的資源 針對各種災難,在系統復原後,所產生的資料流失之分析。 各種災難在復原系統時的詳細步驟 系統復原後,分析檢視該系統是否正常運行的方法。,可用的資源 相關的軟體監控工具之記 錄檔。 安裝的軟體清單與設定參數、相關的帳號與密碼、文件與程式檔案等等 技術支援顧問的聯絡方式,待命站台的資源 Hot Standby Warm Standby Cold Standby,各種災難情境的資訊 外在環境:天災、電源中斷、硬體故障、網路通訊失敗等等 ,以及使用者造成的損毀、軟硬體的損毀等等 相關子系統:相關的伺服器系統、應用程式等等,災難復原
6、計畫,講座大綱,企業永續經營計畫 災難復原計畫 異地備援計畫 高可用性分析 SQL Sever 高可用性的技術 SQL Server 高效能的技術,高可用性的相關技術之介紹,我們將以 SQL Server 2000 為主軸,討論其的相關技術: Failover Clustering(容錯移轉叢集) 將多台的伺服器集結成單一叢集,叢集中的電腦或應用程式失敗時,自動重新起始已失敗的應用程式。 Log Shipping(記錄檔傳送) 利用記錄檔傳送將交易記錄檔定期送到另一個資料庫。 Transactional Replication(交易式複寫) 利用交易式複寫,一開始會將資料的快照集套用在訂閱者端
7、,然後當發行者端有資料修改時,則會捕捉個別的交易並傳播至訂閱者端。,容錯移轉叢集之分析(一),先建置好 Windows的伺服器叢集(Server Cluster,MSCS) 伺服器叢集的功能:將多台的伺服器集結成單一叢集,叢集中的電腦或應用程式失敗時,自動重新起始已失敗的應用程式。,伺服器叢集的重要組成元素 節點(Node) 一組叢集中的某一個伺服器。 Heartbeat 網路 各節點會定期傳送稱為跳動訊息(heartbeat message) 的網路訊息給彼此,做判斷錯誤移轉的依據。 共用叢集磁碟(Shared Disk) 個個節點在同時一刻,僅有一個節點有權限可以掌控該資源;透過 MSCS
8、來管理。 External Network: 提供給使用者、應用程式可連線到叢集服務。,容錯移轉叢集之分析(二),運作原理 多台的伺服器集結成單一叢集,對外共用一個虛擬的IP 與虛擬伺服器的名稱,對內透過 heartbeat 網路來判斷是否要做容錯移轉。且透過 MSCS 的掌控,同一時時間,僅有一個節點對共用叢集磁碟(Shared Disk)有控制權。 當確認某節點毀損時,自動地由另一個節點來接手(MSCS 來控制),其上的叢集資源(Cluster Resource)亦會自動重新啟動! 資料不遺失(因為還是存取同一資料來源)、轉移時間約需數十秒時鐘。 Active/Passive 模式:A/P
9、 簡單說就是指:一台在對外服務,一台對內等另一個節點掛掉! Active/Active 模式:A/A 就是兩個A/P,互為備援。兩組虛擬的IP 與虛擬伺服器的名稱 SQL Server 2000 的容錯移轉叢集(Failover Clustering) 若已建置好作業系統的MSCS後,可再安裝 SQL Server 的容錯移轉叢集。這樣讓 SQL Server 也成為叢集資源! SQL Server 中的 A/A 是指同時有兩台不同 SQL Server 在為使用者服務。,容錯移轉叢集之分析(三),答客問(一),Q1. 容錯移轉提供負載平衡嗎? A. 不。SQL Server 2000 叢集並
10、未提供負載平衡,它只提供容錯移轉叢集 (Failover Clustering)。 Q2. 叢集可支援的節點數量? A. 雖然32位元版本的Windows 2003 Enterprise 版本與 Windows 2000 Datacenter 版本都可以支援 8 個節點 但是SQL Server 2000 的 32位元版本則是支援 4 個節點;必須是SQL Server 2000 的 64位元版本或SQL Server 2005 就可以支援 8 個節點。 Q3. 建置SQL Server 容錯移轉叢集的準備事項與安裝步驟? A. 請參考本簡報的參考文件中有詳盡的說明。這裡提示幾個重點: SQL
11、 Server 與 SQL Agent 的啟動服務帳號 必須是網域使用者帳號。隸屬於各個節點的本機Administrators成員。 具備以下的權限 作為作業系統的一部分(Act as part of the operating system) 以服務方式登入(Log on as a service) 更換處理層權杖(Replace process level tokens),答客問(二),Q4. 錯誤發生後移轉的時間? 系統偵測到錯誤發生,控制權移轉到備援的節點,重新啟動SQL Server,各個資料庫進行復原流程(Recovery Process),約20秒到數分鐘不等。Recovery
12、= Roll forward (Redo) + Rollback (Undo) 建議刪除沒在使用的資料庫。 不要調整檢查點(checkpoint)的時間。 使用 AWE 記憶體(超過 4GB)配置時,會增加移轉的時間;並建議安裝KB:83268的補丁程式。,答客問(三),Q5. 前端應用程式該如何設計? A. 當容錯移轉完成後,對前端應用程式而言,其連線的IP與伺服器名稱都沒有改變。建議: 因為後端資料庫的連線已中斷,需要加入錯誤處理的程式碼。 發生連線中斷時,自動重新連線、自動執行使用者先前的命令。 通知使用者重新登入系統 Q6. 共用的叢集磁碟僅有一份,是否會有問題? A. 採用多個節點共
13、用一份叢集磁碟的設計方式,無須考量資料同步的問題,所以效能優異。但卻會有單一共用叢集磁碟損毀與距離受限等等的問題 SQL Server 2000。 採取多個節點,各自保留一份資料的設計方式,其交易效能將會受到同步資料的影響,但是沒有單一共用叢集磁碟損毀與距離受限等等的問題 SQL Server 2005 資料庫鏡像(Database Mirroring),記錄檔傳送之分析(一),記錄檔傳送(Log Shipping) 將交易記錄檔定期送到另一個資料庫中。,記錄檔傳送之分析(二),監視伺服器,主要伺服器,次要伺服器(可多台),記錄檔傳送之分析(三),記錄檔傳送的運作原理 從來源資料庫中連續地備份
14、(Backup)交易記錄檔,再複製(Copy)並還原(Restore)至目的資料庫,讓目的資料庫與來源資料庫保持同步。 時間差的最小單位是分鐘。 建置的單位:使用者的資料庫。 可以擁有多個待命伺服器。 SQL Server 2000 企業版 可輕鬆地設定記錄檔傳送,使用在 Enterprise Manager 中的資料庫維護計劃精靈來設定記錄檔傳送功能。 其他 SQL Server 2000 版本 SQL Server 2000 Resource Kit 中有提供工具-Simple Log Shipper。,記錄檔傳送之分析(四),記錄檔傳送的組成元素 主要伺服器(Primary Server
15、) 實際處理資料的正式伺服器;此伺服器內擁有來源資料庫。 次要伺服器(Secondary Server) 用來存放目的資料庫,用於複製與回存來源資料庫的交易記錄檔。 監視伺服器(Monitoring Server) 用於用來監控主要伺服器與次要伺服器。 建議您將監視伺服器置放於獨立的第三台伺服器上。如此一來,無論主要伺服器或是次要伺服器執行工作失敗時,該監視器都可以送出警示(Alert)。,記錄檔傳送與主從架構(Client-Server),記錄檔傳送與 Web Server 架構,答客問(一),Q1.次要伺服器是否可以當作報表伺服器來使用? A. 因為記錄檔傳送利用的是資料庫備份與還原機制,
16、在資料庫復原時,是不可以有使用者連線的,否則將導致復原作業失敗。 除非是拉長還原的間隔(例如:10分鐘),查詢則採批次查詢方式,避開此還原的時間點,但這將也會造成資料不一致與資料損失等等的問題。 所以筆者不建議將次要伺服器作為平衡負載用的報表伺服器。 Q.2 記錄檔傳送是否會影響原本的備份策略? A. 因為記錄檔傳送也是利用備份與還原機制所完成,所以建議您就使用記錄檔傳送來作為資料庫的備份策略。,答客問(二),Q3. 記錄檔要如何自動移轉呢? A. 記錄檔傳送無法自動偵測錯誤與自動移轉,必須要倚靠資料庫管理師手動進行移轉。可用的方法有: 結合 NLB 技術,虛擬IP位址的方式來完成。 修改連線
17、字串、DSN(資料來源名稱)、ODBC、COM+ 等等。 修改伺服器名稱 將待命伺服器修改成與主要伺服器同名。 伺服器又要重新開機。 移轉後,對前端的應用程式的影響: 與後端資料庫的連線被中斷,必須加入錯誤處理的程式碼。 發生連線中斷時,自動重新連線與自動執行使用者先前的命令。 通知使用者重新登入系統 ,交易式複寫之分析(一),使用交易式複寫時,一開始會將資料的快照集套用在訂閱者端,然後當發行者端有資料修改時,則會捕捉個別的交易並傳播至訂閱者端。 簡單來說:您在發行者端的動作(Insert / Update / Delete),會被傳遞到訂閱者端上,再重複執行一次(SQL Server 自動會
18、做最佳化的動作);僅數秒鐘的時間差。 適合的時機: 您希望一發生累加式更新時,能立即傳播給訂閱者。 您希望交易能符合 ACID 屬性進行。 訂閱者與發行者之間的連線穩定及/或頻繁時。,交易式複寫之分析(二),Immediate Updating Subscriber 立即更新型訂閱者,2PC, RPC,Publisher 發行者,Distributor 散發者,Read-Only Subscriber 唯讀型訂閱者,(完整或是分割的資料集),交易式複寫之分析(三),適合的應用 可用於 Reporting,Decision Support,Data Warehousing 適合以查詢為主的網站架
19、構 高容量的 Production Sites 使資料貼近使用者 (提供更多站台自主性及高效率網路使用的方式)。 面臨的挑戰 更新資料 若 Publisher 暫時無法連線時,則 Subscriber 無法更新資料。 利用:非同步傳輸來更新資料 若 Subscriber 在離線狀況下,將資料交付確認,則資料將會傳送到 Queued 中。 Queued 可以存在: SQL Server MSMQ Queue Reader agent(佇列讀取器代理程式),可更新的訂閱,立即更新的 訂閱者,佇列更新的 訂閱者,發行者,散發者,佇列讀取器 代理程式,可靠的 網路連線,佇列,不穩定的網路連線,立即更新
20、與佇列更新的結合,立即更新,1,使用立即更新,2,網路連線中斷,3,切換成佇列更新,4,當網路恢復連線,自動由佇列中取出,5,繼續使用立即更新,佇列,中央發行與散發之設計,莫斯科,羅馬,巴黎,雅典,倫敦,柏林 總部,中央作發行者 兼任散發者,獨立出散發者,中央作發行者 兼任散發者,重新再度發行,西雅圖,舊金山,達拉斯,雪梨,香港,北京,東京,自舊金山將資料發行到西雅圖、達拉斯與東京,慢速連線,再由東京轉發行到北京、香港與雪梨,答客問,Q1. 使用交易式複寫要注意哪些事情? A. 複寫機制適合用於資料庫結構已經穩定的環境,如果需要經常新增、刪除資料表等物件、安全性的設定等等,這都會需要重新建立出
21、版品(Publication)後,再複寫到訂閱者(Subscriber)。 複寫技術需要考量的環境很多,需要資料庫管理師與程式設計師有良好密切的合作。 每個資料表都必須要主索引鍵。 安裝最新的SP3a 或 SP4。 Q2. 前端應用程式要如何設計? A. 由提升可用性的角度來分析 結合 NLB 技術,虛擬IP位址的方式來完成。 修改連線字串、DSN(資料來源名稱)、ODBC、COM+ 等等。 修改伺服器名稱 將待命伺服器修改成與主要伺服器同名。 伺服器又要重新開機。 移轉後,對前端的應用程式的影響: 與後端資料庫的連線被中斷,必須加入錯誤處理的程式碼。 發生連線中斷時,自動重新連線與自動執行使
22、用者先前的命令。 通知使用者重新登入系統 ,講座大綱,企業永續經營計畫 災難復原計畫 異地備援計畫 高可用性分析 SQL Sever 高可用性的技術 SQL Server 高延展性的技術,使用聯盟式資料庫伺服器,伺服器的延展性 向上延展(Scale-up) 向外延展(Scale-out) 聯盟式資料庫伺服器(Federation Server) 以水平分散 資料的方式,分攤整群伺服器的資料庫處理負載。 這些伺服器的管理是各自獨立的,但是會共同處理來自應用程式的資料庫需求;如此一群共同合作的伺服器就稱為聯盟。 利用分散式資料分割檢視表(Distributed Partitioned Views,
23、DPV)來實踐。,分散式資料分割檢視表(一),規劃應用系統的資料分割方式,以將資料分別存放於叢集的各個節點 使用CHECK constraint 將資料表格分割為互不重疊的成員資料表區間(member tables) 使用連結伺服器連結所有的節點 sp_addlinkedserver node1 sp_setnetname node1, MACHINE NAME 在每一個節點上建立檢視表以對應到所有的成員資料表,分散式資料分割檢視表(二),對稱式資料分割 將關聯的資料放置在相同的成員伺服器上。 如此一來,大多數 SQL 陳述式會連線到正確成員伺服器的路徑,且需要用到位於其他成員伺服器上資料的情
24、形將會降到最低。 分散式的分割檢視表之設計目標,可以以 80/20 規則來說明: 設計資料分割,使大多數的 SQL 陳述式可以連線到至少具有百分之八十的資料的成員伺服器,而只有百分之二十或更少的資料需要執行分散式查詢。 資料是均勻地分割並放置在所有成員伺服器上。,不對稱的資料分割 但是大多數應用程式都具有複雜的資料存取模式 例如,資料庫中只有一部份的資料表可以進行分割,未被分割的資料表會保留在原來的伺服器上。 將資料庫中部分無法進行對稱性資料分割的資料表以非對稱性的方式分割,可以大幅提升資料庫的效能。 這是因為成員資料表已經移動到成員伺服器,降低了原始伺服器上的負載。 執行一系列反覆的、非對稱
25、性改進,可以成功地對現有的大型系統進行資料分割。 在每個步驟中所選擇進行分割的資料表,通常是在該時間中可以提供最高效能的資料表。,使用交易式複寫與點對點複寫,結論,高可用性 並不是單一的IT技術或是任一家的廠商可以提供,必須協同群力,由軟硬體、相關的基礎環境與顧問們等等的整合配套才能達成。 指導方針:企業永續經營計畫 實踐的方式:災難復原計畫、異地備援計畫 評估指標:高可用性達到幾個 9 使用SQL Server 所提供 Failover Clustering(容錯移轉叢集) 、Log-Shipping(記錄檔傳送) 與 Transactional Replication(交易式複寫)等技術,
26、就可以快速地建置高可用性的系統。 高延展性的技術 交易複寫技術、分散式資料分割檢視表(DPV),參考資源(一),Microsoft SQL Server - 第一手消息 SQL Server 2000 & 2005 線上說明 官方文件 2072:“Administering a Microsoft SQL Server 2000 Database” 2073:“Programming a Microsoft SQL Server 2000 Database” 2591:“Implementing Replication Using Microsoft SQL Server 2000” 2087:” Implementing Microsoft Windows 2000 Clustering” SQL High Availability Planning Guide SQL High Availability Deployment Guide 學習的最佳伙伴 微軟
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 企业内部员工晋升与激励机制
- 企业内部档案管理制度手册
- 细胞治疗安全性研究
- 中医危重症护理常规课件
- 中医护理在儿科的应用
- 2026年广西交通职业技术学院单招职业适应性考试题库附参考答案详解(研优卷)
- 2026年广东水利电力职业技术学院单招职业技能测试题库附参考答案详解(巩固)
- 2026年平顶山工业职业技术学院单招职业技能测试题库附答案详解(模拟题)
- 2025年智能手环健康算法工程师PCB布局技巧
- 2025年小学英语时态练习题库试卷
- ADAMS软件基本操作课件
- 附属工程竣工验收报告
- JJF 1609-2017余氯测定仪校准规范
- GB/T 33328-2016色漆和清漆电导率和电阻的测定
- GB/T 15624-2011服务标准化工作指南
- GA/T 487-2020橡胶减速丘
- 《八声甘州》(柳永)课件
- 全员安全生产“大学习、大培训、大考试”的专项行动方案
- 污水处理厂污泥脱水机房施工组织方案
- 年产 4 万吨溴素开发及综合利用项目环评报告书
- 新教材教科版五年级下册科学全册单元测试卷(含期中期末试卷)
评论
0/150
提交评论