XenDesktop 5 SQL Server Mirror事务日志比较大的原因分析
? ? 在實施XenDesktop5項目過程中,發(fā)現(xiàn)XenDesktop5版本的數(shù)據(jù)庫鏡像事務(wù)日志很大,在XenDesktop4和XenApp版本中不存在該問題;于是我根據(jù)該現(xiàn)象探究XenDesktop5及以上版本鏡像數(shù)據(jù)庫事務(wù)日志為何如此之大以及我們今后實施的過程中該如何來維護(hù)這么龐大的數(shù)據(jù)庫事務(wù)日志。
在XenDesktop解決方案中,對數(shù)據(jù)的處理是由專門的數(shù)據(jù)庫來進(jìn)行數(shù)據(jù)存儲處理的,而對于數(shù)據(jù)庫的高可用,有3種方式:
SQL Mirror
Virtual Machine HA(VMware FT)
SQL Cluster
? ? ? ?根據(jù)我的探究,?XenDesktop 4 及以上的版本和XenDesktop 5 的系統(tǒng)架構(gòu)不同,是導(dǎo)致這2個版本Mirror事務(wù)日志不一樣的原因。
? ??
? ??
在XenDesktop 4 版本中,屬于Citrix IMA系統(tǒng)架構(gòu),MetaFrame XP是第一個使用思杰的獨立管理架構(gòu)( IMA )的Citrix產(chǎn)品。MetaFrame XP即是XenApp的前身。在IMA架構(gòu)中,運行著2個協(xié)議,一個ICA,一個IMA,ICA協(xié)議用于遠(yuǎn)程連接桌面和應(yīng)用,而IMA協(xié)議則用于執(zhí)行功能,如許可和服務(wù)器負(fù)載的更新,所有的這些都發(fā)生在服務(wù)器與服務(wù)器之間,是隱于幕后的通信協(xié)議。因此可以這樣說,ICA協(xié)議是該架構(gòu)的前端顯示協(xié)議,IMA是后端的幕后協(xié)議。此外,IMA服務(wù)與Citrix管理控制臺進(jìn)行通信,允許管理員管理和配置服務(wù)器。
那么IMA架構(gòu)數(shù)據(jù)庫的Mirror事務(wù)日志有何關(guān)系呢?
接下來我們就來探究下Citrix的IMA架構(gòu):
? ?
這就是XenDesktop 4的架構(gòu)圖
在圖中我們會發(fā)現(xiàn),每一臺主機(jī)都會有LHC這么一個東西,LHC就是本地主機(jī)緩存的意思,在IMA架構(gòu)中,XD4及以前的版本和XenApp都是典型的IMA架構(gòu)的產(chǎn)品。IMA因為有這么一個LHC的存在,所有他的數(shù)據(jù)庫事務(wù)日志不大。
在產(chǎn)生的數(shù)據(jù)中,分為靜態(tài)的信息和動態(tài)的信息。
靜態(tài)配置信息會存儲在DB數(shù)據(jù)庫和LHC(Local Host Cache)中,包括Farm 配置信息,策略配置,用戶和桌面組、桌面組和虛擬機(jī)的綁定關(guān)系等靜態(tài)信息。
動態(tài)會話信息會存儲在本地的LHC中,不會更新到DB中。LHC即Imalhc.mdb(本地的磁盤文件),是一個Access database。動態(tài)信息包括虛擬機(jī)的注冊狀態(tài)、Session狀態(tài),license利用率等動態(tài)信息。
而數(shù)據(jù)庫的事務(wù)日志大部分是動態(tài)的會話信息,XenDesktop 4由于架構(gòu)的原因,動態(tài)的會話信息不回寫入數(shù)據(jù)庫里面,之寫入本地的主機(jī)緩存里,所以XenDesktop 4及以前的版本和XenApp數(shù)據(jù)庫事務(wù)日志不回很大。
那么為什么XenDesktop 5的事務(wù)日志很大呢?
XenDesktop 5 不再將 IMA 數(shù)據(jù)存儲用作存儲配置信息的中央數(shù)據(jù)庫, 而是使用 Microsoft SQL Server 數(shù)據(jù)庫作為配置信息和會話信息的數(shù)據(jù)存儲。而且XenDesktop 5屬于Citrix的FMA架構(gòu)。FMA架構(gòu)就沒有本地主機(jī)緩存了,所有的數(shù)據(jù)信息全部寫入數(shù)據(jù)庫里面,包括靜態(tài)的信息和動態(tài)的信息。
由以上的描述,我們知道XD4和XD5在結(jié)構(gòu)上發(fā)送了較大的變化,由IMA管理架構(gòu)變成了FMA管理架構(gòu),如果說XD5只是對FMA管理架構(gòu)的一種嘗試的話,那么XD7就是完全的認(rèn)同了這樣一種管理架構(gòu),在新版本的XD7中,XenApp和XenDesktop融合在一起,Citrix完全的拋棄了XenApp和XD4的這種IMA管理架構(gòu),全部轉(zhuǎn)向FMA管理架構(gòu)。
??? 而由此可知,Mirror數(shù)據(jù)庫事務(wù)日志從XD5開始比較大的原因就在于:FMA管理架構(gòu)沒有本地主機(jī)緩存(LHC),所有的數(shù)據(jù)信息都會寫入到數(shù)據(jù)庫中,通過數(shù)據(jù)庫內(nèi)保存的數(shù)據(jù)進(jìn)行同步。包括用戶對桌面的每一次登錄信息、斷開連接的會話信息都會寫到事務(wù)日志里面,而不像IMA架構(gòu)那樣,不會寫入到數(shù)據(jù)庫里,而是寫入到本地主機(jī)緩存里邊。
??? 寫到這里,我想我有必要補(bǔ)充,事務(wù)日志是什么?SQL Server使用事務(wù)日志來存儲修改數(shù)據(jù)庫。這是對數(shù)據(jù)庫連續(xù)不斷的類似于數(shù)據(jù)流一樣的對數(shù)據(jù)庫的存儲和修改。一般我們的數(shù)據(jù)庫文件如果損壞了話,通過事務(wù)日志就可以對它進(jìn)行恢復(fù)。而在數(shù)據(jù)庫高可用解決方案中,數(shù)據(jù)庫鏡像的高可用方式就靠事務(wù)日志來進(jìn)行維系。
由此我們大致明白了做數(shù)據(jù)庫Mirror時為什么數(shù)據(jù)庫日志那么大了吧,也明白了為什么XenApp的Mirror沒有XenDesktop的Mirror事務(wù)日志那么大原因了吧。都是基于其架構(gòu)設(shè)計的原因。
轉(zhuǎn)載于:https://blog.51cto.com/tasnrh/1435183
總結(jié)
以上是生活随笔為你收集整理的XenDesktop 5 SQL Server Mirror事务日志比较大的原因分析的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: yum只下载软件不安装的两种方法
- 下一篇: SQL Server 错误18456