一種信息存儲方法及裝置的制造方法
【技術領域】
[0001]本發(fā)明涉及數(shù)據(jù)存儲技術領域,尤其涉及一種信息存儲方法及裝置。
【背景技術】
[0002]隨著網絡和文化事業(yè)的發(fā)展,音視頻資源極大豐富,對音視頻文件的處理的需要也快速增長。
[0003]音視頻文件處理的大致流程如下:首先將需處理的音視頻文件解封裝成為視頻幀序列和音頻幀序列;然后將視頻幀序列和音頻幀序列分別解碼為RAW格式和PCM格式數(shù)據(jù);對RAW格式和PCM格式數(shù)據(jù)進行處理;再將RAW格式和PCM格式的數(shù)據(jù)編碼為所需格式的音頻幀序列和視頻幀序列;最后將音頻幀序列和視頻幀序列封裝成需要的文件格式。
[0004]以上處理是通過計算機或計算機構成的數(shù)據(jù)處理裝置來完成的,現(xiàn)有的這些計算機或數(shù)據(jù)處理裝置是依靠本機的軟硬件資源來實現(xiàn)對文件的處理。音視頻文件處理的計算量龐大,對處理裝置的運算能力和存儲資源消耗很大,而且隨著高清音視頻文件的日益增多和處理需求的不斷增大,依靠單機進行音視頻文件處理的瓶頸問題日益突出,單機處理速度慢且容易發(fā)生系統(tǒng)崩潰。即使用戶使用配置很高的計算機也難以保證處理的速度和穩(wěn)定程度,尤其無法滿足大批量和時間要求很高的處理任務。
[0005]鑒于現(xiàn)有技術中存在的以上問題,提供了一種分布式處理系統(tǒng),使用多臺計算機或處理裝置來實現(xiàn)并行處理,并通過本發(fā)明的信息存儲方法為分布式處理系統(tǒng)中的各個裝置存儲信息,從而大大減少了處理所需的時間,同時降低了系統(tǒng)的處理壓力,減少了系統(tǒng)崩潰的可能性。
【發(fā)明內容】
[0006]本發(fā)明實施例提供一種信息存儲方法及裝置,包括如下技術方案:
[0007]根據(jù)本發(fā)明實施例的第一方面,提供一種信息存儲方法,用于分布式處理系統(tǒng),所述分布式處理系統(tǒng)包括調度裝置、監(jiān)視裝置和多個音視頻處理裝置,所述方法包括:
[0008]控制所述調度裝置獲取所述多個音視頻處理裝置的服務器狀態(tài)信息,并存儲至預設存儲空間;
[0009]控制所述監(jiān)視裝置獲取所述分布式處理系統(tǒng)執(zhí)行的任務的任務處理狀態(tài)信息,并存儲至所述預設存儲空間,其中,所述服務器狀態(tài)信息和所述任務處理狀態(tài)在所述預設存儲空間中以預設存儲格式存儲。
[0010]在一個實施例中,所述預設存儲空間包括第一存儲區(qū)域、第二存儲區(qū)域和第三存儲區(qū)域,其中,所述第一存儲區(qū)域、第二存儲區(qū)域和第三存儲區(qū)域的內存地址依次相連。
[0011 ] 在一個實施例中,所述第一存儲區(qū)域用于存儲服務器狀態(tài)信息保存的開始地址偏移量,所述第二存儲區(qū)域包括第一子存儲區(qū)域和第二子存儲區(qū)域,所述第一子存儲區(qū)域用于存儲執(zhí)行的任務的任務文件的個數(shù)和任務處理狀態(tài)信息的偏移量,所述第二子存儲區(qū)域用于存儲所述任務處理狀態(tài)信息,所述第三存儲區(qū)域包括第三存儲子區(qū)域和第四存儲子區(qū)域,所述第三存儲子區(qū)域用于存儲服務器的個數(shù),所述第四存儲子區(qū)域用于存儲服務器狀態(tài)?目息Ο
[0012]在一個實施例中,所述第一存儲區(qū)域占用的內存地址的字節(jié)數(shù)為4,所述第二存儲區(qū)域占用的內存地址的字節(jié)數(shù)為4+任務文件的個數(shù)X4,所述第三存儲區(qū)域占用的內存地址的字節(jié)數(shù)為4+服務器個數(shù)X服務狀態(tài)信息的長度。
[0013]在一個實施例中,所述方法還包括:
[0014]接收輸入的存儲空間設置命令;
[0015]根據(jù)所述存儲空間設置命令,設置所述預設存儲空間。
[0016]根據(jù)本發(fā)明實施例的第二方面,提供一種信息存儲裝置,用于分布式處理系統(tǒng),所述分布式處理系統(tǒng)包括調度裝置、監(jiān)視裝置和多個音視頻處理裝置,所述信息存儲裝置包括:
[0017]第一存儲模塊,用于控制所述調度裝置獲取所述多個音視頻處理裝置的服務器狀態(tài)信息,并存儲至預設存儲空間;
[0018]第二存儲模塊,用于控制所述監(jiān)視裝置獲取所述分布式處理系統(tǒng)執(zhí)行的任務的任務處理狀態(tài)信息,并存儲至所述預設存儲空間,其中,所述服務器狀態(tài)信息和所述任務處理狀態(tài)在所述預設存儲空間中以預設存儲格式存儲。
[0019]在一個實施例中,所述預設存儲空間包括第一存儲區(qū)域、第二存儲區(qū)域和第三存儲區(qū)域,其中,所述第一存儲區(qū)域、第二存儲區(qū)域和第三存儲區(qū)域的內存地址依次相連。
[0020]在一個實施例中,所述第一存儲區(qū)域用于存儲服務器狀態(tài)信息保存的開始地址偏移量,所述第二存儲區(qū)域包括第一子存儲區(qū)域和第二子存儲區(qū)域,所述第一子存儲區(qū)域用于存儲執(zhí)行的任務的任務文件的個數(shù)和任務處理狀態(tài)信息的偏移量,所述第二子存儲區(qū)域用于存儲所述任務處理狀態(tài)信息,所述第三存儲區(qū)域包括第三存儲子區(qū)域和第四存儲子區(qū)域,所述第三存儲子區(qū)域用于存儲服務器的個數(shù),所述第四存儲子區(qū)域用于存儲服務器狀態(tài)?目息Ο
[0021]在一個實施例中,所述第一存儲區(qū)域占用的內存地址的字節(jié)數(shù)為4,所述第二存儲區(qū)域占用的內存地址的字節(jié)數(shù)為4+任務文件的個數(shù)X4,所述第三存儲區(qū)域占用的內存地址的字節(jié)數(shù)為4+服務器個數(shù)X服務狀態(tài)信息的長度。
[0022]在一個實施例中,所述裝置還包括:
[0023]接收模塊,用于接收輸入的存儲空間設置命令;
[0024]設置模塊,用于根據(jù)所述存儲空間設置命令,設置所述預設存儲空間。
[0025]本發(fā)明的實施例提供的技術方案可以包括以下有益效果:
[0026]上述技術方案,分布式處理系統(tǒng)中的調度裝置和各個音視頻處理裝置對應的監(jiān)視裝置共享預設存儲空間,這樣,便于調度裝置及時獲知分布式處理系統(tǒng)中的各個音視頻處理裝置的任務處理狀態(tài),以及便于各個音視頻處理裝置從調度裝置獲取新任務,從而大大減少了處理所需的時間,同時降低了系統(tǒng)的處理壓力,減少了系統(tǒng)崩潰的可能性。
[0027]應當理解的是,以上的一般描述和后文的細節(jié)描述僅是示例性和解釋性的,并不能限制本發(fā)明。
【附圖說明】
[0028]此處的附圖被并入說明書中并構成本說明書的一部分,示出了符合本發(fā)明的實施例,并與說明書一起用于解釋本發(fā)明的原理。
[0029]圖1是根據(jù)一示例性實施例示出的信息存儲方法的流程圖。
[0030]圖2是根據(jù)一示例性實施例示出的預設存儲空間的結構示意圖。
[0031]圖3是根據(jù)一示例性實施例示出的另一種信息存儲方法的流程圖。
[0032]圖4是根據(jù)一示例性實施例示出的信息存儲裝置的框圖。
[0033]圖5是根據(jù)一示例性實施例示出的另一種信息存儲裝置的框圖。
【具體實施方式】
[0034]這里將詳細地對示例性實施例進行說明,其示例表示在附圖中。下面的描述涉及附圖時,除非另有表示,不同附圖中的相同數(shù)字表示相同或相似的要素。以下示例性實施例中所描述的實施方式并不代表與本發(fā)明相一致的所有實施方式。相反,它們僅是與如所附權利要求書中所詳述的、本發(fā)明的一些方面相一致的裝置和方法的例子。
[0035]下面詳細介紹一下分布式處理系統(tǒng)。分布式處理系統(tǒng)包括:調度裝置(dispatcher)、任務打散裝置(ingress)、第一傳輸裝置(offer)、多個音頻處理裝置(AP)、多個視頻處理裝置(VP)(其中,音頻處理裝置和視頻處理裝置統(tǒng)稱為音視頻處理裝)、第二傳輸裝置(offer)、輸出裝置egress和監(jiān)視裝置Watcher,其中,在每個裝置中均設置有監(jiān)控裝置Monitor,不同的裝置之間,通過監(jiān)控裝置進行交互。下面詳細說明個裝置:
[0036]調度裝置獲得視頻數(shù)據(jù),然后分給任務打散裝置。
[0037]任務打散裝置將視頻數(shù)據(jù)打散,得到音頻文件(。goa)、視頻文件(。gop)、音頻總數(shù)信息、視頻總數(shù)信息,對音頻文件和視頻文件進行解封裝,得到多個視頻文件碎片和多個音頻文件碎片。其中,對于音頻文件碎片,可以每10分鐘作為一段(不是整分鐘,有出入)對于視頻文件碎片,可以每分鐘為一段(不是整分鐘,有出入)。
[0038]第一傳輸裝置用于將不同的打散碎片傳輸給相應的音頻或視頻處理裝置進行處理。
[0039]音頻處理裝置用于處理音頻文件碎片,包括對音頻文件碎片進行解碼,進行圖像處理,對處理后的圖像進行編碼。第一傳輸裝置將音頻總數(shù)信息傳輸給音頻處理裝置,但是音頻處理裝置不處理,音頻處理裝置轉發(fā)給輸出裝置Egress。
[0040]同理,視頻處理裝置用于處理視頻文件碎片。
[0041]第二傳輸裝置用于將音頻處理裝置和視頻處理裝置處理得到的數(shù)據(jù)傳輸給輸出裝置 egress。
[0042]輸出裝置Egress用于根據(jù)音頻總數(shù)信息和視頻總數(shù)信息對音頻處理裝置和視頻處理裝置處理后得到的數(shù)據(jù)進行匯總。
[0043]監(jiān)視裝置Watcher提供客戶端查詢數(shù)據(jù)的接口,與調度裝置(dispatcher)連接。監(jiān)視裝置Watcher與調度裝置(dispatcher)通過共享內存共享信息。
[0044]監(jiān)控裝置Monitor,負責信息的接收和匯總,與調度裝置(dispatcher)連接。調度裝置通過各裝置中的監(jiān)控裝置監(jiān)控其任務的狀態(tài),進而可以根據(jù)其任務的狀態(tài)為其分發(fā)任務。
[0045]本發(fā)明實施例提供了一種信息存儲方法,該方法可用于分布式處理系統(tǒng),如圖1所示,該方法包括步驟S101-S102:
[0046]在步驟S101中,控制調度裝置獲取多個音視頻處理裝置的服務器狀態(tài)信息,并存儲至預設存儲空間;
[0047]在步驟S102中,控制監(jiān)視裝置獲取分布式處理系統(tǒng)執(zhí)行的任務的任務處理狀態(tài)信息,并存儲至預設存儲空間,其中,服務器狀態(tài)信息和任務處理狀態(tài)在預設存儲空間中以預設存儲格式存儲。
[0048]在該實施例中,分布式處理系統(tǒng)中的調度裝置和各個音視頻處理裝置對應的監(jiān)視裝置共享預設存儲空間,這樣,便于調度裝置及時獲知分布式處理系統(tǒng)中的各個音視頻處理裝置的任務處理狀態(tài),以及便于各個音視頻處理裝置從調度裝置獲取新任務,從而大大減少了處理所需的時間,同時降低了系統(tǒng)的處理壓力,減少了系統(tǒng)崩潰的可能性。
[0049]在一個實施例中,預設存儲空間包括第一存儲區(qū)域、第二存儲區(qū)域和第三存儲區(qū)域,其中,第一存儲區(qū)域、第二存儲區(qū)域和第三存儲區(qū)域的內存地址依次相連。
[0050]在一個實施例中,第一存儲區(qū)域用于存儲服務器狀態(tài)信息保存的開始地址偏移量,第二存儲區(qū)域包括第一子存儲區(qū)域和第二子存儲區(qū)域,第一子存儲區(qū)域用于存儲執(zhí)行的任務的任務文件的個數(shù)和任務處理狀態(tài)信息的偏移