專利名稱:流媒體系統及其多媒體文件的切片存儲和流服務方法
技術領域:
本發明涉及多媒體通信和網絡電視(IPTV)領域,尤其涉及多媒 體文件的切片方法、 一種流媒體服務系統中以媒體文件為存儲單元的 網格存儲和網格流服務方法、及流媒體服務系統。
背景技術:
隨著多媒體網絡通信技術的發展,高比特率多媒體流式傳輸尤其 是高比特率視頻流式傳輸已從處理數千同步用戶發展到了數百萬用 戶。例如,以IPTV為代表的高碼率的流媒體服務,已經發展到百萬 用戶的階段,靠集中的強大機器來提供存儲和流服務已經無法滿足這 樣的需求。因此,基于集群甚至多集群的服務器提供網格存儲和網格 流服務的方式以成為必然的解決方案。在一般的網格存儲技術里,由于對文件類型完全透明,不論任何 的文件,都會被簡單的劃分等長的塊,以存儲到不同的區域去。這樣 的網格存儲,由于整個媒體文件的索引信息集中地存儲在某個區域 中,對于流媒體服務來說,每個媒體文件的每個塊都無法獨立服務, 都必須通過從存儲集群拷貝到流服務集群后才能進行流服務。圖3示 出現有技術的分塊網格存儲格式示意圖。現有技術中的分塊網格存儲 格式只是對文件做簡單的分塊,而不關心文件里面的內容和格式。其 分塊的結果是,該媒體文件的索引信息常常被分割到其中某個分塊 中,而剩余的所有的分塊都沒有索引信息。因此,這些分塊都無法獨 立的進行流服務。如圖3所示,由于現有技術中存儲和流服務器屬于 兩個物理上相互獨立的集群,因此在存儲數據節點(7)只存儲有將 多媒體文件分成的分塊l、 2......k。存儲控制節點(6)控制各存儲數 據節點(7),在存儲控制節點(6)中存儲有文件的分塊位置信息。 由于現有技術的分塊不關心文件里面的內容和格式,因此,如圖3所 示,例如,只在分塊k中有整個文件的媒體內容索引信息。這樣,如 圖4所示,每個媒體文件的每個塊都無法獨立服務,都必須通過從存 儲集群拷貝到流服務集群后才能進行流服務。圖4示出現有技術網格 存儲和網格流服務分離的流媒體系統示意圖。由于圖3中所示的分塊網格存儲格式的原因,在這種體系結構中網格存儲和網格流服務常常 在物理上是兩個不同的集群,它們之間通過內部的網絡交換把存儲在 各個不同的存儲單元中的文件分塊依次讀取并拷貝到某個流媒體服 務單元中,然后再依次進行流服務。即,如圖3所示,例如,只在分 塊k中有整個文件的媒體內容索引信息,而與流服務請求對應的內容 的分塊被調用時,帶有整個文件的媒體內容索引信息的分塊k必須同 時被調用,這樣,就不能僅調用與流服務請求對應的內容的分塊所存儲在的存儲數據節點。如圖4所示,流服務器節點1........ n (8)構成流服務節點集群,存儲數據節點1........ n (7)構成存儲數據節點集群,流服務控制節點(9)控制各流服務節點,存儲控制節點 (6)控制各存儲數據節點。當用戶(5)發出流服務請求后,存儲控 制節點(6)按照存儲的文件的分塊位置信息將原本構成一個多媒體 文件的分塊1、 2......n經內部交換網絡依次讀取并拷貝到流服務節點1中,這樣,在流服務節點1中就不但包含有與流服務請求對應的內 容的分塊,還包含帶有整個文件的媒體內容索引信息的分塊k。這樣, 流服務節點就能進行處理,經外部網絡向用戶進行流服務。因此,在這種體系結構中,存在著存儲和流服務兩個物理上相互 獨立的集群,它們之間通過網絡交換進行數據交互。在這種方案中, 交換的成本非常昂貴,性能上也常常成為瓶頸。而且,存儲和流服務 分屬不同的集群服務器,不能充分利用每臺服務器的硬件資源,也增 加了硬件成本。發明內容5
本發明的一個目的是降低硬件成本,減少網絡拷貝,降低網絡流量,并提升流媒體服務器的IO能力和流服務能力,從而提供高性價比的流媒體服務。本發明提供了一種多媒體文件的切片方法,包括利用多媒體文 件切片器將多媒體文件切片,使得所得到的每一切片都包含部分媒體 內容和與該部分媒體內容相對應的索引信息;將各切片以分散的方式 存儲在各媒體引擎中。在本發明的一方面,將切片所存儲在的媒體引擎的信息與標識該 切片的媒體內容的信息、索引信息一起存儲在媒體引向器中。在本發明的一方面,所述切片是基本的存儲和流服務單位。在本發明的一方面,所述切片是基于固定長度大小或固定媒體播 放時間長度進行的。在本發明的一方面,所述多媒體文件切片器是軟件處理模塊,可 處理各種通用的多媒體文件格式,也可處理專有文件格式;經過多媒 體文件切片器處理后所形成的切片文件的文件格式可以是專有文件 格式,也可以是通用的多媒體文件格式。本發明還提供了 一種流媒體服務系統中以媒體文件為存儲單元 的網格存儲和網格流服務方法,其中流媒體服務系統包括媒體引向器 和多個媒體引擎,每個所述媒體引擎都同時具有流存儲能力和流服務 能力,所述方法包括媒體引向器中存儲有文件切片存儲在的媒體引 擎位置信息,其根據流服務請求的內容所對應的切片文件的存儲位 置,將該流服務請求調度到相應的媒體引擎;在該切片的流服務完成 時根據該文件的后續切片的存儲位置切換到新的媒體引擎進行流服 務。在本發明的一方面,所述切片有多個備份,將所述多個備份存儲 到不同的媒體引擎中。在本發明的一方面,媒體引擎是一個網格存儲和網格流服務的基 本單元,所述切片從存儲的媒體引擎讀取后直接在該媒體引擎中處 理,直接對用戶提供流服務。
在本發明的一方面,當一個切片的流服務接近結束時,由媒體引向器(4)把流服務引向存儲有下一切片且有流服務能力的媒體引擎, 繼續提供流服務,整個過程無需用戶交互。本發明還提供了一種流媒體服務系統,包括多個媒體引擎,每 個媒體引擎包括具有流服務能力的流服務裝置和存儲有多媒體文件 的切片的切片存儲裝置;媒體引向器,包括管理多媒體文件切片所存 儲在的媒體引擎位置的存儲管理器以及調度和切換流服務的流服務 引向器。本發明通過將存儲功能和流服務功能集成到媒體引擎中,相對于 現有技術集中式的存儲和流服務,大大提高了并發的流服務能力。在此基礎上,網格存儲和網格流服務就可以共享相同的集群或多 集群服務器(即圖中的媒體引擎),也就是說,每個服務器單元(媒 體引擎)既是網格存儲單元,又是網格流服務單元,從而提高每個服 務器單元使用效率,降低硬件成本和交換成本。一個多媒體文件經過多媒體文件切片器處理后形成多個切片,每 個切片都是一個包含部分媒體內容及其索引信息的文件。多媒體文件 切片作為單元進行網格存儲,其在媒體引擎中的位置存儲在媒體引向器中,這樣,媒體引向器可以查詢該位置信息。同時,多媒體文件切 片作為一個基本的流服務單元進行網格流服務。采用本發明的方法, 可使網格存儲和網格流服務共享集群服務器(媒體引擎),從而降低 硬件成本,減少網絡拷貝,減低網絡流量,并提升流媒體服務器的IO 能力和流服務能力,從而提供高性價比的流媒體服務。
在參照附圖閱讀了本發明的具體實施方式
以后,本發明的優點、 特征、及各個方面將會顯而易見,其中圖1是本發明的流媒體服務系統的基本體系結構框圖,其示出了 本發明的基于切片的多媒體文件的網格存儲格式;圖2是本發明的多媒體文件切片原理示意圖3示出現有技術的分塊網格存儲格式及相應的流媒體服務系 統示意圖;圖4示出現有技術網格存儲和網格流服務分離的流媒體系統示意圖;圖5示出基于本發明的網格存儲和網格流服務共享集群服務器 的系統示意圖;圖6是本發明的綜合系統體系結構框圖。
具體實施方式
本發明提供了一種流媒體服務系統,包括多個媒體引擎,每個 媒體引擎包括具有流服務能力的流服務裝置,和存儲有多媒體文件切 片的切片存儲裝置;媒體引向器,包括管理多媒體文件切片的存儲位 置的存儲管理器,以及調度和切換流服務的流服務引向器。本發明還 提供了多媒體文件的切片方法,以切片為單元的存儲方法以及流服務 調度和切換方法。 一個多媒體文件經過多媒體文件切片器處理后形成 多個包含部分媒體內容及其索引信息的切片,分散存儲到各個媒體引 擎中,并在存儲管理器中生成位置索引信息。媒體引向器根據流服務 請求的內容所對應的文件切片的存儲位置,將該流服務請求調度到相 應的媒體引擎,并在某個切片的流服務完成時根據該文件的后續切片 的存儲位置進行流服務切換到新的媒體引擎中,直到該流服務結束。 采用本發明的系統和方法,可使網格存儲和網格流服務共享集群服務 器,從而降低硬件成本,減少網絡拷貝,減低網絡流量,并提升流媒 體服務器的IO能力和流服務能力。從而提供高性價比的流媒體服務。 下面參照附圖,對本發明的具體實施方式
作進一步的詳細描述。 圖1是本發明的流媒體服務系統的基本體系結構框圖,其示出了 本發明的基于切片的多媒體文件的網格存儲格式。圖l的流媒體服務 系統包括多個媒體引擎(3)和媒體引向器(4)。每個媒體引擎包含 一定的存儲能力和流服務能力,作為一個網格存儲和網格流服務的基 本單元,其包括具有流服務能力的流服務裝置(301)和存儲有多媒
體文件的切片的切片存儲裝置(302),如圖1所示,媒體引擎1包 括切片2、 k,媒體引擎2包括切片1、 2,等等。它與圖3中的現有 技術相比, 一個區別是圖3的各存儲數據節點中沒有流服務裝置,如 圖4所示,現有技術中的流服務裝置與存儲數據節點是分開的,而本 發明是將它們集成在一個媒體引擎中。流服務裝置(301)和切片存 儲裝置(302)功能與圖4的存儲數據節點和流服務節點類似(除了 這一點以外即本發明的媒體內容索引信息也要切開,并與相應的媒 體內容放在一個切片內,而現有技術則把整個文件的媒體內容索引信 息放在一起,很可能在一個切片里),因此,流服務裝置(301)和 切片存儲裝置(302)可以參照圖4的存儲數據節點和流服務節點由 本領域技術人員實現。圖l與圖3的現有技術的另一個區別就是在圖 3中整個文件的媒體內容搜索信息是放在一起存儲在某一個分塊中 的,而本發明是把它們分到各個切片中,即將多媒體文件切片,使得 所得到的每一切片都包含部分媒體內容和與該部分媒體內容相對應 的索引信息,即先劃分多媒體文件的媒體內容,然后將與劃成一份的 媒體內容相對應的索引信息找出來與其放在同一個媒體引擎內作為 一個切片。即,所述切片包含部分媒體內容和與該部分媒體內容相對 應的索引信息,是基本的存儲和流服務單位。媒體引向器(4)接收 流服務請求,確定與該流服務請求的內容對應的切片所存儲在的媒體 引擎,將該流服務請求調度到該確定出的媒體引擎,該確定出的媒體 引擎中的流服務裝置(301)從切片存儲裝置(302)讀取切片進行流服 務。也就是說,媒體引向器是網格存儲和網格流服務的控制器,根據 流服務請求的內容所對應的切片的存儲位置和流服務能力,調度和切 換用戶的流服務請求。媒體引向器(4)可由本領域技術人員通過上 面簡述和下面的詳述的功能通過軟件或硬件實現。除了圖l所示的媒 體引擎(3)和媒體引向器(4)之外,如圖2和6所示,本發明的系 統還可包括多媒體文件切片器(2)。利用所述多媒體文件切片器(2) 將多媒體文件切片,使得所得到的每一切片都包含部分媒體內容和與 該部分媒體內容相對應的索引信息,并將各切片以分散的方式存儲在 各媒體引擎(3)中的各切片存儲裝置(302)內。與此同時,多媒體文 件切片器(2)可以將切片所存儲在的媒體引擎的位置信息與標識該 切片的媒體內容的信息、索引信息一起存儲在媒體引向器(4)的存 儲管理器(402)中。切片可以基于固定長度大小進行,也可以基于 固定媒體播放時間長度進行。所述多媒體文件切片器是軟件處理模 塊,由本領域技術人員通過軟件實現,可處理各種通用的多媒體文件 格式,也可處理專有文件格式;經過多媒體文件切片器處理后所形成 的切片文件,其文件格式可以是專有文件格式,也可以是通用的多媒 體文件格式。在圖5中, 一個多媒體文件被劃分成k個切片,每個切 片都是經過切片轉換流程后形成的一個獨立的媒體文件,包含部分媒 體內容以及它們的文件索引信息,作為基本的流服務單位。根據配置, 每個切片的網格存儲都可以有多個備份。切片和切片的備份的位置信 息保存在媒體引向器里。圖2示出本發明的多媒體文件切片原理示意圖。參照圖2,任何 一個多媒體文件經過多媒體文件切片器切片后都將形成切片1、......、k,多媒體文件(1)中含有的整個文件的媒體內容索引信息(101) 也分割到每個切片內,作為與該切片內媒體內容相對應的索引信息。 并存儲到圖l所示的網格存儲架構中。如圖1、圖5和圖6所示,所述媒體引向器(4)包括存儲管 理器(402),如上所述,多媒體文件切片器(2)已經將切片所存儲 在的媒體引擎的位置信息與標識該切片的媒體內容的信息、索引信息 一起相對應地存儲在媒體引向器(4)的存儲管理器(402)中;流服 務引向器(401),當接收到流服務器請求后,根據流服務請求的媒 體內容在存儲管理器(402)中尋找與該媒體內容相對應的存儲到的 媒體引擎(3),因為標識切片的媒體內容的信息、相對應的索引信 息和存儲到的媒體引擎(3)位置已經相對應地存儲到了該存儲管理 器(402)中,該流服務引向器(401)就可以得知與該媒體內容相對 應的存儲到的媒體引擎(3),然后就可以調度該媒體引擎(3)工作, 該媒體引擎(3)中的流服務裝置(301)從其切片存儲裝置(302)讀取
切片后直接在該媒體引擎(3)中處理。如圖6所示,多媒體文件切片器(2)將多媒體文件(1)切片, 使得所得到的每一切片都包含部分媒體內容和與該部分媒體內容相 對應的索引信息,并將各切片以分散的方式存儲在各媒體引擎(3) 的切片存儲裝置(302)中,此外還將切片所存儲在的媒體引擎的信 息與標識該切片的媒體內容的信息、索引信息 一起存儲在媒體引向器(4)中。由于切片所存儲在的媒體引擎的信息與標識該切片的媒體 內容的信息、索引信息已經相關聯地存儲在了媒體引向器(4)的存 儲管理器(402)中,因此當流服務引向器(401)接收到了流服務器 請求后,根據流服務請求中的媒體內容在存儲管理器(402)中尋找 與該媒體內容相對應的存儲到的媒體引擎(3)。當該流服務引向器(401)得知與該媒體內容相對應的存儲到的媒體引擎(3)后,調度 該媒體引擎(3)工作,該媒體引擎(3)中的流服務裝置(301)從 其切片存儲裝置(302)讀取切片后直接在該媒體引擎(3)中處理,直 接對用戶(5)進行流服務。由于在本發明中,每個流服務請求所請求的媒體內容大小不同, 有可能一個流服務請求所請求的媒體內容需要多個切片才能滿足,這 時,在一個切片的流服務結束之前(最好是一個切片的流服務接近結 束時),如果媒體引向器(4)判斷出還有其它切片與所述流服務請 求相對應,由媒體引向器(4)調度存儲有所述其它切片的媒體引擎(3),繼續提供流服務。另外,如圖1所示, 一個切片可以有多個備份,比如,切片1 同時備份在媒體引擎2和n中。這樣,如果媒體引擎2中的切片1出 現問題,還可以調度媒體引擎n中的切片1。圖5是基于本發明的網格存儲和網格流服務共享集群服務器(媒 體引擎)的系統示意圖。從圖中可以看到,采用基于切片的網格存儲 技術之后,每個切片都是可獨立的流服務單元。因此,網格存儲和網 格流服務器可共享一個物理上的集群服務器。切片從切片存儲裝置(302)中讀取后直接在該媒體引擎的流服務裝置(301)中處理后就
可做各種各樣的業務,并直接對用戶(5)提供流服務。當一個切片 的流服務接近結束時,在由媒體引向器把流服務引向下一個存儲有下 一切片且有流服務能力的媒體引擎,繼續提供流服務,整個過程中無 需用戶交互。本發明的媒體引向器(4)中的存儲管理器(402)和流服務引向 器(401)、媒體引擎(3)中的流服務裝置(301)、切片存儲裝置 (302 )可由本領域技術人員根據上面所述的功能通過軟件或硬件實 現。上面參照附圖描述了本發明的具體實施方式
。但是,本領域中的 普通技術人員能夠理解,在不偏離本發明的精神和范圍的情況下,還 可以對本發明的具體實施方式
作各種變更和替換。這些變更和替換都 落在本發明權利要求書所限定的范圍內。
權利要求
1.一種多媒體文件的切片方法,包括利用多媒體文件切片器(2)將多媒體文件切片,使得所得到的每一切片都包含部分媒體內容和與該部分媒體內容相對應的索引信息;將各切片以分散的方式存儲在各媒體引擎(3)中。
2. 如權利要求l所述的方法,其特征在于還包括將切片所存 儲在的媒體引擎的信息與標識該切片的媒體內容的信息、索引信息一 起存儲在媒體引向器(4)中。
3. 如權利要求l所述的方法,其特征在于,所述切片是基本的 存儲和流服務單位。
4. 如權利要求l所述的方法,其特征在于,所述切片是基于固 定長度大小或固定媒體播放時間長度進行的。
5. 如權利要求l所述的方法,其特征在于,所述多媒體文件切 片器是軟件處理模塊,可處理各種通用的多媒體文件格式,也可處理 專有文件格式;經過多媒體文件切片器處理后所形成的切片文件的文 件格式可以是專有文件格式,也可以是通用的多媒體文件格式。
6. —種流媒體服務系統中以媒體文件為存儲單元的網格存儲和 網格流服務方法,其中流媒體服務系統包括媒體引向器(4)和多個 媒體引擎(3),每個所述媒體引擎(3)都同時具有流存儲能力和流 服務能力,所述方法包括媒體引向器(4 )中存儲有文件切片存儲在的媒體引擎位置信息, 其根據流服務請求的內容所對應的切片文件的存儲位置,將該流服務 請求調度到相應的媒體引擎;在該切片的流服務完成時根據該文件的后續切片的存儲位置切 換到新的媒體引擎進行流服務。
7. 如權利要求6所述的方法,其特征在于,所述切片有多個備 份,將所述多個備份存儲到不同的媒體引擎中。
8. 如權利要求6所述的方法,其特征在于,媒體引擎是一個網 格存儲和網格流服務的基本單元,所述切片從存儲的媒體引擎讀取后 直接在該媒體引擎中處理,直接對用戶提供流服務。
9. 如權利要求6所述的方法,其中,當一個切片的流服務接近 結束時,由媒體引向器(4)把流服務引向存儲有下一切片且有流服 務能力的媒體引擎,繼續提供流服務,整個過程無需用戶交互。
10. —種流媒體服務系統,包括多個媒體引擎(3),每個媒體引擎包括具有流服務能力的流服 務裝置(301)和存儲有多媒體文件的切片的切片存儲裝置(302);媒體引向器(4),包括管理多媒體文件切片所存儲在的媒體引 擎位置的存儲管理器(402)以及調度和切換流服務的流服務引向器 (401)。
全文摘要
本發明提供了一種流媒體服務系統,包括多個媒體引擎,每個媒體引擎包括具有流服務能力的流服務裝置,和存儲有多媒體文件切片的切片存儲裝置;媒體引向器,包括管理多媒體文件切片的存儲位置的存儲管理器,以及調度和切換流服務的流服務引向器。本發明還提供了多媒體文件的切片方法,以切片為單元的存儲方法以及流服務調度和切換方法。采用本發明的系統和方法,可使網格存儲和網格流服務共享集群服務器,從而降低硬件成本,減少網絡拷貝,減低網絡流量,并提升流媒體服務器的IO能力和流服務能力。從而提供高性價比的流媒體服務。
文檔編號H04L29/00GK101127898SQ20071015377
公開日2008年2月20日 申請日期2007年9月20日 優先權日2007年9月20日
發明者寧 彭, 李繼優, 謝主中, 陳俊楷, 龍世渚 申請人:Ut斯達康通訊有限公司