亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

終端及多派生項目的數據處理方法和存儲介質與流程

文檔序號:11177414閱讀:682來源:國知局
本發(fā)明涉及電子設備
技術領域
:,尤其涉及終端及多派生項目的數據處理方法和存儲介質。
背景技術
::在實際生產中,當一個項目完成后,可能會存在多個派生項目。這常常是由于產品本身的成本要求或者客戶的不同需求導致的。以目前的某項目為例,其派生項目達到200多個,隨著時間的推移甚至會更多。派生項目與基礎項目相比,其可能是屏,電源,功放等器件不一樣,以及由此導致的可能的軟件的功能要求不一樣,也可能是客戶要求的畫質需求不一樣等等,但基本上總是存在不大不小的一些差異。在生產中,如果每個項目都使用一個獨立的軟件,則會造成項目的軟件過多,很難管理的問題,一旦某次生產過程中,出現軟件升級錯誤,就需要全部升級,這個過程可能是幾百臺機器,也可能是幾萬臺機器。會造成大量的人力,物力等成本。為了方便生產,在實際生產中,都是要求用同一版軟件去適配所以的派生項目。在生產過程中或完成后,通過切換不同的項目號來達到區(qū)分項目的目的。在軟件設計上,基本軟件都遵循過程與數據分離的設計原則,將系統(tǒng)中可能用到的數據及可能改變的參數作為可變數據使用,在軟件中需要這些數據時,從相關的文件中讀取,在有改變時,再寫入相應的問題。這也是當前軟件設計的主流思想。絕大多數情況下,系統(tǒng)軟件都是從文件讀取相關數據。遵循這種設計的軟件系統(tǒng)在適配上述生產要求時,除在軟件設計流程上需要做一些改變外,基本上都能適配。但除其他一些細節(jié)的處理之外,一個都無法避免的就是對數據文件的處理。一般的處理思路是,在軟件編譯時打包所有的項目數據文件,在系統(tǒng)啟動時,根據項目的信息,導入不同的數據文件。這種看上去沒有任何問題的方法,存在的著一個致命的缺陷,與pc系統(tǒng)相比,嵌入式系統(tǒng)的一個缺點就是其存儲空間是有限的,在產品生產時,就已經確定了其系統(tǒng)存儲空間的大小,系統(tǒng)中各個分區(qū)的使用大小。,隨著派生項目越來越多,加入軟件包中的系統(tǒng)軟件也變得越來越大,這個終究會將數據文件的存儲分區(qū)用完!導致系統(tǒng)癱瘓。以當前的一個項目為例:其一個項目數據文件的大小為1.6-2m,100個派生項目及意味著要1600m的存儲空間,而這在實際項目中是不可能僅為系統(tǒng)數據存儲就提供這么多空間的對這種問題的處理,一種簡單,直接的方法就是,將數據文件壓縮,這些數據文件經過壓縮后,大概可以到400k,但是一個100個派生項目所需要的存儲空間也需要40m,而已當前的某個項目為例,其派生項目已經達到200個,其所需的空間意味著需要80m,這已經超出了系統(tǒng)所能允許的空間的大小?;蛘哒f這種方法仍是浪費大量系統(tǒng)的存儲空間的,不符合嵌入式系統(tǒng)設計的目標。另一種方法是逐個分析系統(tǒng)中的數據,人為分析系統(tǒng)中的哪些值可能是所有項目都不會用到的,然后寫入代碼。但是這種方法有更明顯的缺點,首先工作量極大,以當前某個項目為例,其中涉及到的數據達5.6萬個,這種分析可能要花數個月的時間,更重要的是,根本無法預測哪些值可能是所有的項目都不會改動的,并且當某個項目有新的需求時,這種回溯的工作可能是根本不可能完成的任務。綜上,目前項目數據庫的建立數據量大,不便于維護,且占用系統(tǒng)內存,導致系統(tǒng)計算量大,運算速度慢,影響使用。上述內容僅用于輔助理解本發(fā)明的技術方案,并不代表承認上述內容是現有技術。技術實現要素:本發(fā)明的主要目的在于提供一種終端及多派生項目的數據處理方法和計算機可讀存儲介質,旨在解決目前項目數據庫的建立數據量大,不便于維護,且占用系統(tǒng)內存,導致系統(tǒng)計算量大,運算速度慢,影響使用的技術問題。為實現上述目的,本發(fā)明提供一種多派生項目的數據處理方法,所述多派生項目的數據處理方法包括以下步驟:在派生出新項目時,創(chuàng)建所述新項目對應的項目數據庫;根據預先創(chuàng)建的基礎數據庫和所述項目數據庫做差分處理,得到所述項目數據庫相對于所述基礎數據庫的差分數據庫和差分記錄文件;將所述差分數據庫和所述差分記錄文件打包壓縮后存儲于預設位置。優(yōu)選地,所述在派生出新項目時,創(chuàng)建所述新項目對應的項目數據庫的步驟之前,還包括:根據初始項目設計與所述初始項目對應的數據庫表;在數據庫表設計完成后,設置數據庫表內數據項;根據所述數據庫表和數據庫表內數據項生成基礎數據庫。優(yōu)選地,所述根據預先創(chuàng)建的基礎數據庫和所述項目數據庫做差分處理,得到所述項目數據庫相對于所述基礎數據庫的差分數據庫和差分文件的步驟包括:逐個提取項目數據庫中的數據表及基礎項目數據庫中對應的數據表;根據基礎項目數據庫中對應的數據表對項目數據庫中對應的數據表的每一條數據記錄做差分處理,得到所述項目數據庫相對于所述基礎數據庫的差分數據庫和差分文件。優(yōu)選地,所述根據基礎項目數據庫中對應的數據表對項目數據庫中對應的數據表的每一條數據記錄做差分處理的步驟包括:檢查在基礎數據庫中對應的數據表中是否存在預設數據記錄;若存在,則判斷所述基礎數據庫中的所有數據項均與所述預設數據記錄相同;若相同,則在項目數據庫中刪除所述預設數據記錄;檢查在基礎數據庫中對應的數據表是否存在預設項的數據記錄;在所述預設項的數據記錄除最后一項之外的所有數據項都與所述預設項的數據記錄相同,則在項目差分記錄文件對應的項目記錄下加1。優(yōu)選地,所述檢查在基礎數據庫中對應的數據表是否存在預設項的數據記錄的步驟之后,還包括:若所述預設項的數據記錄除最后一項之外的所有數據項都不與所述預設項的數據記錄相同,檢查項目數據庫是否新增了數據記錄;若是,則更新項目數據庫;若否,報錯。此外,為實現上述目的,本發(fā)明還提供一種終端,所述終端包括:存儲器、處理器及存儲在所述存儲器上并可在所述處理器上運行的多派生項目的數據處理程序,所述多派生項目的數據處理程序被所述處理器執(zhí)行時實現如下步驟:在派生出新項目時,創(chuàng)建所述新項目對應的項目數據庫;根據預先創(chuàng)建的基礎數據庫和所述項目數據庫做差分處理,得到所述項目數據庫相對于所述基礎數據庫的差分數據庫和差分記錄文件;將所述差分數據庫和所述差分記錄文件打包壓縮后存儲于預設位置。優(yōu)選地,所述多派生項目的數據處理程序被所述處理器執(zhí)行時實現如下步驟:根據初始項目設計與所述初始項目對應的數據庫表;在數據庫表設計完成后,設置數據庫表內數據項;根據所述數據庫表和數據庫表內數據項生成基礎數據庫。優(yōu)選地,所述多派生項目的數據處理程序被所述處理器執(zhí)行時實現如下步驟:逐個提取項目數據庫中的數據表及基礎項目數據庫中對應的數據表;根據基礎項目數據庫中對應的數據表對項目數據庫中對應的數據表的每一條數據記錄做差分處理,得到所述項目數據庫相對于所述基礎數據庫的差分數據庫和差分文件。優(yōu)選地,所述多派生項目的數據處理程序被所述處理器執(zhí)行時實現如下步驟:檢查在基礎數據庫中對應的數據表中是否存在預設數據記錄;若存在,則判斷所述基礎數據庫中的所有數據項均與所述預設數據記錄相同;若相同,則在項目數據庫中刪除所述預設數據記錄;檢查在基礎數據庫中對應的數據表是否存在預設項的數據記錄;在所述預設項的數據記錄除最后一項之外的所有數據項都與所述預設項的數據記錄相同,則在項目差分記錄文件對應的項目記錄下加1;若所述預設項的數據記錄除最后一項之外的所有數據項都不與所述預設項的數據記錄相同,檢查項目數據庫是否新增了數據記錄;若是,則更新項目數據庫;若否,報錯。此外,為實現上述目的,本發(fā)明還提供一種計算機可讀存儲介質,所述計算機可讀存儲介質上存儲有多派生項目的數據處理程序,所述多派生項目的數據處理程序被處理器執(zhí)行時實現如上所述的多派生項目的數據處理方法的步驟。本發(fā)明通過先生成項目基礎數據庫,在新派生出項目時,根據基礎數據庫創(chuàng)建派生項目數據庫,再對基礎數據庫和項目數據庫做差分處理,而得到差分數據庫和差分記錄文件,對于新派生出的項目只保存相對于基礎數據庫的差分數據庫和差分記錄文件。無需全部保存項目所需的所有數據,減少了數據量,減少占用的存儲空間,便于維護,減少計算量,提高運行速度便于使用。附圖說明圖1是本發(fā)明實施例方案涉及的硬件運行環(huán)境的終端結構示意圖;圖2為本發(fā)明多派生項目的數據處理方法一實施例的流程示意圖;圖3為本發(fā)明一實施例中創(chuàng)建基礎數據庫的流程示意圖;圖4為本發(fā)明一實施例中根據預先創(chuàng)建的基礎數據庫和所述項目數據庫做差分處理,得到所述項目數據庫相對于所述基礎數據庫的差分數據庫和差分文件的流程示意圖;圖5為本發(fā)明一實施例中對數據記錄差分處理的流程示意圖。本發(fā)明目的的實現、功能特點及優(yōu)點將結合實施例,參照附圖做進一步說明。具體實施方式應當理解,此處所描述的具體實施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。本發(fā)明實施例的主要解決方案是:在派生出新項目時,創(chuàng)建所述新項目對應的項目數據庫;根據預先創(chuàng)建的基礎數據庫和所述項目數據庫做差分處理,得到所述項目數據庫相對于所述基礎數據庫的差分數據庫和差分記錄文件;將所述差分數據庫和所述差分記錄文件打包壓縮后存儲于預設位置。由于目前項目數據庫的建立數據量大,不便于維護,且占用系統(tǒng)內存,導致系統(tǒng)計算量大,運算速度慢,影響使用的技術問題。本發(fā)明提供一種解決方案,通過先生成項目基礎數據庫,在新派生出項目時,根據基礎數據庫創(chuàng)建派生項目數據庫,再對基礎數據庫和項目數據庫做差分處理,而得到差分數據庫和差分記錄文件,對于新派生出的項目只保存相對于基礎數據庫的差分數據庫和差分記錄文件。無需全部保存項目所需的所有數據,減少了數據量,減少占用的存儲空間,便于維護,減少計算量,提高運行速度便于使用。如圖1所示,圖1是本發(fā)明實施例方案涉及的硬件運行環(huán)境的終端結構示意圖。本發(fā)明實施例終端為實現減少派生項目數據庫的數據量,減少系統(tǒng)計算量,提高運行速率。如圖1所示,該終端可以包括:處理器1001,例如cpu,網絡接口1004,用戶接口1003,存儲器1005,通信總線1002。其中,通信總線1002用于實現這些組件之間的連接通信。用戶接口1003可以包括顯示屏(display)、輸入單元比如鍵盤(keyboard),可選用戶接口1003還可以包括標準的有線接口、無線接口。網絡接口1004可選的可以包括標準的有線接口、無線接口(如wi-fi接口)。存儲器1005可以是高速ram存儲器,也可以是穩(wěn)定的存儲器(non-volatilememory),例如磁盤存儲器。存儲器1005可選的還可以是獨立于前述處理器1001的存儲裝置??蛇x地,終端還可以包括攝像頭、rf(radiofrequency,射頻)電路,傳感器、音頻電路、wifi模塊等等。其中,傳感器比如光傳感器、運動傳感器以及其他傳感器。具體地,光傳感器可包括環(huán)境光傳感器及接近傳感器,其中,環(huán)境光傳感器可根據環(huán)境光線的明暗來調節(jié)顯示屏的亮度,接近傳感器可在移動終端移動到耳邊時,關閉顯示屏和/或背光。作為運動傳感器的一種,重力加速度傳感器可檢測各個方向上(一般為三軸)加速度的大小,靜止時可檢測出重力的大小及方向,可用于識別移動終端姿態(tài)的應用(比如橫豎屏切換、相關游戲、磁力計姿態(tài)校準)、振動識別相關功能(比如計步器、敲擊)等;當然,移動終端還可配置陀螺儀、氣壓計、濕度計、溫度計、紅外線傳感器、溫度傳感器、霍爾曼傳感器等其他傳感器,在此不再贅述。本領域技術人員可以理解,圖1中示出的終端結構并不構成對終端的限定,可以包括比圖示更多或更少的部件,或者組合某些部件,或者不同的部件布置。如圖1所示,作為一種計算機存儲介質的存儲器1005中可以包括操作系統(tǒng)、網絡通信模塊、用戶接口模塊以及多派生項目的數據處理應用程序。在圖1所示的終端中,網絡接口1004主要用于連接后臺服務器,與后臺服務器進行數據通信;用戶接口1003主要用于連接客戶端(用戶端),與客戶端進行數據通信;而處理器1001可以用于調用存儲器1005中存儲的多派生項目的數據處理應用程序,并執(zhí)行以下操作:在派生出新項目時,創(chuàng)建所述新項目對應的項目數據庫;根據預先創(chuàng)建的基礎數據庫和所述項目數據庫做差分處理,得到所述項目數據庫相對于所述基礎數據庫的差分數據庫和差分記錄文件;將所述差分數據庫和所述差分記錄文件打包壓縮后存儲于預設位置。進一步地,處理器1001可以調用存儲器1005中存儲的多派生項目的數據處理應用程序,還執(zhí)行以下操作:根據初始項目設計與所述初始項目對應的數據庫表;在數據庫表設計完成后,設置數據庫表內數據項;根據所述數據庫表和數據庫表內數據項生成基礎數據庫。進一步地,處理器1001可以調用存儲器1005中存儲的多派生項目的數據處理應用程序,還執(zhí)行以下操作:逐個提取項目數據庫中的數據表及基礎項目數據庫中對應的數據表;根據基礎項目數據庫中對應的數據表對項目數據庫中對應的數據表的每一條數據記錄做差分處理,得到所述項目數據庫相對于所述基礎數據庫的差分數據庫和差分文件。進一步地,處理器1001可以調用存儲器1005中存儲的多派生項目的數據處理應用程序,還執(zhí)行以下操作:檢查在基礎數據庫中對應的數據表中是否存在預設數據記錄;若存在,則判斷所述基礎數據庫中的所有數據項均與所述預設數據記錄相同;若相同,則在項目數據庫中刪除所述預設數據記錄;檢查在基礎數據庫中對應的數據表是否存在預設項的數據記錄;在所述預設項的數據記錄除最后一項之外的所有數據項都與所述預設項的數據記錄相同,則在項目差分記錄文件對應的項目記錄下加1。進一步地,所述檢查在基礎數據庫中對應的數據表是否存在預設項的數據記錄的步驟之后,處理器1001可以調用存儲器1005中存儲的多派生項目的數據處理應用程序,還執(zhí)行以下操作:多派生項目的數據處理。參照圖2,本發(fā)明的第一實施例提供一種多派生項目的數據處理方法,所述多派生項目的數據處理方法包括:步驟s10,在派生出新項目時,創(chuàng)建所述新項目對應的項目數據庫;在本發(fā)明的一實施例中,提前設置一個符合規(guī)則的數據存儲數據庫,所述規(guī)則為,a,數據庫由若干個表構成;b、不同表之間的數據盡量低耦合性,表內的數據具有高內聚性;c、所有數據中,能分項存儲的盡量分項存儲;d、表中一條數據記錄中最多只有一個數據時可變的;e、表中包含標識數據項。所述數據庫,數據表是符合計算機系統(tǒng)中的一種數據存儲格式;所述數據記錄,是指存儲在數據庫中的數據表中的一行數據;所述數據項,是指數據表中的一行數據對應的列組成;所述標識數據項,是包含讀寫權限的標識數據項,該數據項僅由兩種可能:數據只讀和數據可讀寫。在形成項目或者派生出新項目之前,預先創(chuàng)建基礎數據庫,參考圖3,所述創(chuàng)建基礎數據庫的過程包括:步驟s11,根據初始項目設計與所述初始項目對應的數據庫表;步驟s12,在數據庫表設計完成后,設置數據庫表內數據項;步驟s13,根據所述數據庫表和數據庫表內數據項生成基礎數據庫。生成符合規(guī)則的基礎數據庫和項目數據庫,所述符合規(guī)則,是以下兩個規(guī)則,a1、基礎數據庫應包含所有數據記錄,其基于的假設是:一個基礎數據庫所含的數據記錄越多,則其差分數據庫就越??;a2、任何一個派生項目都需要一個項目數據庫。當然這里的基礎數據庫也需要滿足上述的a至e的規(guī)則。在項目開始時,首先創(chuàng)建一個基礎數據庫,根據實際情況,逐個設計數據庫表,設計時需滿足發(fā)明前面a-e提到的設計規(guī)則,知道所有與初始項目相關數據將表都設計到數據庫中。具體的,在實際項目中,數據庫中需要存儲用戶可能調節(jié)的電視亮度,對比度,飽和度選項,這個亮度值在不同的通道下,不同的模式下,其值可能有不同。在這個例子中,首先考慮該如何劃分表,使其符合不同表之間的數據盡量低耦合性,表內的數據具有高內聚性的設計原則,由于這些值在所有通道下都存在,并且都需要頻繁操作,但是不同通道下的值是不會同時操作的,因此可以認為在一個通道內可能都會調到的值是高內聚的,而不同通道下的值是低耦合的。即tv通道下的亮度和對比度及飽和度是高內聚的,而tv通道和pc通道下的亮度值是低耦合的,故在這個例子中按通道為劃分設計表。按照這種劃分要求,系統(tǒng)中,存在tv_picuture_data,pc_picture_data,av_picture_data,hdmi_picture_data等表。劃分表后,再考慮如何設計表內數據項,滿足數據項中僅有一項數據是可變的,包含讀寫標志的設計原則。如下表一所示,將一個tv_picture_data的數據表設計成包含如下4項數據的結構。其中,readorwrite表示該數據記錄的讀寫標志(只讀or可讀寫),mode表示用戶可調節(jié)模式,type表示在對應模式下可調節(jié)的數據類型,在本例中,其值為brightness,constrast,saturation.value表示對于類型的數據值。表一tv_picture_data表項readorwritemodetypevalue在該表的設計中,同時也遵循了能分項存儲的盡量分項存儲的設計,如果同時將tv_picture_data的數據表設計成包含如下表二的數據結構,就不符合該設計原則,因為該數據項中很多都是可以分項存儲的,這種錯誤的設計會導致差分數據庫的效果不理想。表二不符合設計原則的tv_picture_data表項readorwritemodebrightnessvalueconstrastvaluesaturationvalue根據該設計原則,可以推導出在系統(tǒng)設計時的兩個更明確的規(guī)則:當系統(tǒng)中的某些數據是以bit為單位操作時,如ic中的寄存器的設置,應當按bit為單位設計數據表,如應當將系統(tǒng)中的類似情況設計成如下數據表表三bit數據表項readorwritebankindexitemindexbitindexbitvalue當系統(tǒng)中的數據可以為byte為單位操作時,應當以byte為單位設計數據表,如在系統(tǒng)中gammatable可能存在1024項數據,這些數據雖然在實際使用時是以1024個byte整體考慮的,但是在設計時,將其每個byte作為一個數據項表四gammatable表項readorwritegammatableindexgammaitemindexgammavlaue(rgb)基礎數據庫的生成:當基礎數據庫設計和創(chuàng)建生成后,按照實際項目的情況需要人工向數據庫的數據表中填充數據記錄。一種情況是由于某些原因,項目數據庫中的數據記錄增加,則按照設計原則,需要更新基礎數據庫,由于基礎數據庫是沒有經過任何處理的數據庫,其增加操作就是向數據庫中插入一天數據記錄。派生項目數據庫的生成:一般情況下的做法是,在基礎數據庫生成后,直接復制一份基礎數據庫,然后重命名為對應的項目數據庫,再根據實際派生項目的要求,在此基礎上修改。需要注意的是,在實際項目中,生成項目數據庫的過程可能會重復發(fā)生,因為會陸陸續(xù)續(xù)的有派生項目產生,而本發(fā)明要求一個派生項目就要對應一個項目數據庫,而不管其差異有多少。另一種情況是,已完整的實施過本發(fā)明流程生成了相關的項目差分數據庫和項目差分文件的前提下,由于某派生項目中某些需求的改變,可能需要對項目數據庫再修改或更新的情況。步驟s20,根據預先創(chuàng)建的基礎數據庫和所述項目數據庫做差分處理,得到所述項目數據庫相對于所述基礎數據庫的差分數據庫和差分記錄文件;在生成派生項目的項目數據庫后,根據預先創(chuàng)建的基礎數據庫和所述項目數據庫做差分處理,得到所述項目數據庫相對于所述基礎數據庫的差分數據庫和差分記錄文件。參考圖4,所述根據預先創(chuàng)建的基礎數據庫和所述項目數據庫做差分處理,得到所述項目數據庫相對于所述基礎數據庫的差分數據庫和差分文件的步驟包括:步驟s21,逐個提取項目數據庫中的數據表及基礎項目數據庫中對應的數據表;步驟s22,根據基礎項目數據庫中對應的數據表對項目數據庫中對應的數據表的每一條數據記錄做差分處理,得到所述項目數據庫相對于所述基礎數據庫的差分數據庫和差分文件。需要按照如下過程對項目數據庫進行如下過程,生成對應的項目差分數據庫和項目差分記錄文件。為了操作的方便和之后步驟的需要,在開始時,先復制一份需要操作的項目數據庫。以下除特別說明之外,對項目數據庫的表示都為復制之后的新產生的項目數據庫。以下描述該處理流程是如何實施的:逐個提取項目數據庫中的數據表和對應的基礎項目數據庫中的數據表針對項目數據庫數據表中的每一條數據記錄,進行數據差分處理流程分析完成后,項目數據庫重命名為對應的項目差分數據庫執(zhí)行項目差分數據庫的正確性校驗流程,對生成的項目差分數據庫,進行正確性進行校驗。參考圖5,對數據記錄差分處理流程包括如下:步驟s201,檢查在基礎數據庫中對應的數據表中是否存在預設數據記錄;步驟s202,若存在,則判斷所述基礎數據庫中的所有數據項均與所述預設數據記錄相同;步驟s203,若相同,則在項目數據庫中刪除所述預設數據記錄;步驟s204,檢查在基礎數據庫中對應的數據表是否存在預設項的數據記錄;步驟s205,在所述預設項的數據記錄除最后一項之外的所有數據項都與所述預設項的數據記錄相同,則在項目差分記錄文件對應的項目記錄下加1;步驟s206,若所述預設項的數據記錄除最后一項之外的所有數據項都不與所述預設項的數據記錄相同,檢查項目數據庫是否新增了數據記錄;步驟s207,若是,則更新項目數據庫;步驟s208,若否,報錯。具體的,檢查在基礎數據庫中對應的數據表中是否有某些數據記錄,其所有的數據項都與該數據記錄相同,如果是,則在項目數據庫中刪除該項檢查在基礎數據庫中對應的數據表中是否有某項數據記錄,其除最后一項數據項之外的所有的數據項都與該數據記錄相同,如果是,則在項目差異記錄文件對應的項目記錄下面加1。如果以上都不是,則檢查項目數據庫是否新增了數據記錄,如是,則執(zhí)行:基礎數據庫與項目數據庫數據不一致時的處理;在新項目的進展過程中,由于項目功能的增加,需要增加新的數據記錄甚至數據表都是可以的,這個數據記錄或者數據表對其他項目的數據庫而言,有兩種可能,第一如果某個項目也需要,則需要通過更新項目數據庫模塊,進入到更新流程。如果不需要的話,意味著在這個項目運行中,系統(tǒng)就不會調用,那么基礎數據庫中設什么值都是合理的?;谝陨戏治觯焊禄A數據庫時,數據項填入默認值0。由于基礎數據庫時完整的數據,其更新較簡單,只要插入相應的數據表和數據記錄即可。否則執(zhí)行:出錯處理:可能數據庫遭到損壞,需要人為分析為了對數據表的差分過程,更清晰一點,下面列舉一個實際的例子說明a,b的具體判定,以表一中的數據表為例,在這個表中,前面的信源,模式,參數都是作為區(qū)分數據的標準只有當在基礎數據庫的對應的標準找到某條數據記錄中的這4個數據都與待分析的數據記錄一樣時,才認為這是相同的數據記錄,只有當基礎數據庫中找到某條數據記錄其前三個數據都一樣時,并且最后一個value數據不一樣時,才認為是數據有差分,需要提取,否則不需要提取。項目差分記錄文件記錄的是項目名稱和所對應的項目差分數據庫以及差分數據庫中數據記錄的個數的任意類型文件,為了具有可讀性和準確性,在本實施例中采用的xml文件記錄方法記錄這些數據。實際上,基礎數據庫本身也是一個項目的數據,所以針對作為基礎數據庫的項目就不需要產生項目數據庫,而僅需在項目差分記錄文件中記錄下項目的差分數據記錄數為0即可。在開始時,為了方便,復制一份基礎數據庫,將其重命名為項目數據庫,以下除特別說明,項目數據庫都是該基礎數據庫復制產生的一個新數據庫。逐個提取差分數據庫中的數據表,并按以下原則分析數據表中的所有數據記錄直到全部提取完為止該原則是:如果在項目數據庫中存在某條數據記錄,其除最后一項外其他的其他數據項都與所提取出來的數據記錄相同,則是原項目數據庫中的差異數據,需將該數據寫入到項目數據庫中新的項目數據庫就是根據差異數據庫形成的項目數據庫,將該數據庫與原項目數據庫比較,相同則是正確的,反之,則是錯誤的。在本實施例中,直接使用beyondcompare工具進行二進制數據比較。步驟s30,將所述差分數據庫和所述差分記錄文件打包壓縮后存儲于預設位置。在生成差分數據庫和差分記錄文件后,將壓縮數據庫和項目差分記錄文件一起打包到嵌入式軟件中。具體的,將系統(tǒng)中的基礎數據庫文件和m個差分數據庫文件分別壓縮,采用壓縮工具為zip或其他,然后再和項目差分記錄文件一起打包到嵌入式軟件中。本實施例通過先生成項目基礎數據庫,在新派生出項目時,根據基礎數據庫創(chuàng)建派生項目數據庫,再對基礎數據庫和項目數據庫做差分處理,而得到差分數據庫和差分記錄文件,對于新派生出的項目只保存相對于基礎數據庫的差分數據庫和差分記錄文件。無需全部保存項目所需的所有數據,減少了數據量,減少占用的存儲空間,便于維護,減少計算量,提高運行速度便于使用。在一實施例中,本發(fā)明還提供一種終端,所述終端包括:存儲器、處理器及存儲在所述存儲器上并可在所述處理器上運行的多派生項目的數據處理程序,所述多派生項目的數據處理程序被所述處理器執(zhí)行時實現如下步驟:在派生出新項目時,創(chuàng)建所述新項目對應的項目數據庫;在本發(fā)明的一實施例中,提前設置一個符合規(guī)則的數據存儲數據庫,所述規(guī)則為,a,數據庫由若干個表構成;b、不同表之間的數據盡量低耦合性,表內的數據具有高內聚性;c、所有數據中,能分項存儲的盡量分項存儲;d、表中一條數據記錄中最多只有一個數據時可變的;e、表中包含標識數據項。所述數據庫,數據表是符合計算機系統(tǒng)中的一種數據存儲格式;所述數據記錄,是指存儲在數據庫中的數據表中的一行數據;所述數據項,是指數據表中的一行數據對應的列組成;所述標識數據項,是包含讀寫權限的標識數據項,該數據項僅由兩種可能:數據只讀和數據可讀寫。在形成項目或者派生出新項目之前,預先創(chuàng)建基礎數據庫,所述創(chuàng)建基礎數據庫的過程包括:根據初始項目設計與所述初始項目對應的數據庫表;在數據庫表設計完成后,設置數據庫表內數據項;根據所述數據庫表和數據庫表內數據項生成基礎數據庫。生成符合規(guī)則的基礎數據庫和項目數據庫,所述符合規(guī)則,是以下兩個規(guī)則,a1、基礎數據庫應包含所有數據記錄,其基于的假設是:一個基礎數據庫所含的數據記錄越多,則其差分數據庫就越??;a2、任何一個派生項目都需要一個項目數據庫。當然這里的基礎數據庫也需要滿足上述的a至e的規(guī)則。在項目開始時,首先創(chuàng)建一個基礎數據庫,根據實際情況,逐個設計數據庫表,設計時需滿足發(fā)明前面a-e提到的設計規(guī)則,知道所有與初始項目相關數據將表都設計到數據庫中。具體的,在實際項目中,數據庫中需要存儲用戶可能調節(jié)的電視亮度,對比度,飽和度選項,這個亮度值在不同的通道下,不同的模式下,其值可能有不同。在這個例子中,首先考慮該如何劃分表,使其符合不同表之間的數據盡量低耦合性,表內的數據具有高內聚性的設計原則,由于這些值在所有通道下都存在,并且都需要頻繁操作,但是不同通道下的值是不會同時操作的,因此可以認為在一個通道內可能都會調到的值是高內聚的,而不同通道下的值是低耦合的。即tv通道下的亮度和對比度及飽和度是高內聚的,而tv通道和pc通道下的亮度值是低耦合的,故在這個例子中按通道為劃分設計表。按照這種劃分要求,系統(tǒng)中,存在tv_picuture_data,pc_picture_data,av_picture_data,hdmi_picture_data等表。劃分表后,再考慮如何設計表內數據項,滿足數據項中僅有一項數據是可變的,包含讀寫標志的設計原則。如下表一所示,將一個tv_picture_data的數據表設計成包含如下4項數據的結構。其中,readorwrite表示該數據記錄的讀寫標志(只讀or可讀寫),mode表示用戶可調節(jié)模式,type表示在對應模式下可調節(jié)的數據類型,在本例中,其值為brightness,constrast,saturation.value表示對于類型的數據值。表一tv_picture_data表項readorwritemodetypevalue在該表的設計中,同時也遵循了能分項存儲的盡量分項存儲的設計,如果同時將tv_picture_data的數據表設計成包含如下表二的數據結構,就不符合該設計原則,因為該數據項中很多都是可以分項存儲的,這種錯誤的設計會導致差分數據庫的效果不理想。表二不符合設計原則的tv_picture_data表項readorwritemodebrightnessvalueconstrastvaluesaturationvalue根據該設計原則,可以推導出在系統(tǒng)設計時的兩個更明確的規(guī)則:當系統(tǒng)中的某些數據是以bit為單位操作時,如ic中的寄存器的設置,應當按bit為單位設計數據表,如應當將系統(tǒng)中的類似情況設計成如下數據表表三bit數據表項readorwritebankindexitemindexbitindexbitvalue當系統(tǒng)中的數據可以為byte為單位操作時,應當以byte為單位設計數據表,如在系統(tǒng)中gammatable可能存在1024項數據,這些數據雖然在實際使用時是以1024個byte整體考慮的,但是在設計時,將其每個byte作為一個數據項表四gammatable表項readorwritegammatableindexgammaitemindexgammavlaue(rgb)基礎數據庫的生成:當基礎數據庫設計和創(chuàng)建生成后,按照實際項目的情況需要人工向數據庫的數據表中填充數據記錄。一種情況是由于某些原因,項目數據庫中的數據記錄增加,則按照設計原則,需要更新基礎數據庫,由于基礎數據庫是沒有經過任何處理的數據庫,其增加操作就是向數據庫中插入一天數據記錄。派生項目數據庫的生成:一般情況下的做法是,在基礎數據庫生成后,直接復制一份基礎數據庫,然后重命名為對應的項目數據庫,再根據實際派生項目的要求,在此基礎上修改。需要注意的是,在實際項目中,生成項目數據庫的過程可能會重復發(fā)生,因為會陸陸續(xù)續(xù)的有派生項目產生,而本發(fā)明要求一個派生項目就要對應一個項目數據庫,而不管其差異有多少。另一種情況是,已完整的實施過本發(fā)明流程生成了相關的項目差分數據庫和項目差分文件的前提下,由于某派生項目中某些需求的改變,可能需要對項目數據庫再修改或更新的情況。根據預先創(chuàng)建的基礎數據庫和所述項目數據庫做差分處理,得到所述項目數據庫相對于所述基礎數據庫的差分數據庫和差分記錄文件;在生成派生項目的項目數據庫后,根據預先創(chuàng)建的基礎數據庫和所述項目數據庫做差分處理,得到所述項目數據庫相對于所述基礎數據庫的差分數據庫和差分記錄文件。所述根據預先創(chuàng)建的基礎數據庫和所述項目數據庫做差分處理,得到所述項目數據庫相對于所述基礎數據庫的差分數據庫和差分文件的步驟包括:逐個提取項目數據庫中的數據表及基礎項目數據庫中對應的數據表;根據基礎項目數據庫中對應的數據表對項目數據庫中對應的數據表的每一條數據記錄做差分處理,得到所述項目數據庫相對于所述基礎數據庫的差分數據庫和差分文件。需要按照如下過程對項目數據庫進行如下過程,生成對應的項目差分數據庫和項目差分記錄文件。為了操作的方便和之后步驟的需要,在開始時,先復制一份需要操作的項目數據庫。以下除特別說明之外,對項目數據庫的表示都為復制之后的新產生的項目數據庫。以下描述該處理流程是如何實施的:逐個提取項目數據庫中的數據表和對應的基礎項目數據庫中的數據表針對項目數據庫數據表中的每一條數據記錄,進行數據差分處理流程分析完成后,項目數據庫重命名為對應的項目差分數據庫執(zhí)行項目差分數據庫的正確性校驗流程,對生成的項目差分數據庫,進行正確性進行校驗。對數據記錄差分處理流程包括如下:檢查在基礎數據庫中對應的數據表中是否存在預設數據記錄;若存在,則判斷所述基礎數據庫中的所有數據項均與所述預設數據記錄相同;若相同,則在項目數據庫中刪除所述預設數據記錄;檢查在基礎數據庫中對應的數據表是否存在預設項的數據記錄;在所述預設項的數據記錄除最后一項之外的所有數據項都與所述預設項的數據記錄相同,則在項目差分記錄文件對應的項目記錄下加1;若所述預設項的數據記錄除最后一項之外的所有數據項都不與所述預設項的數據記錄相同,檢查項目數據庫是否新增了數據記錄;若是,則更新項目數據庫;若否,報錯。具體的,檢查在基礎數據庫中對應的數據表中是否有某些數據記錄,其所有的數據項都與該數據記錄相同,如果是,則在項目數據庫中刪除該項檢查在基礎數據庫中對應的數據表中是否有某項數據記錄,其除最后一項數據項之外的所有的數據項都與該數據記錄相同,如果是,則在項目差異記錄文件對應的項目記錄下面加1。如果以上都不是,則檢查項目數據庫是否新增了數據記錄,如是,則執(zhí)行:基礎數據庫與項目數據庫數據不一致時的處理;在新項目的進展過程中,由于項目功能的增加,需要增加新的數據記錄甚至數據表都是可以的,這個數據記錄或者數據表對其他項目的數據庫而言,有兩種可能,第一如果某個項目也需要,則需要通過更新項目數據庫模塊,進入到更新流程。如果不需要的話,意味著在這個項目運行中,系統(tǒng)就不會調用,那么基礎數據庫中設什么值都是合理的?;谝陨戏治觯焊禄A數據庫時,數據項填入默認值0。由于基礎數據庫時完整的數據,其更新較簡單,只要插入相應的數據表和數據記錄即可。否則執(zhí)行:出錯處理:可能數據庫遭到損壞,需要人為分析為了對數據表的差分過程,更清晰一點,下面列舉一個實際的例子說明a,b的具體判定,以表一中的數據表為例,在這個表中,前面的信源,模式,參數都是作為區(qū)分數據的標準只有當在基礎數據庫的對應的標準找到某條數據記錄中的這4個數據都與待分析的數據記錄一樣時,才認為這是相同的數據記錄,只有當基礎數據庫中找到某條數據記錄其前三個數據都一樣時,并且最后一個value數據不一樣時,才認為是數據有差分,需要提取,否則不需要提取。項目差分記錄文件記錄的是項目名稱和所對應的項目差分數據庫以及差分數據庫中數據記錄的個數的任意類型文件,為了具有可讀性和準確性,在本實施例中采用的xml文件記錄方法記錄這些數據。實際上,基礎數據庫本身也是一個項目的數據,所以針對作為基礎數據庫的項目就不需要產生項目數據庫,而僅需在項目差分記錄文件中記錄下項目的差分數據記錄數為0即可。在開始時,為了方便,復制一份基礎數據庫,將其重命名為項目數據庫,以下除特別說明,項目數據庫都是該基礎數據庫復制產生的一個新數據庫。逐個提取差分數據庫中的數據表,并按以下原則分析數據表中的所有數據記錄直到全部提取完為止該原則是:如果在項目數據庫中存在某條數據記錄,其除最后一項外其他的其他數據項都與所提取出來的數據記錄相同,則是原項目數據庫中的差異數據,需將該數據寫入到項目數據庫中新的項目數據庫就是根據差異數據庫形成的項目數據庫,將該數據庫與原項目數據庫比較,相同則是正確的,反之,則是錯誤的。在本實施例中,直接使用beyondcompare工具進行二進制數據比較。將所述差分數據庫和所述差分記錄文件打包壓縮后存儲于預設位置。在生成差分數據庫和差分記錄文件后,將壓縮數據庫和項目差分記錄文件一起打包到嵌入式軟件中。具體的,將系統(tǒng)中的基礎數據庫文件和m個差分數據庫文件分別壓縮,采用壓縮工具為zip或其他,然后再和項目差分記錄文件一起打包到嵌入式軟件中。本實施例通過先生成項目基礎數據庫,在新派生出項目時,根據基礎數據庫創(chuàng)建派生項目數據庫,再對基礎數據庫和項目數據庫做差分處理,而得到差分數據庫和差分記錄文件,對于新派生出的項目只保存相對于基礎數據庫的差分數據庫和差分記錄文件。無需全部保存項目所需的所有數據,減少了數據量,減少占用的存儲空間,便于維護,減少計算量,提高運行速度便于使用。此外,本發(fā)明實施例還提出一種存儲介質,所述存儲介質上存儲有多派生項目的數據處理程序,所述多派生項目的數據處理程序被處理器執(zhí)行時實現如下操作:在派生出新項目時,創(chuàng)建所述新項目對應的項目數據庫;根據預先創(chuàng)建的基礎數據庫和所述項目數據庫做差分處理,得到所述項目數據庫相對于所述基礎數據庫的差分數據庫和差分記錄文件;將所述差分數據庫和所述差分記錄文件打包壓縮后存儲于預設位置。進一步地,所述多派生項目的數據處理程序被所述處理器執(zhí)行時實現如下步驟:根據初始項目設計與所述初始項目對應的數據庫表;在數據庫表設計完成后,設置數據庫表內數據項;根據所述數據庫表和數據庫表內數據項生成基礎數據庫。進一步地,所述多派生項目的數據處理程序被所述處理器執(zhí)行時實現如下步驟:逐個提取項目數據庫中的數據表及基礎項目數據庫中對應的數據表;根據基礎項目數據庫中對應的數據表對項目數據庫中對應的數據表的每一條數據記錄做差分處理,得到所述項目數據庫相對于所述基礎數據庫的差分數據庫和差分文件。進一步地,所述多派生項目的數據處理程序被所述處理器執(zhí)行時實現如下步驟:檢查在基礎數據庫中對應的數據表中是否存在預設數據記錄;若存在,則判斷所述基礎數據庫中的所有數據項均與所述預設數據記錄相同;若相同,則在項目數據庫中刪除所述預設數據記錄;檢查在基礎數據庫中對應的數據表是否存在預設項的數據記錄;在所述預設項的數據記錄除最后一項之外的所有數據項都與所述預設項的數據記錄相同,則在項目差分記錄文件對應的項目記錄下加1。進一步地,所述檢查在基礎數據庫中對應的數據表是否存在預設項的數據記錄的步驟之后,所述多派生項目的數據處理程序被所述處理器執(zhí)行時實現如下步驟:若所述預設項的數據記錄除最后一項之外的所有數據項都不與所述預設項的數據記錄相同,檢查項目數據庫是否新增了數據記錄;若是,則更新項目數據庫;若否,報錯。需要說明的是,在本文中,術語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、物品或者系統(tǒng)不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、物品或者系統(tǒng)所固有的要素。在沒有更多限制的情況下,由語句“包括一個……”限定的要素,并不排除在包括該要素的過程、方法、物品或者系統(tǒng)中還存在另外的相同要素。上述本發(fā)明實施例序號僅僅為了描述,不代表實施例的優(yōu)劣。通過以上的實施方式的描述,本領域的技術人員可以清楚地了解到上述實施例方法可借助軟件加必需的通用硬件平臺的方式來實現,當然也可以通過硬件,但很多情況下前者是更佳的實施方式?;谶@樣的理解,本發(fā)明的技術方案本質上或者說對現有技術做出貢獻的部分可以以軟件產品的形式體現出來,該計算機軟件產品存儲在如上所述的一個存儲介質(如rom/ram、磁碟、光盤)中,包括若干指令用以使得一臺終端設備(可以是手機,計算機,服務器,電視,或者網絡設備等)執(zhí)行本發(fā)明各個實施例所述的方法。以上僅為本發(fā)明的優(yōu)選實施例,并非因此限制本發(fā)明的專利范圍,凡是利用本發(fā)明說明書及附圖內容所作的等效結構或等效流程變換,或直接或間接運用在其他相關的
技術領域
:,均同理包括在本發(fā)明的專利保護范圍內。當前第1頁12當前第1頁12
當前第1頁1 2 
網友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1