專利名稱:呈現(xiàn)服務器數據操作方法及呈現(xiàn)服務器的制作方法
技術領域:
本發(fā)明涉及IPTV (基于IP協(xié)議的電視廣播服務,Internet ProtocolTelevision) 領域,尤其涉及一種應用于IPTV系統(tǒng)的呈現(xiàn)服務器(PresenceServer)數據操作方法及呈現(xiàn)服務器。
背景技術:
IPTV即交互式網絡電視,是一種利用寬帶有線電視網,集互聯(lián)網、多媒體和通訊等多種技術于一體,用于向家庭用戶提供包括數字電視在內的多種交互式服務的嶄新技術。 呈現(xiàn)服務器是IPTV系統(tǒng)中用于即時通訊業(yè)務中存放用戶當前狀態(tài)和發(fā)布用戶狀態(tài)的服務器,其核心功能是根據訂閱者與被訂閱者間的訂閱關系向對應的訂閱者發(fā)送被訂閱者的會話狀態(tài)信息;所述訂閱者根據接收到的被訂閱者的會話狀態(tài)信息了解被訂閱者。在實現(xiàn)本發(fā)明的過程中,發(fā)明人發(fā)現(xiàn)現(xiàn)有技術中至少存在如下問題目前,呈現(xiàn)服務器都是以傳統(tǒng)磁盤為數據主載體進行數據的存儲和傳輸的,由于傳統(tǒng)磁盤的空間以及呈現(xiàn)服務器的運行速度有限,導致呈現(xiàn)服務器在數據存儲時不夠高效和靈活。
發(fā)明內容
本發(fā)明實施例提供一種呈現(xiàn)服務器數據操作方法及呈現(xiàn)服務器,能夠提高呈現(xiàn)服務器在數據存儲時的高效性和靈活性。為此,本發(fā)明實施例采用如下技術方案—種呈現(xiàn)服務器數據操作方法,包括呈現(xiàn)服務器根據用戶訂閱信息生成元數據,將所述元數據寫入所述呈現(xiàn)服務器的緩存區(qū)中的元數據區(qū),根據所述元數據生成索引數據,將所述索引數據寫入所述緩存區(qū)中的索引數據區(qū),其中,所述元數據包括訂閱規(guī)則,所述索引數據包括至少一個索引集合;當被訂閱用戶的狀態(tài)發(fā)生變化時,所述呈現(xiàn)服務器通過所述被訂閱用戶的信息確定索引集合,根據所述索引集合查找與所述被訂閱用戶相對應的元數據,根據所述元數據中的訂閱規(guī)則確定訂閱用戶,將所述被訂閱用戶的當前狀態(tài)發(fā)布給所述訂閱用戶。一種呈現(xiàn)服務器,包括訂閱模塊,用于根據用戶訂閱信息生成元數據,將所述元數據寫入所述呈現(xiàn)服務器的緩存區(qū)中的元數據區(qū),根據所述元數據生成索引數據,將所述索引數據寫入所述緩存區(qū)中的索引數據區(qū),其中,所述元數據包括訂閱規(guī)則,所述索引數據包括至少一個索引集合;發(fā)布模塊,用于當被訂閱用戶的狀態(tài)發(fā)生變化時,通過所述被訂閱用戶的信息確定索引集合,根據所述索引集合查找與所述被訂閱用戶相對應的元數據,根據所述元數據中的訂閱規(guī)則確定訂閱用戶,將所述被訂閱用戶的當前狀態(tài)發(fā)布給所述訂閱用戶。本發(fā)明實施例提供的呈現(xiàn)服務器數據操作方法及呈現(xiàn)服務器,呈現(xiàn)服務器根據用戶訂閱信息生成元數據及索引數據,將所述元數據寫入緩存區(qū)中的元數據區(qū),將所述索引數據寫入所述緩存區(qū)中的索引數據區(qū),所述元數據包括訂閱規(guī)則,所述索引數據包括至少一個索引集合,當被訂閱用戶的狀態(tài)發(fā)生變化時,所述呈現(xiàn)服務器通過所述被訂閱用戶的信息確定索引集合,根據所述索引集合查找與所述被訂閱用戶相對應的元數據,根據所述元數據中的訂閱規(guī)則確定訂閱用戶,將所述被訂閱用戶的當前狀態(tài)發(fā)布給所述訂閱用戶。 與現(xiàn)有技術相比,呈現(xiàn)服務器通過元數據和索引數據兩層數據結構在緩存中形成高效的數據緩存層,可以根據用戶數據的不同屬性使用索引集合快速定位到元數據,從而能夠提高呈現(xiàn)服務器在數據存儲時的高效性和靈活性。
為了更清楚地說明本發(fā)明實施例中的技術方案,下面將對實施例或現(xiàn)有技術描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于本領域普通技術人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據這些附圖獲得其它的附圖。圖1為本發(fā)明實施例一提供的呈現(xiàn)服務器數據操作方法流程圖;圖2為本發(fā)明實施例二提供的呈現(xiàn)服務器結構示意圖;圖3為本發(fā)明實施例三提供的元數據與索引數據的數據結構示意圖。
具體實施例方式下面將結合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例。基于本發(fā)明中的實施例,本領域普通技術人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其它實施例,都屬于本發(fā)明保護的范圍。為使本發(fā)明技術方案的優(yōu)點更加清楚,下面結合附圖和實施例對本發(fā)明作詳細說明。如前所述,現(xiàn)有技術中的呈現(xiàn)服務器是基于傳統(tǒng)磁盤為業(yè)務數據主載體,由于磁盤空間有限,且由于運行速度的限制,使得難以達到呈現(xiàn)服務器的實時性和可靠性要求。實施例一本實施例提供一種呈現(xiàn)服務器數據操作方法,如圖1所示,所述方法包括101 呈現(xiàn)服務器根據用戶訂閱信息生成元數據,將所述元數據寫入所述呈現(xiàn)服務器的緩存區(qū)中的元數據區(qū),根據所述元數據生成索引數據,將所述索引數據寫入所述緩存區(qū)中的索引數據區(qū),其中,所述元數據包括訂閱規(guī)則,所述索引數據包括至少一個索引集
I=I O102:當被訂閱用戶的狀態(tài)發(fā)生變化時,所述呈現(xiàn)服務器通過所述被訂閱用戶的信息確定索引集合,根據所述索引集合查找與所述被訂閱用戶相對應的元數據,根據所述元數據中的訂閱規(guī)則確定訂閱用戶,將所述被訂閱用戶的當前狀態(tài)發(fā)布給所述訂閱用戶。從而,通過元數據和索引數據兩層數據結構在緩存中形成高效的數據緩存層,用于呈現(xiàn)服務器進行高效數據存儲和訪問。進一步的,所述方法還可以包括
103 當所述呈現(xiàn)服務器處于空閑狀態(tài)時,所述呈現(xiàn)服務器進行全量數據備份,以便將所述緩存區(qū)中的所有元數據寫入所述呈現(xiàn)服務器的磁盤中。104:在相鄰兩次全量數據備份的中間時段內,所述呈現(xiàn)服務器進行增量數據備份,以便將所述中間時段內的操作日志寫入所述呈現(xiàn)服務器的磁盤中,其中,所述操作日志記錄所述呈現(xiàn)服務器向所述緩存區(qū)中寫入數據的操作。從而,在不停止呈現(xiàn)服務器業(yè)務的前提下,可以將數據緩存區(qū)中的數據全量備份到磁盤中;在相鄰兩次全量備份的間隔期內,可以將操作日志作為增量備份數據寫入磁盤。進一步的,所述方法還可以包括105:當所述緩存區(qū)中的數據丟失時,所述呈現(xiàn)服務器將所述磁盤中的元數據寫入所述緩存區(qū)中的元數據區(qū)。106 所述呈現(xiàn)服務器根據寫入所述元數據區(qū)的元數據重建索引數據。從而,當呈現(xiàn)服務器重啟后,可以將緩存區(qū)中的數據恢復到上一次全量備份時的狀態(tài)。進一步的,所述方法還可以包括107 所述呈現(xiàn)服務器執(zhí)行所述中間時段內的操作日志記錄的操作,以便將所述緩存區(qū)中的數據恢復到數據丟失前的狀態(tài)。由此,當呈現(xiàn)服務器重啟后,可以將緩存區(qū)中的數據恢復到數據丟失前的狀態(tài)。本發(fā)明實施例提供的呈現(xiàn)服務器數據操作方法,呈現(xiàn)服務器根據用戶訂閱信息生成元數據及索引數據,將所述元數據寫入緩存區(qū)中的元數據區(qū),將所述索引數據寫入所述緩存區(qū)中的索引數據區(qū),所述元數據包括訂閱規(guī)則,所述索引數據包括至少一個索引集合, 當被訂閱用戶的狀態(tài)發(fā)生變化時,所述呈現(xiàn)服務器通過所述被訂閱用戶的信息確定索引集合,根據所述索引集合查找與所述被訂閱用戶相對應的元數據,根據所述元數據中的訂閱規(guī)則確定訂閱用戶,將所述被訂閱用戶的當前狀態(tài)發(fā)布給所述訂閱用戶。與現(xiàn)有技術相比, 呈現(xiàn)服務器通過元數據和索引數據兩層數據結構在緩存中形成高效的數據緩存層,可以根據用戶數據的不同屬性使用索引集合快速定位到元數據,從而能夠提高呈現(xiàn)服務器在數據存儲時的高效性和靈活性;此外,通過全量數據備份,可以將元數據備份到磁盤中,通過增量數據備份,可以將相鄰兩次全量數據備份期間的操作日志備份到磁盤中,以便當呈現(xiàn)服務器重啟后,可以將緩存區(qū)中的數據恢復到上一次全量備份時的狀態(tài),從而可以提高數據的備份效率。實施例二本實施例提供一種呈現(xiàn)服務器,如圖2所示,所述呈現(xiàn)服務器包括訂閱模塊21,用于根據用戶訂閱信息生成元數據,將所述元數據寫入所述呈現(xiàn)服務器的緩存區(qū)23中的元數據區(qū)231,根據所述元數據生成索引數據,將所述索引數據寫入所述緩存區(qū)23中的索引數據區(qū)232,其中,所述元數據包括訂閱規(guī)則,所述索引數據包括至少一個索引集合;發(fā)布模塊22,用于當被訂閱用戶的狀態(tài)發(fā)生變化時,通過所述被訂閱用戶的信息確定索引集合,根據所述索引集合查找與所述被訂閱用戶相對應的元數據,根據所述元數據中的訂閱規(guī)則確定訂閱用戶,將所述被訂閱用戶的當前狀態(tài)發(fā)布給所述訂閱用戶。進一步的,所述呈現(xiàn)服務器還可以包括
備份恢復模塊對,用于當所述呈現(xiàn)服務器處于空閑狀態(tài)時,進行全量數據備份,以便將所述緩存區(qū)23中的所有元數據寫入所述呈現(xiàn)服務器的磁盤25中。具體地,所述備份恢復模塊M進行全量數據備份時,將所述緩存區(qū)23中的所有元數據寫入所述呈現(xiàn)服務器的磁盤25的全量元數據區(qū)251。進一步的,所述備份恢復模塊M,還用于在相鄰兩次全量數據備份的中間時段內, 進行增量數據備份,以便將所述中間時段內的操作日志寫入所述呈現(xiàn)服務器的磁盤25中, 其中,所述操作日志記錄所述呈現(xiàn)服務器向所述緩存區(qū)23中寫入數據的操作。具體地,所述備份恢復模塊M進行增量數據備份時,將所述中間時段內的操作日志寫入所述呈現(xiàn)服務器的磁盤25的增量操作日志區(qū)252。進一步的,所述備份恢復模塊M,還用于當所述緩存區(qū)23中的數據丟失時,將所述磁盤25中的元數據寫入所述緩存區(qū)23中的元數據區(qū)231,并根據寫入所述元數據區(qū)231 的元數據重建索引數據。進一步的,所述備份恢復模塊M,還用于執(zhí)行所述中間時段內的操作日志記錄的操作,以便將所述緩存區(qū)23中的數據恢復到數據丟失前的狀態(tài)。本發(fā)明實施例提供的呈現(xiàn)服務器,根據用戶訂閱信息生成元數據及索引數據,將所述元數據寫入緩存區(qū)中的元數據區(qū),將所述索引數據寫入所述緩存區(qū)中的索引數據區(qū), 所述元數據包括訂閱規(guī)則,所述索引數據包括至少一個索引集合,當被訂閱用戶的狀態(tài)發(fā)生變化時,通過所述被訂閱用戶的信息確定索引集合,根據所述索引集合查找與所述被訂閱用戶相對應的元數據,根據所述元數據中的訂閱規(guī)則確定訂閱用戶,將所述被訂閱用戶的當前狀態(tài)發(fā)布給所述訂閱用戶。與現(xiàn)有技術相比,呈現(xiàn)服務器通過元數據和索引數據兩層數據結構在緩存中形成高效的數據緩存層,可以根據用戶數據的不同屬性使用索引集合快速定位到元數據,從而能夠提高呈現(xiàn)服務器在數據存儲時的高效性和靈活性;此外,通過全量數據備份,可以將元數據備份到磁盤中,通過增量數據備份,可以將相鄰兩次全量數據備份期間的操作日志備份到磁盤中,以便當呈現(xiàn)服務器重啟后,可以將緩存區(qū)中的數據恢復到上一次全量備份時的狀態(tài),從而可以提高數據的備份效率。實施例三本實施例提供一種呈現(xiàn)服務器數據操作方法,在本實施例中,以A用戶要訂閱B用戶的狀態(tài)變化為例進行說明。參見圖2,為本發(fā)明呈現(xiàn)服務器的結構示意圖。本實施例提供的呈現(xiàn)服務器數據操作方法具體包括以下流程1、用戶信息登記流程為了呈現(xiàn)服務器可以快速獲取用戶信息,呈現(xiàn)服務器將用戶信息保存在高速緩存區(qū)23內。這部分的數據操作過程如下訂閱模塊21會將用戶信息寫入緩存區(qū)23的元數據區(qū)231形成元數據單元,然后根據新生成的元數據單元生成對應的多個索引集合,每個索引集合包括多個索引數據單元,所述索引集合保存在索引數據區(qū)232。例如,用戶信息可以包括用戶名、性別、年齡、職業(yè)、家庭、個人喜好等用戶基本信息及關聯(lián)的特性信息;為了分別根據不同的用戶特性都可以快速查找到用戶所有的信息,可以根據不同的用戶特性建立相應索引,根據索引可以通過預設的索引算法快速找到元數據。2、訂閱流程一個用戶訂閱另一個用戶的狀態(tài)信息時,例如A用戶訂閱了 B用戶的狀態(tài)變化,呈現(xiàn)服務器需要將這個訂閱行為記錄到呈現(xiàn)服務器中;這樣當B用戶狀態(tài)變化時,呈現(xiàn)服務器就會通知A用戶B的狀態(tài)發(fā)生了變化。這部分的數據操作過程如下訂閱模塊21會將訂閱規(guī)則信息寫入緩存區(qū)23的元數據區(qū)231形成元數據,然后根據新生成的元數據單元生成對應的多個索引數據單元。例如,A用戶想知道B用戶什么時間看CCTV5臺。訂閱模塊就會將“B用戶被A用戶訂閱,具體活動內容是看CCTV5臺”這個規(guī)則作為元數據,同時分別形成以“B用戶”作為 “被訂閱者索引”,以“A用戶”作為其“訂閱者索引”。通過上述步驟1-2,完成了本發(fā)明呈現(xiàn)服務器的數據存儲,其數據結構請參見圖 3,其中,元數據集合包括多個元數據單元,索引集合I-N的各個集合包括多個索引數據單元,一個元數據單元對應多個索引數據單元,這多個索引數據單元可來自不同的索引集合。3、信息發(fā)布流程當被訂閱用戶⑶的狀態(tài)發(fā)生改變時,呈現(xiàn)服務器會根據被訂閱用戶對應的訂閱關系找到訂閱用戶(A)。這部分的數據操作過程如下當呈現(xiàn)服務器接收到被訂閱用戶(B)狀態(tài)發(fā)生變化的消息時,發(fā)布模塊22會先通過被訂閱用戶⑶的描述信息在緩存區(qū)的索引區(qū)找到被訂閱用戶⑶的相關用戶信息,然后通過索引區(qū)找到被訂閱用戶(B)相關的元數據。再根據被訂閱用戶(B)的元數據得到被訂閱用戶⑶的被訂閱規(guī)則,從而找到對應的訂閱用戶㈧的相關信息,然后將被訂閱用戶 (B)的狀態(tài)變化發(fā)布給訂閱用戶(A)。繼續(xù)以“A用戶想知道B用戶什么時間看CCTV5臺”為例當B用戶開始看CCTV5 臺時,由于用戶行為發(fā)生變化就會觸發(fā),發(fā)布模塊22查找“用戶B”所附帶的規(guī)則;通過查找規(guī)則的“被訂閱者索引”確定為“用戶B”的規(guī)則,然后由發(fā)布模塊22解釋和執(zhí)行規(guī)則元數據中語義,并向A用戶發(fā)送“B正在看CCTV5臺”的最新狀態(tài)信息。4、備份流程由于被訂閱用戶數據都保存在高速緩存區(qū)23中,因此保護數據的安全性對呈現(xiàn)服務器的安全性至關重要。本發(fā)明通過磁盤備份的方式保護呈現(xiàn)服務器的數據安全,對于數據量大的呈現(xiàn)服務器,備份時間的長短關系到數據備份的成功率和可靠性,因此本發(fā)明采用了全量數據備份與增量數據備份相結合的方式進行數據保護。這部分的數據操作過程如下全量數據備份將高速緩存區(qū)23中的所有數據保存到磁盤25中,需要較長的運行時間。本發(fā)明在呈現(xiàn)服務器比較空閑的時候進行全量數據備份,備份恢復模塊M將緩存區(qū)中的元數據全部備份到磁盤25中,而不將索引數據進行備份。增量數據備份在相鄰兩次全量備份的中間時間段內,備份恢復模塊M多次將操作日志寫入磁盤25中。
5、恢復流程當呈現(xiàn)服務器由于宕機或認為停機的狀況造成緩存區(qū)數據丟失時,呈現(xiàn)服務器需要將已經備份的數據恢復到高速緩存中,然后啟動呈現(xiàn)服務器對用戶進行服務。這部分的數據操作過程如下備份恢復模塊M將磁盤25中全量元數據區(qū)251的元數據恢復到緩存區(qū)23的元數據區(qū)231,然后根據緩存區(qū)21的元數據重建索引,接著執(zhí)行磁盤25中的增量操作日志區(qū) 252的操作日志,使呈現(xiàn)服務器中的數據恢復到上次運行的狀態(tài)。本發(fā)明實施例提供的呈現(xiàn)服務器數據操作方法具有以下優(yōu)點(1)提高了呈現(xiàn)服務器的訪問性能和業(yè)務動態(tài)擴展性通過在呈現(xiàn)服務器的緩存區(qū)內分別使用多個索引數據和單個元數據的兩層數據結構保存用戶數據,提高了呈現(xiàn)服務器根據用戶不同的特性訪問到用戶信息的總性能。根據用戶數據的不同屬性可以分別使用緩存區(qū)中的不同索引快速定位到數據。當有一個新的業(yè)務需要根據用戶數據的其他屬性快速定位到用戶數據時,本發(fā)明可以在不進行數據升級的情況下根據用戶屬性建立新的索引。(2)數據備份不中斷正常的業(yè)務由于元數據之間沒有關聯(lián)關系,在呈現(xiàn)服務器比較空閑時,備份恢復模塊將緩存區(qū)中的元數據全部備份到磁盤中,可以實現(xiàn)不中斷業(yè)務而進行數據全量備份的功能。具體的過程如下一種情況備份過程中備份恢復模塊已經備份了緩存區(qū)中其中一部分元數據,而還沒有來得及備份的元數據發(fā)生了數據變化,這時備份恢復模塊繼續(xù)進行備份,從而可以保證磁盤中的數據與緩存區(qū)中的數據是一致的;另一種情況當備份過程中備份恢復模塊已經備份的緩存區(qū)中的元數據發(fā)生變化時,備份恢復模塊會通過業(yè)務操作日志記錄數據的變化,而備份恢復模塊可以繼續(xù)對沒有備份的部分進行備份,從而可以保證磁盤中的數據加上業(yè)務操作日志與緩存區(qū)中的數據是一致的。因此這種方式使得呈現(xiàn)服務器在全量數據備份時,不需要因為保護數據的一致性而停止寫數據的業(yè)務。(3)提高了備份效率由于備份業(yè)務操作日志的對呈現(xiàn)服務器資源消耗少、耗時短,因此在耗時比較長的相鄰兩次全量備份的中間時段內,通過對業(yè)務操作日志的增量備份,來提高備份的效率, 降低備份異常帶來的數據丟失概率,從而可以防止備份時間過長而在備份過程中因為宕機等意外因素引起的備份異常,降低終端的數據丟失概率。本發(fā)明實施例提供的呈現(xiàn)服務器可以實現(xiàn)上述提供的方法實施例,具體功能實現(xiàn)請參見方法實施例中的說明,在此不再贅述。本發(fā)明實施例提供的呈現(xiàn)服務器數據操作方法及呈現(xiàn)服務器可以適用根據用戶訂閱信息進行數據操作,但不僅限于此。本領域普通技術人員可以理解實現(xiàn)上述實施例方法中的全部或部分流程,是可以通過計算機程序來指令相關的硬件來完成,所述的程序可存儲于一計算機可讀取存儲介質中,該程序在執(zhí)行時,可包括如上述各方法的實施例的流程。其中,所述的存儲介質可為磁碟、光盤、只讀存儲記憶體(Read-Only Memory, ROM)或隨機存儲記憶體(Random Access Memory, RAM)等。以上所述,僅為本發(fā)明的具體實施方式
,但本發(fā)明的保護范圍并不局限于此,任何熟悉本技術領域的技術人員在本發(fā)明揭露的技術范圍內,可輕易想到的變化或替換,都應涵蓋在本發(fā)明的保護范圍之內。因此,本發(fā)明的保護范圍應該以權利要求的保護范圍為準。
權利要求
1.一種呈現(xiàn)服務器數據操作方法,其特征在于,包括呈現(xiàn)服務器根據用戶訂閱信息生成元數據,將所述元數據寫入緩存區(qū)中的元數據區(qū), 根據所述元數據生成索引數據,將所述索引數據寫入所述緩存區(qū)中的索引數據區(qū),其中,所述元數據包括訂閱規(guī)則,所述索引數據包括至少一個索引集合;當被訂閱用戶的狀態(tài)發(fā)生變化時,所述呈現(xiàn)服務器通過所述被訂閱用戶的信息確定索引集合,根據所述索引集合查找與所述被訂閱用戶相對應的元數據,根據所述元數據中的訂閱規(guī)則確定訂閱用戶,將所述被訂閱用戶的當前狀態(tài)發(fā)布給所述訂閱用戶。
2.根據權利要求1所述的方法,其特征在于,還包括當所述呈現(xiàn)服務器處于空閑狀態(tài)時,所述呈現(xiàn)服務器進行全量數據備份,以便將所述緩存區(qū)中的所有元數據寫入所述呈現(xiàn)服務器的磁盤中。
3.根據權利要求2所述的方法,其特征在于,還包括在相鄰兩次全量數據備份的中間時段內,所述呈現(xiàn)服務器進行增量數據備份,以便將所述中間時段內的操作日志寫入所述呈現(xiàn)服務器的磁盤中,其中,所述操作日志記錄所述呈現(xiàn)服務器向所述緩存區(qū)中寫入數據的操作。
4.根據權利要求3所述的方法,其特征在于,還包括當所述緩存區(qū)中的數據丟失時,所述呈現(xiàn)服務器將所述磁盤中的元數據寫入所述緩存區(qū)中的元數據區(qū);所述呈現(xiàn)服務器根據寫入所述元數據區(qū)的元數據重建索引數據。
5.根據權利要求4所述的方法,其特征在于,還包括所述呈現(xiàn)服務器執(zhí)行所述中間時段內的操作日志記錄的操作,以便將所述緩存區(qū)中的數據恢復到數據丟失前的狀態(tài)。
6.一種呈現(xiàn)服務器,其特征在于,包括訂閱模塊,用于根據用戶訂閱信息生成元數據,將所述元數據寫入所述呈現(xiàn)服務器的緩存區(qū)中的元數據區(qū),根據所述元數據生成索引數據,將所述索引數據寫入所述緩存區(qū)中的索引數據區(qū),其中,所述元數據包括訂閱規(guī)則,所述索引數據包括至少一個索引集合;發(fā)布模塊,用于當被訂閱用戶的狀態(tài)發(fā)生變化時,通過所述被訂閱用戶的信息確定索引集合,根據所述索引集合查找與所述被訂閱用戶相對應的元數據,根據所述元數據中的訂閱規(guī)則確定訂閱用戶,將所述被訂閱用戶的當前狀態(tài)發(fā)布給所述訂閱用戶。
7.根據權利要求6所述的呈現(xiàn)服務器,其特征在于,還包括備份恢復模塊,用于當所述呈現(xiàn)服務器處于空閑狀態(tài)時,進行全量數據備份,以便將所述緩存區(qū)中的所有元數據寫入所述呈現(xiàn)服務器的磁盤中。
8.根據權利要求7所述的呈現(xiàn)服務器,其特征在于所述備份恢復模塊,還用于在相鄰兩次全量數據備份的中間時段內,進行增量數據備份,以便將所述中間時段內的操作日志寫入所述呈現(xiàn)服務器的磁盤中,其中,所述操作日志記錄所述呈現(xiàn)服務器向所述緩存區(qū)中寫入數據的操作。
9.根據權利要求8所述的呈現(xiàn)服務器,其特征在于所述備份恢復模塊,還用于當所述緩存區(qū)中的數據丟失時,將所述磁盤中的元數據寫入所述緩存區(qū)中的元數據區(qū),并根據寫入所述元數據區(qū)的元數據重建索引數據。
10.根據權利要求9所述的呈現(xiàn)服務器,其特征在于所述備份恢復模塊,還用于執(zhí)行所述中間時段內的操作日志記錄的操作,以便將所述緩存區(qū)中的數據恢復到數據丟失前的狀態(tài)。
全文摘要
本發(fā)明實施例公開了一種呈現(xiàn)服務器數據操作方法及呈現(xiàn)服務器,所述方法包括呈現(xiàn)服務器根據用戶訂閱信息生成元數據,將所述元數據寫入所述呈現(xiàn)服務器的緩存區(qū)中的元數據區(qū),根據所述元數據生成索引數據,將所述索引數據寫入所述緩存區(qū)中的索引數據區(qū),其中,所述元數據包括訂閱規(guī)則,所述索引數據包括至少一個索引集合;當被訂閱用戶的狀態(tài)發(fā)生變化時,呈現(xiàn)服務器通過所述被訂閱用戶的信息確定索引集合,根據所述索引集合查找與所述被訂閱用戶相對應的元數據,根據所述元數據中的訂閱規(guī)則確定訂閱用戶,將所述被訂閱用戶的當前狀態(tài)發(fā)布給所述訂閱用戶。本發(fā)明適用于呈現(xiàn)服務器根據用戶訂閱信息進行數據操作。
文檔編號H04N21/231GK102164302SQ20111005870
公開日2011年8月24日 申請日期2011年3月11日 優(yōu)先權日2011年3月11日
發(fā)明者周丹弟 申請人:青島海信傳媒網絡技術有限公司