專利名稱:一種epg內(nèi)容元數(shù)據(jù)管理方法、服務(wù)器及系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及IPTV領(lǐng)域,尤其涉及一種EPG內(nèi)容元數(shù)據(jù)管理方法、服務(wù)器及系統(tǒng)。
背景技術(shù):
IPTV是一種承載在IP網(wǎng)絡(luò)之上,提供電視、視頻、語音、圖像、數(shù)據(jù)等業(yè)務(wù)的多媒體系統(tǒng)。EPG系統(tǒng)是IPTV業(yè)務(wù)的門戶系統(tǒng),IPTV所提供的各種業(yè)務(wù)的索引及導(dǎo)航都是通過EPG系統(tǒng)來完成的。EPG的主要作用就是用戶利用EPG提供的菜單,可以選擇自己喜歡 的組播頻道;點(diǎn)播自己喜歡的視頻節(jié)目;在線演唱自己喜歡的歌曲;查找IPTV提供的各種信息,包括生活信息、娛樂信息、教育信息、體育信息等等;用戶也可使用EPG提供的菜單來訂購自己喜歡的節(jié)目;甚至可以通過EPG提供的菜單支付水費(fèi)、電費(fèi)、進(jìn)行電子商務(wù)的交易等。用戶還可以利用EPG菜單查看節(jié)目的附加信息,例如對節(jié)目內(nèi)容介紹、演員及導(dǎo)演的介紹等。同時(shí)通過EPG菜單中提供的家長控制功能,家長可以對某些節(jié)目加以限制,不給孩子開放所有的觀看權(quán)限。上面描述的這些功能都依賴于EPG服務(wù)器存儲的內(nèi)容元數(shù)據(jù),但是目前EPG服務(wù)器與業(yè)務(wù)數(shù)據(jù)庫直連的這種架構(gòu),隨著海量用戶和海量數(shù)據(jù)的增長,EPG服務(wù)器的數(shù)量也需要不斷增加,此時(shí)對數(shù)據(jù)庫的壓力會持續(xù)增大,由于大量的EPG服務(wù)器的并發(fā)訪問,每次都需要通過結(jié)構(gòu)化查詢語言SQL直接查詢的方式實(shí)時(shí)讀取數(shù)據(jù)庫中的信息,每一次查詢都涉及上萬條數(shù)據(jù),會造成EPG啟動、響應(yīng)時(shí)間呈指數(shù)型下降,嚴(yán)重影響用戶體驗(yàn)。
發(fā)明內(nèi)容
有鑒于此,實(shí)有必要提供一種EPG內(nèi)容元數(shù)據(jù)的管理方法,以解決EPG服務(wù)器響應(yīng)時(shí)間長的問題。同時(shí),提供一種EPG數(shù)據(jù)服務(wù)器。同時(shí),提供一種EPG內(nèi)容元數(shù)據(jù)管理系統(tǒng)。本發(fā)明一實(shí)施例的EPG內(nèi)容元數(shù)據(jù)的管理方法,包括接收客戶端的EPG內(nèi)容元數(shù)據(jù)獲取請求,所述EPG內(nèi)容元數(shù)據(jù)獲取請求中包括內(nèi)容標(biāo)識;根據(jù)所述內(nèi)容標(biāo)識從本地緩存中查詢與所述內(nèi)容標(biāo)識對應(yīng)的EPG內(nèi)容元數(shù)據(jù)并返回給所述客戶端,并當(dāng)所述本地緩存中沒有與所述內(nèi)容標(biāo)識對應(yīng)的EPG內(nèi)容元數(shù)據(jù)時(shí),從本地存儲的全量對象化EPG內(nèi)容元數(shù)據(jù)中查詢與所述內(nèi)容標(biāo)識對應(yīng)的EPG內(nèi)容元數(shù)據(jù)并返回給所述客戶端。本發(fā)明一實(shí)施例的EPG數(shù)據(jù)服務(wù)器,包括接口單元,用于接收客戶端的EPG內(nèi)容元數(shù)據(jù)獲取請求,所述EPG內(nèi)容元數(shù)據(jù)獲取請求包括內(nèi)容標(biāo)識;查詢單元,用于根據(jù)所述內(nèi)容標(biāo)識從本地緩存中查詢與所述內(nèi)容標(biāo)識對應(yīng)的EPG內(nèi)容元數(shù)據(jù),或者當(dāng)本地緩存中沒有與所述內(nèi)容標(biāo)識對應(yīng)的EPG內(nèi)容元數(shù)據(jù)時(shí),從本地存儲器中存儲的全量對象化EPG內(nèi)容元數(shù)據(jù)中查詢與所述內(nèi)容標(biāo)識對應(yīng)的EPG內(nèi)容元數(shù)據(jù);所述接口單元還用于將查詢單元查詢到的與所述內(nèi)容標(biāo)識對應(yīng)的EPG內(nèi)容元數(shù)據(jù)返回給所述客戶端。
本發(fā)明一實(shí)施例的EPG內(nèi)容元數(shù)據(jù)管理系統(tǒng),包括EPG邊緣數(shù)據(jù)服務(wù)器,用于接收客戶端的EPG內(nèi)容元數(shù)據(jù)獲取請求,所述EPG內(nèi)容元數(shù)據(jù)獲取請求中包括內(nèi)容標(biāo)識;根據(jù)所述內(nèi)容標(biāo)識從本地緩存中查詢與所述內(nèi)容標(biāo)識對應(yīng)的EPG內(nèi)容元數(shù)據(jù)并返回給所述客戶端,并當(dāng)所述本地緩存中沒有與所述內(nèi)容標(biāo)識對應(yīng)的EPG內(nèi)容元數(shù)據(jù)時(shí),從本地存儲的全量對象化EPG內(nèi)容元數(shù)據(jù)中查詢與所述內(nèi)容標(biāo)識對應(yīng)的EPG內(nèi)容元數(shù)據(jù)并返回給所述客戶端;EPG中心數(shù)據(jù)服務(wù)器,用于從業(yè)務(wù)數(shù)據(jù)庫中依據(jù)結(jié)構(gòu)化查詢語言SQL方式讀取并采用對象化方式存儲全量EPG內(nèi)容元數(shù)據(jù),還用于向所述EPG邊緣數(shù)據(jù)服務(wù)器提供所述全量對象化EPG內(nèi)容元數(shù)據(jù);業(yè)務(wù)數(shù)據(jù)庫,用于根據(jù)EPG中心數(shù)據(jù)服務(wù)器結(jié)構(gòu)化查詢語言SQL請求,向所述EPG中心數(shù)據(jù)服務(wù)器下發(fā)全量EPG內(nèi)容元數(shù)據(jù)。本發(fā)明實(shí)施例的EPG內(nèi)容元數(shù)據(jù)的管理方法,由于邊緣EPG數(shù)據(jù)服務(wù)器采用對象化的方式存儲全量EPG內(nèi)容元數(shù)據(jù),并根據(jù)一定的比例將EPG全量內(nèi)容元數(shù)據(jù)讀入至其緩存中,在響應(yīng)客戶端內(nèi)容元數(shù)據(jù)請求時(shí),首先從其緩存中查找獲取,使得響應(yīng)速度更快,另外由于內(nèi)容元數(shù)據(jù)采用對象化的存儲方式,使得根據(jù)內(nèi)容標(biāo)識就能獲取與該內(nèi)容標(biāo)識對應(yīng)的相關(guān)內(nèi)容元數(shù)據(jù),相對于SQL數(shù)據(jù)庫存儲 模式,內(nèi)容元數(shù)據(jù)獲取速度更快。
圖I為本發(fā)明一實(shí)施例的EPG內(nèi)容元數(shù)據(jù)的管理方法流程圖;圖2為本發(fā)明另一實(shí)施例的EPG內(nèi)容元數(shù)據(jù)的管理方法流程圖;圖3為本發(fā)明又一實(shí)施例的EPG內(nèi)容元數(shù)據(jù)的管理方法流程圖;圖4為本發(fā)明又一實(shí)施例的EPG內(nèi)容元數(shù)據(jù)的管理方法流程圖;圖5A為本發(fā)明一實(shí)施例的EPG數(shù)據(jù)服務(wù)器結(jié)構(gòu)框圖;圖5B為本發(fā)明另一實(shí)施例的EPG數(shù)據(jù)服務(wù)器結(jié)構(gòu)框圖;圖6為本發(fā)明一實(shí)施例的EPG內(nèi)容元數(shù)據(jù)管理系統(tǒng)結(jié)構(gòu)框圖。
具體實(shí)施例方式下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例。基于本發(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有作出創(chuàng)造性勞動前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍如圖I所示為本發(fā)明一實(shí)施例的EPG內(nèi)容元數(shù)據(jù)的管理方法流程圖;該管理方法,包括101、接收客戶端的EPG內(nèi)容元數(shù)據(jù)獲取請求,所述EPG內(nèi)容元數(shù)據(jù)獲取請求中包括內(nèi)容標(biāo)識;具體的,用戶通過機(jī)頂盒登錄EGP系統(tǒng),查詢某個(gè)感興趣節(jié)目的相關(guān)信息,向EGP數(shù)據(jù)服務(wù)器發(fā)送EPG內(nèi)容元數(shù)據(jù)獲取請求,該請求中包括內(nèi)容標(biāo)識,如節(jié)目標(biāo)識等。102、根據(jù)所述內(nèi)容標(biāo)識從本地緩存中查詢與所述內(nèi)容標(biāo)識對應(yīng)的EPG內(nèi)容元數(shù)據(jù)并返回給所述客戶端,并當(dāng)所述本地緩存中沒有與所述內(nèi)容標(biāo)識對應(yīng)的EPG內(nèi)容元數(shù)據(jù)時(shí),從本地存儲的全量對象化EPG內(nèi)容元數(shù)據(jù)中查詢與所述內(nèi)容標(biāo)識對應(yīng)的EPG內(nèi)容元數(shù)據(jù)并返回給所述客戶端。需要注意的是,本地存儲的全量對象化EPG內(nèi)容元數(shù)據(jù)是EPG邊緣數(shù)據(jù)服務(wù)器從EPG中心數(shù)據(jù)服務(wù)器處獲取,該全量對象化EPG內(nèi)容元數(shù)據(jù)由中心數(shù)據(jù)服務(wù)器從業(yè)務(wù)數(shù)據(jù)庫中依據(jù)結(jié)構(gòu)化查詢語言SQL方式讀取并采用對象化方式存儲,所述對象化方式存儲是指將讀取的全量EPG內(nèi)容元數(shù)據(jù)按照內(nèi)容標(biāo)識重新封裝存儲,使得根據(jù)所述內(nèi)容標(biāo)識即能獲取所述內(nèi)容標(biāo)識對應(yīng)的節(jié)目所需的EPG內(nèi)容元數(shù)據(jù)。而傳統(tǒng)的EPG內(nèi)容元數(shù)據(jù)獲取方式是通過將EPG門戶上的操作在后臺轉(zhuǎn)換為結(jié)構(gòu)化查詢語言SQL方式從業(yè)務(wù)數(shù)據(jù)庫中通過選取select,插入insert等標(biāo)準(zhǔn)化的SQL語句從業(yè)務(wù)數(shù)據(jù)庫中一條條讀取內(nèi)容元數(shù)據(jù)。具體的,EPG數(shù)據(jù)服務(wù)器接收到客戶端內(nèi)容數(shù)據(jù)獲取請求后,根據(jù)該請求中攜帶的內(nèi)容標(biāo)識首先從本地緩存中查找與該內(nèi)容標(biāo)識對應(yīng)的內(nèi)容元數(shù)據(jù),如果EPG數(shù)據(jù)服務(wù)器本地緩存中存在與所述內(nèi)容標(biāo)識對應(yīng)的內(nèi)容元數(shù)據(jù),則直接從本地緩存中獲取然后返回給所述客戶端。如本地緩存中沒有與所述內(nèi)容標(biāo)識對應(yīng)的內(nèi)容元數(shù)據(jù),則再從本地存儲器中存儲的全量對象化EPG內(nèi)容元數(shù)據(jù)中查詢與所述內(nèi)容標(biāo)識對應(yīng)的內(nèi)容元數(shù)據(jù),獲取后返回給所述客戶端。
本發(fā)明實(shí)施例的EPG內(nèi)容元數(shù)據(jù)的管理方法,由于邊緣EPG數(shù)據(jù)服務(wù)器采用對象化的方式存儲全量EPG內(nèi)容元數(shù)據(jù),并根據(jù)一定的比例將EPG全量內(nèi)容元數(shù)據(jù)讀入至其緩存中,在響應(yīng)客戶端內(nèi)容元數(shù)據(jù)請求時(shí),首先從其緩存中查找獲取,使得響應(yīng)速度更快,另外由于內(nèi)容元數(shù)據(jù)采用對象化的存儲方式,使得根據(jù)內(nèi)容標(biāo)識就能獲取與該內(nèi)容標(biāo)識對應(yīng)的相關(guān)內(nèi)容元數(shù)據(jù),相對于SQL數(shù)據(jù)庫存儲模式,內(nèi)容元數(shù)據(jù)獲取速度更快。如圖2所示為本發(fā)明另一實(shí)施例的EPG內(nèi)容元數(shù)據(jù)的管理方法流程圖;該管理方法包括20UEPG中心數(shù)據(jù)服務(wù)器從業(yè)務(wù)數(shù)據(jù)庫中依據(jù)SQL方式讀取并采用對象化方式存儲全量對象EPG內(nèi)容元數(shù)據(jù);具體的,EPG中心數(shù)據(jù)服務(wù)器在首次啟動時(shí),從業(yè)務(wù)數(shù)據(jù)庫中按照結(jié)構(gòu)化語言SQL方式一條條讀取所需的全量EPG內(nèi)容元數(shù)據(jù),如通過標(biāo)準(zhǔn)化的select SQL語句從業(yè)務(wù)數(shù)據(jù)庫中選取所有全量EPG內(nèi)容元數(shù)據(jù)。將讀取的全量EPG內(nèi)容元數(shù)據(jù)按照內(nèi)容標(biāo)識對象化重新封裝存儲,即將與每一內(nèi)容標(biāo)識對應(yīng)的所有EPG內(nèi)容元數(shù)據(jù)整合到一塊分別打包,重新封裝。使得每一個(gè)內(nèi)容標(biāo)識對應(yīng)該節(jié)目所有的內(nèi)容元數(shù)據(jù),這樣EPG數(shù)據(jù)服務(wù)器在響應(yīng)客戶端內(nèi)容元數(shù)據(jù)請求時(shí),即可按照內(nèi)容標(biāo)識直接讀取內(nèi)容標(biāo)識對應(yīng)的所有內(nèi)容元數(shù)據(jù)也即節(jié)目信息,使得內(nèi)容元數(shù)據(jù)讀取速度更快,響應(yīng)速度更快。202、EPG邊緣數(shù)據(jù)服務(wù)器從EPG中心數(shù)據(jù)服務(wù)器中獲取全量對象化EPG內(nèi)容元數(shù)據(jù)并按照預(yù)置的比例將所述全量對象化EPG內(nèi)容元數(shù)據(jù)讀取到本地緩存中;具體的,EPG邊緣數(shù)據(jù)服務(wù)器可以通過主動請求的方式,或者通過EPG中心數(shù)據(jù)服務(wù)器器主動推送的方式獲取全量對象化的EPG內(nèi)容元數(shù)據(jù)。同時(shí),EPG邊緣數(shù)據(jù)服務(wù)器包括緩存單元,緩存空間的大小可以擴(kuò)展,緩存比例可以根據(jù)緩存空間的大小任意設(shè)置,如預(yù)置比例設(shè)置為10% -100%。當(dāng)EPG邊緣數(shù)據(jù)服務(wù)器將從EPG中心數(shù)據(jù)服務(wù)器處獲取的的全量對象化的EPG內(nèi)容元數(shù)據(jù)存儲之后,EPG邊緣數(shù)據(jù)服務(wù)器按照預(yù)置的比例將存儲單元存儲的全量EPG內(nèi)容元數(shù)據(jù)讀入至緩存中。這樣,當(dāng)響應(yīng)客戶端內(nèi)容元數(shù)據(jù)請求時(shí),可以首先從緩存中獲取,使得響應(yīng)速度更快。203、接收客戶端的EPG內(nèi)容元數(shù)據(jù)獲取請求,所述EPG內(nèi)容元數(shù)據(jù)獲取請求中包括內(nèi)容標(biāo)識;
具體的,用戶通過機(jī)頂盒登錄EGP系統(tǒng),查詢某個(gè)感興趣節(jié)目的相關(guān)信息,向EGP數(shù)據(jù)服務(wù)器發(fā)送EPG內(nèi)容元數(shù)據(jù)獲取請求,該請求中包括內(nèi)容標(biāo)識,如節(jié)目標(biāo)識等。204、根據(jù)所述內(nèi)容標(biāo)識從本地緩存中查詢與所述內(nèi)容標(biāo)識對應(yīng)的EPG內(nèi)容元數(shù)據(jù)并返回給所述客戶端,并當(dāng)所述本地緩存中沒有與所述內(nèi)容標(biāo)識對應(yīng)的EPG內(nèi)容元數(shù)據(jù)時(shí),從本地存儲的全量對象化EPG內(nèi)容元數(shù)據(jù)中查詢與所述內(nèi)容標(biāo)識對應(yīng)的EPG內(nèi)容元數(shù)據(jù)并返回給所述客戶端。具體的,EPG數(shù)據(jù)服務(wù)器接收到客戶端內(nèi)容數(shù)據(jù)獲取請求后,根據(jù)該請求中攜帶的內(nèi)容標(biāo)識首先從本地緩存中查找與該內(nèi)容標(biāo)識對應(yīng)的內(nèi)容元數(shù)據(jù),如果EPG數(shù)據(jù)服務(wù)器本地緩存中存在與所述內(nèi)容標(biāo)識對應(yīng)的內(nèi)容元數(shù)據(jù),則直接從本地緩存中獲取然后返回給所述客戶端。如本地緩存中沒有與所述內(nèi)容標(biāo)識對應(yīng)的內(nèi)容元數(shù)據(jù),則再從本地存儲器中存儲的全量對象化EPG內(nèi)容元數(shù)據(jù)中查詢與所述內(nèi)容標(biāo)識對應(yīng)的內(nèi)容元數(shù)據(jù),獲取后返回給所述客戶端。
如圖3所示為本發(fā)明又一實(shí)施例的EPG內(nèi)容元數(shù)據(jù)的管理方法流程圖;該管理方法包括30UEPG中心數(shù)據(jù)服務(wù)器從業(yè)務(wù)數(shù)據(jù)庫獲取更新的EPG內(nèi)容元數(shù)據(jù)并將獲取的更新的EPG內(nèi)容元數(shù)據(jù)對象化存儲;;具體的,EPG中心數(shù)據(jù)服務(wù)器如果非首次啟動,可以通過主動請求的方式使用SQL語句從從業(yè)務(wù)數(shù)據(jù)庫中獲取更新的EPG內(nèi)容元數(shù)據(jù),并按照對象化的方式更新至本地存儲的全量對象化EPG內(nèi)容元數(shù)據(jù)中。可選的,也可以由業(yè)務(wù)數(shù)據(jù)庫在EPG數(shù)據(jù)中心服務(wù)器非首次啟動時(shí),將更新的內(nèi)容推送至EPG中心數(shù)據(jù)服務(wù)器,然后由EPG中心數(shù)據(jù)服務(wù)器將更新的內(nèi)容對象化存儲至本地。302、通過超文本傳遞協(xié)議HTTP消息依次同步至其下級管轄的EPG邊緣數(shù)據(jù)服務(wù)器中;具體的,為了避免消息擁塞,EPG中心數(shù)據(jù)服務(wù)器采用主動推送的方式將從更新的對象化EPG內(nèi)容元數(shù)據(jù)通過HTTP消息按照預(yù)置的順序推送至其管轄的多個(gè)EPG邊緣數(shù)據(jù)服務(wù)器中。需要注意的是,考慮到實(shí)際部署的EPG邊緣數(shù)據(jù)服務(wù)器眾多,可能會出現(xiàn)部分EPG邊緣數(shù)據(jù)服務(wù)器因網(wǎng)絡(luò)原因、或者EPG邊緣數(shù)據(jù)服務(wù)器自身原因無法收到更新通知消息的情況。EPG中心數(shù)據(jù)服務(wù)器可設(shè)置一定的送達(dá)比例。如90%,即更新內(nèi)容下發(fā)給90%的EPG邊緣數(shù)據(jù)服務(wù)器即表示送達(dá)成功。同時(shí),中心EPG數(shù)據(jù)服務(wù)器還支持重發(fā)功能,支持多次重發(fā)。303、EPG邊緣數(shù)據(jù)服務(wù)器將EPG中心數(shù)據(jù)服務(wù)器推送的更新EPG內(nèi)容元數(shù)據(jù)更新至本地存儲的全量對象化EPG內(nèi)容元數(shù)據(jù)中。如圖4為本發(fā)明一實(shí)施例的EPG內(nèi)容元數(shù)據(jù)的管理方法流程圖;該管理方法包括401、EPG中心數(shù)據(jù)服務(wù)器從業(yè)務(wù)數(shù)據(jù)庫中讀取全量EPG內(nèi)容元數(shù)據(jù);具體的,EPG中心數(shù)據(jù)服務(wù)器在預(yù)置的時(shí)間內(nèi),比如每天凌晨用戶訪問量最低的時(shí)候,通過主動請求的方式從業(yè)務(wù)數(shù)據(jù)庫中讀取全量EPG內(nèi)容元數(shù)據(jù),以對本地存儲的全量對象化EPG內(nèi)容元數(shù)據(jù)比對更新。402、EPG邊緣數(shù)據(jù)服務(wù)器從EPG中心數(shù)據(jù)服務(wù)器中獲取最新的EPG全量對象化內(nèi)容元數(shù)據(jù);403、EPG邊緣數(shù)據(jù)服務(wù)器將最新的EPG全量對象化EPG內(nèi)容元數(shù)據(jù)與本地存儲的EPG全量對象化EPG內(nèi)容元數(shù)據(jù)進(jìn)行比對匹配,更新本地存儲的EPG全量對象化內(nèi)容元數(shù)據(jù);具體的,EPG邊緣數(shù)據(jù)服務(wù)器將最新的EPG全量對象化EPG內(nèi)容元數(shù)據(jù)時(shí)間戳與本地存儲的EPG全量對象化EPG內(nèi)容元數(shù)據(jù)的時(shí)間戳進(jìn)行對比,將時(shí)間戳更接近當(dāng)前時(shí)間的EPG內(nèi)容元數(shù)據(jù)作為最新EPG內(nèi)容元數(shù)據(jù)。用時(shí)間戳更接近當(dāng)前時(shí)間的EPG內(nèi)容元數(shù)據(jù)替換本地存儲的EPG內(nèi)容元數(shù)據(jù)
使得EPG邊緣數(shù)據(jù)服務(wù)器內(nèi)容元數(shù)據(jù)與業(yè)務(wù)數(shù)據(jù)庫內(nèi)容元數(shù)據(jù)保持一致,將EPG邊緣數(shù)據(jù)服務(wù)器中碎片數(shù)據(jù)清空,誤差數(shù)據(jù)補(bǔ)全。404、接收客戶端的EPG內(nèi)容元數(shù)據(jù)獲取請求,所述EPG內(nèi)容元數(shù)據(jù)獲取請求中包括內(nèi)容標(biāo)識;具體的,用戶通過機(jī)頂盒登錄EGP系統(tǒng),查詢某個(gè)感興趣節(jié)目的相關(guān)信息,向EGP數(shù)據(jù)服務(wù)器發(fā)送EPG內(nèi)容元數(shù)據(jù)獲取請求,該請求中包括內(nèi)容標(biāo)識,如節(jié)目標(biāo)識等。405、根據(jù)所述內(nèi)容標(biāo)識從本地緩存中查詢與所述內(nèi)容標(biāo)識對應(yīng)的EPG內(nèi)容元數(shù)據(jù)并返回給所述客戶端,并當(dāng)所述本地緩存中沒有與所述內(nèi)容標(biāo)識對應(yīng)的EPG內(nèi)容元數(shù)據(jù)時(shí),從本地存儲的全量對象化EPG內(nèi)容元數(shù)據(jù)中查詢與所述內(nèi)容標(biāo)識對應(yīng)的EPG內(nèi)容元數(shù)據(jù)并返回給所述客戶端。具體的,EPG數(shù)據(jù)服務(wù)器接收到客戶端內(nèi)容數(shù)據(jù)獲取請求后,根據(jù)該請求中攜帶的內(nèi)容標(biāo)識首先從本地緩存中查找與該內(nèi)容標(biāo)識對應(yīng)的內(nèi)容元數(shù)據(jù),如果EPG數(shù)據(jù)服務(wù)器本地緩存中存在與所述內(nèi)容標(biāo)識對應(yīng)的內(nèi)容元數(shù)據(jù),則直接從本地緩存中獲取然后返回給所述客戶端。如本地緩存中沒有與所述內(nèi)容標(biāo)識對應(yīng)的內(nèi)容元數(shù)據(jù),則再從本地存儲器中存儲的全量對象化EPG內(nèi)容元數(shù)據(jù)中查詢與所述內(nèi)容標(biāo)識對應(yīng)的內(nèi)容元數(shù)據(jù),獲取后返回給所述客戶端。如圖5A所示為本發(fā)明一實(shí)施例的EPG數(shù)據(jù)服務(wù)器結(jié)構(gòu)框圖;包括接口單元501,用于接收和響應(yīng)客戶端的EPG內(nèi)容元數(shù)據(jù)獲取請求,該請求中包括內(nèi)容標(biāo)識;查詢單元502,用于根據(jù)所述內(nèi)容標(biāo)識從本地緩存中查詢與所述內(nèi)容標(biāo)識對應(yīng)的EPG內(nèi)容元數(shù)據(jù),或者當(dāng)本地緩存中沒有與所述內(nèi)容標(biāo)識對應(yīng)的EPG內(nèi)容元數(shù)據(jù)時(shí),從本地存儲器中存儲的全量對象化EPG內(nèi)容元數(shù)據(jù)中查詢與所述內(nèi)容標(biāo)識對應(yīng)的EPG內(nèi)容元數(shù)據(jù);所述接口單元501還用于將查詢單元查詢到的與所述內(nèi)容標(biāo)識對應(yīng)的EPG內(nèi)容元數(shù)據(jù)返回給所述客戶端;還用于從中心數(shù)據(jù)服務(wù)器獲取全量對象化EPG內(nèi)容元數(shù)據(jù)。存儲單元503,用于將所述接口單元從中心數(shù)據(jù)服務(wù)器獲取全量對象化EPG內(nèi)容元數(shù)據(jù)存儲。緩存單元504,用于按照預(yù)置的比例將所述從中心數(shù)據(jù)服務(wù)器獲取的全量對象化EPG內(nèi)容元數(shù)據(jù)讀入并緩存;
本發(fā)明實(shí)施例的EPG數(shù)據(jù)服務(wù)器,由于EPG數(shù)據(jù)服務(wù)器采用對象化的方式存儲全量內(nèi)容元數(shù)據(jù),并根據(jù)一定的比例將全量內(nèi)容元數(shù)據(jù)讀入至其緩存中,在響應(yīng)客戶端內(nèi)容元數(shù)據(jù)請求時(shí),首先從其緩存中查找獲取,使得響應(yīng)速度更快,另外由于內(nèi)容元數(shù)據(jù)采用對象化的存儲方式,使得根據(jù)內(nèi)容標(biāo)識就能獲取與該內(nèi)容標(biāo)識對應(yīng)的相關(guān)內(nèi)容元數(shù)據(jù),相對于SQL數(shù)據(jù)庫存儲模式,內(nèi)容元數(shù)據(jù)獲取速度更快。如圖5B所示為本發(fā)明另一實(shí)施例的EPG數(shù)據(jù)服務(wù)器結(jié)構(gòu)框圖;包括接口單元501,用于接收和響應(yīng)客戶端的EPG內(nèi)容元數(shù)據(jù)獲取請求,該請求中包括內(nèi)容標(biāo)識;查詢單元502,用于根據(jù)所述內(nèi)容標(biāo)識從本地緩存中查詢與所述內(nèi)容標(biāo)識對應(yīng)的EPG內(nèi)容元數(shù)據(jù),或者當(dāng)本地緩存中沒有與所述內(nèi)容標(biāo)識對應(yīng)的EPG內(nèi)容元數(shù)據(jù)時(shí),從本地存儲器中存儲的全量對象化EPG內(nèi)容元數(shù)據(jù)中查詢與所述內(nèi)容標(biāo)識對應(yīng)的EPG內(nèi)容元數(shù) 據(jù);所述接口單元501還用于將查詢單元查詢到的與所述內(nèi)容標(biāo)識對應(yīng)的EPG內(nèi)容元數(shù)據(jù)返回給所述客戶端;還用于從中心數(shù)據(jù)服務(wù)器獲取全量對象化EPG內(nèi)容元數(shù)據(jù)。存儲單元503,用于將所述接口單元從中心數(shù)據(jù)服務(wù)器獲取全量對象化EPG內(nèi)容元數(shù)據(jù)存儲。緩存單元504,用于按照預(yù)置的比例將所述從中心數(shù)據(jù)服務(wù)器獲取的全量對象化EPG內(nèi)容元數(shù)據(jù)讀入并緩存;更新單元505,用于在預(yù)置的時(shí)間內(nèi)接收從EPG中心數(shù)據(jù)服務(wù)器通過超文本傳送協(xié)議HTTP消息下發(fā)的更新的對象化EPG內(nèi)容元數(shù)據(jù)可選的,更新單元505還可用于在預(yù)置的時(shí)間內(nèi),從EPG中心數(shù)據(jù)服務(wù)器獲取最新全量對象化EPG內(nèi)容元數(shù)據(jù),如所述最新全量對象化EPG內(nèi)容元數(shù)據(jù)的時(shí)間戳更接近當(dāng)前時(shí)間,則將所述最新全量對象化EPG內(nèi)容元數(shù)據(jù)與本地存儲的全量對象化EPG內(nèi)容元數(shù)據(jù)對比匹配,更新本地全量對象化EPG內(nèi)容元數(shù)據(jù)。如圖6所示為本發(fā)明一實(shí)施例的EPG內(nèi)容元數(shù)據(jù)管理系統(tǒng)結(jié)構(gòu)框圖;EPG邊緣數(shù)據(jù)服務(wù)器601,用于接收客戶端的EPG內(nèi)容元數(shù)據(jù)獲取請求,所述EPG內(nèi)容元數(shù)據(jù)獲取請求中包括內(nèi)容標(biāo)識;根據(jù)所述內(nèi)容標(biāo)識從本地緩存中查詢與所述內(nèi)容標(biāo)識對應(yīng)的EPG內(nèi)容元數(shù)據(jù)并返回給所述客戶端,并當(dāng)所述本地緩存中沒有與所述內(nèi)容標(biāo)識對應(yīng)的EPG內(nèi)容元數(shù)據(jù)時(shí),從本地存儲的全量對象化EPG內(nèi)容元數(shù)據(jù)中查詢與所述內(nèi)容標(biāo)識對應(yīng)的EPG內(nèi)容元數(shù)據(jù)并返回給所述客戶端;EPG中心數(shù)據(jù)服務(wù)器602,用于從業(yè)務(wù)數(shù)據(jù)庫中依據(jù)結(jié)構(gòu)化查詢語言SQL方式讀取并采用對象化方式存儲全量EPG內(nèi)容元數(shù)據(jù),還用于向所述EPG邊緣數(shù)據(jù)服務(wù)器提供所述全量對象化EPG內(nèi)容元數(shù)據(jù);業(yè)務(wù)數(shù)據(jù)庫603,用于根據(jù)EPG中心數(shù)據(jù)服務(wù)器結(jié)構(gòu)化查詢語言SQL請求,向所述EPG中心數(shù)據(jù)服務(wù)器下發(fā)全量EPG內(nèi)容元數(shù)據(jù)??蛇x的,所述EPG邊緣數(shù)據(jù)服務(wù)器701還用于在預(yù)置的時(shí)間內(nèi),從EPG中心數(shù)據(jù)服務(wù)器獲取最新全量對象化EPG內(nèi)容元數(shù)據(jù),如所述最新全量對象化EPG內(nèi)容元數(shù)據(jù)的時(shí)間戳更接近當(dāng)前時(shí)間,則將所述最新全量對象化EPG內(nèi)容元數(shù)據(jù)與本地存儲的全量對象化EPG內(nèi)容元數(shù)據(jù)對比匹配,更新本地全量對象化EPG內(nèi)容元數(shù)據(jù)。EPG邊緣數(shù)據(jù)服務(wù)器701還用于在預(yù)置的時(shí)間內(nèi),接收從EPG中心數(shù)據(jù)服務(wù)器通過超文本傳送協(xié)議HTTP消息下發(fā)的更新的對象化EPG內(nèi)容元數(shù)據(jù)。本發(fā)明實(shí)施例的EPG內(nèi)容元數(shù)據(jù)管理系統(tǒng),由EPG中心服務(wù)器將從業(yè)務(wù)數(shù)據(jù)服務(wù)器處獲取的全量EPG內(nèi)容元數(shù)據(jù)重新按照對象化方式封裝存儲并下發(fā)給EPG邊緣數(shù)據(jù)服務(wù)器,EPG邊緣數(shù)據(jù)服務(wù)器根據(jù)一定的比例將全量對象化EPG內(nèi)容元數(shù)據(jù)讀入至其緩存中,在響應(yīng)客戶端內(nèi)容元數(shù)據(jù)請求時(shí),首先從其緩存中查找獲取,使得響應(yīng)速度更快,并且由于內(nèi)容元數(shù)據(jù)采用對象化的存儲方式,使得根據(jù)內(nèi)容標(biāo)識就能獲取與該內(nèi)容標(biāo)識對應(yīng)的相關(guān)內(nèi)容元數(shù)據(jù),相對于SQL數(shù)據(jù)庫存儲模式,內(nèi)容元數(shù)據(jù)獲取速度更快。 另外,通過業(yè)務(wù)數(shù)據(jù)庫、EPG中心數(shù)據(jù)服務(wù)器、EPG邊緣數(shù)據(jù)服務(wù)器三級架構(gòu),提高整個(gè)系統(tǒng)的可持續(xù)擴(kuò)展性,每增加一臺中心數(shù)據(jù)服務(wù)器,可以負(fù)擔(dān)20臺以上的邊緣數(shù)據(jù)服務(wù)器,同時(shí)對業(yè)務(wù)數(shù)據(jù)庫只增加一臺EPG中心服務(wù)器數(shù)據(jù)訪問壓力,減輕業(yè)務(wù)數(shù)據(jù)的性能壓力。本領(lǐng)域普通技術(shù)人員可以理解實(shí)現(xiàn)上述實(shí)施例方法中的全部或部分流程,是可以通過計(jì)算機(jī)程序來指令相關(guān)的硬件來完成,上述的程序可存儲于一計(jì)算機(jī)可讀取存儲介質(zhì)中,該程序在執(zhí)行時(shí),可包括如上述各方法的實(shí)施例的流程。其中,上述的存儲介質(zhì)可為磁碟、光盤、只讀存儲記憶體(ROM :Read-OnIy Memory)或隨機(jī)存儲記憶體(RAM :RandomAccess Memory)等。綜上所述,以上僅為本發(fā)明的較佳實(shí)施例而已,并非用于限定本發(fā)明的保護(hù)范圍。凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
權(quán)利要求
1.ー種EPG內(nèi)容元數(shù)據(jù)的管理方法,其特征在于,包括 接收客戶端的EPG內(nèi)容元數(shù)據(jù)獲取請求,所述EPG內(nèi)容元數(shù)據(jù)獲取請求中包括內(nèi)容標(biāo)識; 根據(jù)所述內(nèi)容標(biāo)識從本地緩存中查詢與所述內(nèi)容標(biāo)識對應(yīng)的EPG內(nèi)容元數(shù)據(jù)并返回給所述客戶端,并當(dāng)所述本地緩存中沒有與所述內(nèi)容標(biāo)識對應(yīng)的EPG內(nèi)容元數(shù)據(jù)時(shí),從本地存儲的全量對象化EPG內(nèi)容元數(shù)據(jù)中查詢與所述內(nèi)容標(biāo)識對應(yīng)的EPG內(nèi)容元數(shù)據(jù)并返回給所述客戶端。
2.如權(quán)利要求I所述的方法,其特征在于,所述方法還包括,從中心數(shù)據(jù)服務(wù)器獲取全量對象化EPG內(nèi)容元數(shù)據(jù)。
3.如權(quán)利要求2所述的方法,其特征在于,所述全量對象化EPG內(nèi)容元數(shù)據(jù)由中心數(shù)據(jù)服務(wù)器從業(yè)務(wù)數(shù)據(jù)庫中依據(jù)結(jié)構(gòu)化查詢語言SQL方式讀取并采用對象化方式存儲。
4.如權(quán)利要求3所述的方法,其特征在于,所述采用對象化方式存儲包括將讀取的全量EPG內(nèi)容元數(shù)據(jù)按照內(nèi)容標(biāo)識重新封裝存儲,使得根據(jù)所述內(nèi)容標(biāo)識即能獲取所述內(nèi)容標(biāo)識對應(yīng)的節(jié)目所需的EPG內(nèi)容元數(shù)據(jù)。
5.如權(quán)利要求2所述的方法,其特征在于,所述方法還包括按照預(yù)置的比例將所述從中心數(shù)據(jù)服務(wù)器獲取的全量對象化EPG內(nèi)容元數(shù)據(jù)讀入本地緩存中。
6.如權(quán)利要求I所述的方法,其特征在于,還包括 在預(yù)置的時(shí)間內(nèi),接收從EPG中心數(shù)據(jù)服務(wù)器通過超文本傳送協(xié)議HTTP消息下發(fā)的更新的對象化EPG內(nèi)容元數(shù)據(jù)。
7.如權(quán)利要求I所述的方法,其特征在于,所述方法還包括在預(yù)置的時(shí)間內(nèi),從EPG中心數(shù)據(jù)服務(wù)器獲取最新全量對象化EPG內(nèi)容元數(shù)據(jù),如所述最新全量對象化EPG內(nèi)容元數(shù)據(jù)的時(shí)間戳更接近當(dāng)前時(shí)間,則將所述最新全量對象化EPG內(nèi)容元數(shù)據(jù)與本地存儲的全量對象化EPG內(nèi)容元數(shù)據(jù)對比匹配,更新本地全量對象化EPG內(nèi)容元數(shù)據(jù)。
8.—種EPG數(shù)據(jù)服務(wù)器,其特征在于,包括 接ロ單元,用于接收客戶端的EPG內(nèi)容元數(shù)據(jù)獲取請求,所述EPG內(nèi)容元數(shù)據(jù)獲取請求包括內(nèi)容標(biāo)識; 查詢單元,用于根據(jù)所述內(nèi)容標(biāo)識從本地緩存中查詢與所述內(nèi)容標(biāo)識對應(yīng)的EPG內(nèi)容元數(shù)據(jù),或者當(dāng)本地緩存中沒有與所述內(nèi)容標(biāo)識對應(yīng)的EPG內(nèi)容元數(shù)據(jù)時(shí),從本地存儲器中存儲的全量對象化EPG內(nèi)容元數(shù)據(jù)中查詢與所述內(nèi)容標(biāo)識對應(yīng)的EPG內(nèi)容元數(shù)據(jù); 所述接ロ單元還用于將查詢單元查詢到的與所述內(nèi)容標(biāo)識對應(yīng)的EPG內(nèi)容元數(shù)據(jù)返回給所述客戶端。
9.如權(quán)利要求8所述的EPG數(shù)據(jù)服務(wù)器,其特征在干, 所述接ロ単元,還用于從中心數(shù)據(jù)服務(wù)器獲取全量對象化EPG內(nèi)容元數(shù)據(jù)。
10.如權(quán)利要求9所述的EPG數(shù)據(jù)服務(wù)器,其特征在于,還包括 存儲單元,用于將所述接ロ單元從中心數(shù)據(jù)服務(wù)器獲取的全量對象化EPG內(nèi)容元數(shù)據(jù)存儲。
11.如權(quán)利要求10所述的EPG數(shù)據(jù)服務(wù)器,其特征在于,還包括 緩存單元,用于按照預(yù)置的比例將所述從中心數(shù)據(jù)服務(wù)器獲取的全量對象化EPG內(nèi)容元數(shù)據(jù)讀入并緩存。
12.如權(quán)利要求8所述的EPG數(shù)據(jù)服務(wù)器,其特征在干, 更新単元,用于在預(yù)置的時(shí)間內(nèi)接收從EPG中心數(shù)據(jù)服務(wù)器通過超文本傳送協(xié)議HTTP消息下發(fā)的更新的對象化EPG內(nèi)容元數(shù)據(jù)。
13.如權(quán)利要求12所述的EPG數(shù)據(jù)服務(wù)器,其特征在于,所述更新單元還還用于 在預(yù)置的時(shí)間內(nèi),從EPG中心數(shù)據(jù)服務(wù)器獲取最新全量對象化EPG內(nèi)容元數(shù)據(jù),如所述最新全量對象化EPG內(nèi)容元數(shù)據(jù)的時(shí)間戳更接近當(dāng)前時(shí)間,則將所述最新全量對象化EPG內(nèi)容元數(shù)據(jù)與本地存儲的全量對象化EPG內(nèi)容元數(shù)據(jù)對比匹配,更新本地全量對象化EPG內(nèi)容元數(shù)據(jù)。
14.ー種EPG內(nèi)容元數(shù)據(jù)管理系統(tǒng),其特征在于,包括 EPG邊緣數(shù)據(jù)服務(wù)器,用于接收客戶端的EPG內(nèi)容元數(shù)據(jù)獲取請求,所述EPG內(nèi)容元數(shù)據(jù)獲取請求中包括內(nèi)容標(biāo)識;根據(jù)所述內(nèi)容標(biāo)識從本地緩存中查詢與所述內(nèi)容標(biāo)識對應(yīng)的EPG內(nèi)容元數(shù)據(jù)并返回給所述客戶端,并當(dāng)所述本地緩存中沒有與所述內(nèi)容標(biāo)識對應(yīng)的EPG內(nèi)容元數(shù)據(jù)時(shí),從本地存儲的全量對象化EPG內(nèi)容元數(shù)據(jù)中查詢與所述內(nèi)容標(biāo)識對應(yīng)的EPG內(nèi)容元數(shù)據(jù)并返回給所述客戶端; EPG中心數(shù)據(jù)服務(wù)器,用于向所述EPG邊緣數(shù)據(jù)服務(wù)器提供所述全量對象化EPG內(nèi)容元數(shù)據(jù)。
15.如權(quán)利要求14所述的EPG內(nèi)容元數(shù)據(jù)系統(tǒng),其特征在于,所述EPG中心數(shù)據(jù)服務(wù)器還用于從業(yè)務(wù)數(shù)據(jù)庫中依據(jù)結(jié)構(gòu)化查詢語言SQL方式讀取并采用對象化方式存儲全量EPG內(nèi)容元數(shù)據(jù)。
16.如權(quán)利要求15所述的EPG內(nèi)容元數(shù)據(jù)系統(tǒng),其特征在于,還包括 業(yè)務(wù)數(shù)據(jù)庫,用于根據(jù)EPG中心數(shù)據(jù)服務(wù)器結(jié)構(gòu)化查詢語言SQL請求,向所述EPG中心數(shù)據(jù)服務(wù)器下發(fā)全量EPG內(nèi)容元數(shù)據(jù)。
17.如權(quán)利要求14所述的EPG內(nèi)容元數(shù)據(jù)系統(tǒng),其特征在于,所述EPG邊緣數(shù)據(jù)服務(wù)器還用于在預(yù)置的時(shí)間內(nèi),接收從EPG中心數(shù)據(jù)服務(wù)器通過超文本傳送協(xié)議HTTP消息下發(fā)的更新的對象化EPG內(nèi)容元數(shù)據(jù)。
18.如權(quán)利要求14所述的EPG內(nèi)容元數(shù)據(jù)系統(tǒng),其特征在于,所述EPG邊緣數(shù)據(jù)服務(wù)器還用于在預(yù)置的時(shí)間內(nèi),從EPG中心數(shù)據(jù)服務(wù)器獲取最新全量對象化EPG內(nèi)容元數(shù)據(jù),如所述最新全量對象化EPG內(nèi)容元數(shù)據(jù)的時(shí)間戳更接近當(dāng)前時(shí)間,則將所述最新全量對象化EPG內(nèi)容元數(shù)據(jù)與本地存儲的全量對象化EPG內(nèi)容元數(shù)據(jù)對比匹配,更新本地全量對象化EPG內(nèi)容元數(shù)據(jù)。
全文摘要
本發(fā)明實(shí)施例提供了一種EPG內(nèi)容元數(shù)據(jù)的管理方法,包括接收客戶端的EPG內(nèi)容元數(shù)據(jù)獲取請求,根據(jù)所述內(nèi)容標(biāo)識從本地緩存中查詢與所述內(nèi)容標(biāo)識對應(yīng)的EPG內(nèi)容元數(shù)據(jù)并返回給所述客戶端,并當(dāng)所述本地緩存中沒有與所述內(nèi)容標(biāo)識對應(yīng)的EPG內(nèi)容元數(shù)據(jù)時(shí),從本地存儲的全量對象化EPG內(nèi)容元數(shù)據(jù)中查詢與所述內(nèi)容標(biāo)識對應(yīng)的EPG內(nèi)容元數(shù)據(jù)并返回給所述客戶端。本發(fā)明實(shí)施例的EPG內(nèi)容元數(shù)據(jù)的管理方法,邊緣EPG數(shù)據(jù)服務(wù)器在響應(yīng)客戶端內(nèi)容元數(shù)據(jù)請求時(shí),由于內(nèi)容元數(shù)據(jù)采用對象化的存儲方式,使得根據(jù)內(nèi)容標(biāo)識就能獲取與該內(nèi)容標(biāo)識對應(yīng)的相關(guān)內(nèi)容元數(shù)據(jù),相對于SQL數(shù)據(jù)庫存儲模式,內(nèi)容元數(shù)據(jù)獲取速度更快。
文檔編號H04N21/232GK102685552SQ20121014020
公開日2012年9月19日 申請日期2012年5月8日 優(yōu)先權(quán)日2012年5月8日
發(fā)明者魏志剛 申請人:華為技術(shù)有限公司