網絡數據的同步處理方法、服務器及相關系統(tǒng)的制作方法
【專利摘要】本發(fā)明公開了網絡數據的同步處理方法、服務器及相關系統(tǒng),包括:利用數據庫層的文件復制操作,從數據源服務器的數據庫同步源數據到本地數據庫;針對同步到本地數據庫的所述數據,執(zhí)行物化視圖刷新,其中針對每個視圖采用原子刷新方式;根據本地數據庫的數據,進行業(yè)務邏輯計算;存儲所述業(yè)務邏輯計算結果,并將所述業(yè)務邏輯計算結果同步給業(yè)務服務器。利用本發(fā)明,可以提高對網絡數據的傳輸效率和處理效率,提升計算機的數據處理性能。
【專利說明】網絡數據的同步處理方法、服務器及相關系統(tǒng)
【技術領域】
[0001]本申請涉及數據處理設備的數據處理【技術領域】,尤其涉及一種網絡數據的同步處理方法、服務器及相關系統(tǒng)。
【背景技術】
[0002]互聯網數據系統(tǒng)中,由于需要處理海量的數據,因此對于網絡數據系統(tǒng)架構的搭建以及數據處理方式有了特殊的要求,即要求占用的資源盡量少,處理數據的效率要盡量聞。
[0003]如圖1是一種網絡媒介信息處理系統(tǒng)的架構及數據處理流轉示意圖。網絡媒介信息是一種在互聯網系統(tǒng)的各種展示形式(如網頁、客戶端界面等)上發(fā)布的以數字代碼為載體的各種信息。通常的網絡媒介信息都對應有目標網頁,用戶點擊了網絡媒介信息即可跳轉到對應的目標網頁,目標網頁的內容就會展現在用戶面前。網絡媒介信息處理展示技術最近幾年發(fā)展非常迅猛,已經應用到許多產業(yè)領域。例如在互聯網的廣告處理展示領域中,所述互聯網廣告就是一種網絡媒介信息。網絡媒介信息處理展示技術中的一種主要技術是網絡媒介信息投放控制技術。
[0004]如何有效地向特定的受眾投放展示網絡媒介信息,并對所展示的信息進行有效的管理,往往需要進行大量的數據統(tǒng)計、存儲和數據計算,需要合理的網絡數據系統(tǒng)架構以及數據處理方式。
[0005]如圖1所示,其中商業(yè)智能(BI,Business Intelligence)服務器101是一種數據源服務器,用于從網絡的上游系統(tǒng)中搜集廣告數據、訂單數據、客戶數據、點擊曝光等效果數據等等。所述網絡媒介信息運營分析工具系統(tǒng)(BB)備機102是一種數據計算服務器,用于從BI服務器101每天全量同步數據,然后執(zhí)行例行任務(J0B),刷新物化視圖,基于BI服務器同步來的源數據進行BB業(yè)務相關的業(yè)務邏輯計算,完畢后將計算結果同步到所述BB主機103。所述BB主機103為一種業(yè)務服務器,用于運行多個業(yè)務程序,由于會存在業(yè)務爭搶資源的情況,所有將BB的業(yè)務邏輯計算部分分離出來在專門BB備機102上進行計算,而BB主機103只用于響應用戶請求。另外,還進一步設置WEB服務器104,用于將所有業(yè)務模塊生成文件緩存,每天更新一次,用戶請求先到達該WEB服務器104,從該WEB服務器104的緩存中查詢請求結果,如果緩存未命中請求結果時再請求BB主機。另外,系統(tǒng)中還可以設置預覽服務器105,用于同步BB備機102的數據,進行同步預覽,用于迭代測試,其中設置預覽數據同步開發(fā)環(huán)境,在迭代開始時執(zhí)行,開發(fā)機器106可以在該開發(fā)環(huán)境中進行程序開發(fā)。
[0006]現有技術中,在海量數據環(huán)境下,通常采用甲骨文(ORACLE)數據庫,且所述BI服務器101和BB備機102之間的數據同步采用開源軟件KETTLE。KETTLE是一款基于JAVA的工具,主要用來完成數據抽取、轉換、加載等工作(即ETL, Extract1n-Transformat1n-Loading)。KETTLE是開源軟件,入門門檻低,所以被廣泛使用。Kettle為基于JAVA語言編寫的軟件,同時也基于可擴展標記語言(XML, Extensible Markup Language),其模式是基于工作流的模式,分為ktr和kjb文件,即轉換文件和任務文件,會指定連接的源端和目的端,以及各個操作步驟的前后順序,執(zhí)行原理是將從源端查詢出源數據,將源數據放到臨時表中,繼而再插入到目的端數據庫的目標表中,這樣的操作在大數據量的情況下,會導致數據庫網絡傳輸量變的很大,影響同步數據的效率;另外,傳輸的過程是基于oracle的java數據庫連接(JDBC, JavaDataBaseConnectivity), JDBC是一種用于執(zhí)行SQL語句的Java應用程序編程接口(API ),可以為多種關系數據庫提供統(tǒng)一訪問。但是oracle的JDBC在大數據量的時候,出現Java虛擬機內存泄漏(jvm core dump)的幾率會變大,會分配使用大量的內存,會導致任務執(zhí)行慢,數據同步效率低的問題。同時,現有技術的BB備機102在進行數據處理計算的過程中,采用的是較為基礎的數據處理模式,效率低下,無法最大程度地發(fā)揮機器性能。
【發(fā)明內容】
[0007]有鑒于此,本發(fā)明的主要目的是提供一種網絡數據的同步處理方法和服務器,以提高對網絡數據的傳輸效率和處理效率,提升計算機的數據處理性能。
[0008]本發(fā)明的再一目的是提供一種網絡媒介信息處理系統(tǒng),以提高網絡媒介信息處理系統(tǒng)對網絡數據的傳輸效率和處理效率,提升網絡媒介信息處理系統(tǒng)的數據處理性能。
[0009]本發(fā)明的技術方案是這樣實現的:
[0010]一種網絡數據的同步處理方法,包括:
[0011]利用數據庫層的文件復制操作,從數據源服務器的數據庫同步源數據到本地數據庫;
[0012]針對同步到本地數據庫的所述數據,執(zhí)行物化視圖刷新,其中針對每個視圖采用原子刷新方式;
[0013]根據本地數據庫的數據,進行業(yè)務邏輯計算;
[0014]存儲所述業(yè)務邏輯計算結果,并將所述業(yè)務邏輯計算結果同步給業(yè)務服務器。一種數據計算服務器,包括:
[0015]第一同步模塊,用于利用數據庫層的文件復制操作,從數據源服務器的數據庫同步源數據到本地數據庫;
[0016]物化模塊,用于針對同步到本地數據庫的所述數據,執(zhí)行物化視圖刷新,其中針對每個視圖采用原子刷新方式;
[0017]計算模塊,用于根據本地數據庫的數據,進行業(yè)務邏輯計算;
[0018]存儲模塊,用于存儲所述業(yè)務邏輯計算結果;
[0019]第二同步模塊,用于將所述業(yè)務邏輯計算結果同步給業(yè)務服務器。
[0020]一種網絡媒介信息處理系統(tǒng),包括:商業(yè)智能BI服務器、網絡媒介信息運營分析工具系統(tǒng)BB主機,所述BI服務器用于提供網絡媒介信息的源數據;所述BB主機用于響應用戶請求,從所述BB備機讀取請求的數據;該網絡媒介信息處理系統(tǒng)還包括BB備機,該BB備機包括上述的數據計算服務器;其中,所述BI服務器為所述數據源服務器,所述BB主機為所述業(yè)務服務器。
[0021]與現有技術相比,本發(fā)明在同步數據時,在數據源服務器的數據庫和本地數據庫之間,采用數據庫層的文件復制操作進行數據同步,而不是采用現有的外部工具的方式進行數據同步,數據不必再經過中間的臨時表,而是實現端對端的數據庫文件復制操作,提高了數據傳輸效率;同時在本地數據庫對每個視圖采用原子刷新方式進行物化視圖刷新,從而可以避免有個別視圖刷新失敗導致整個物化視圖刷新過程失敗的問題,提升了數據的處理效率。
【專利附圖】
【附圖說明】
[0022]圖1為一種網絡媒介信息處理系統(tǒng)的架構及數據處理流轉示意圖;
[0023]圖2為本發(fā)明所述網絡數據的同步處理方法的一種流程圖;
[0024]圖3為本發(fā)明所述數據計算服務器的一種組成示意圖;
[0025]圖4為本發(fā)明所述一種網絡媒介信息處理系統(tǒng)的組成示意圖;
[0026]圖5為所述網絡媒介信息處理系統(tǒng)的又一種組成示意圖。
【具體實施方式】
[0027]下面結合附圖及具體實施例對本發(fā)明再作進一步詳細的說明。
[0028]圖2為本發(fā)明所述網絡數據的同步處理方法的一種流程圖,參見圖2,該方法主要包括:
[0029]步驟201、利用數據庫層的文件復制操作,從數據源服務器的數據庫同步源數據到本地數據庫。
[0030]在一種【具體實施方式】中,在如圖1所示網絡媒介信息處理系統(tǒng)的架構中,所述數據源服務器例如可以是圖1中所述的BI服務器,本發(fā)明的方法主要由圖1中的BB備機執(zhí)行,本發(fā)明方法中的本地就是指BB備機。在BI服務器上和BB備機上都安裝有數據庫,例如常用的ORACLE數據庫或微軟的SQLServer數據庫等。
[0031]如果所述數據源服務器的數據庫和本地數據庫上安裝ORACLE數據庫,則在一種【具體實施方式】中,所述數據庫層的文件復制操作為=ORACLE數據庫的DBlink數據同步操作。所述DBlink數據同步方式是指:當用戶要跨本地數據庫,訪問另外一個數據庫表中的數據時,本地數據庫中必須創(chuàng)建了遠程數據庫的dblink,通過dblink本地數據庫可以像訪問本地數據庫一樣訪問遠程數據庫表中的數據。所述dblink是一個數據庫到另一個數據庫的路徑的對象,dblink允許用戶查詢遠程表及執(zhí)行遠程程序,由于避免了中間臨時表的數據中轉,因此速度優(yōu)于現有技術所采用的KETTLE方式,提高了網絡數據的傳輸效率。
[0032]微軟的SQL Server數據庫也有DBlink的同步操作方式,其功能和ORACLE數據庫中DBlink類似。因此在另一種實施例中,所述數據庫為SQLServer數據庫,所述數據庫層的文件復制操作為:SQL Server數據庫的DBlink數據同步操作。
[0033]如果所述數據源服務器的數據庫和本地數據庫上安裝ORACLE數據庫,則在另一種【具體實施方式】中,所述數據庫層的文件復制操作為=ORACLE數據庫的數據泵的同步操作。所述數據泵的同步方式是ORACLE數據庫的一種同步機制,類似從數據庫的數據文件級別進行端到端的拷貝,是ORACLE數據庫提供的更新、更快、更靈活的數據導入、導出工具,由于避免了中間臨時表的數據中轉,因此其速度也優(yōu)于現有技術所采用的KETTLE方式。
[0034]另外,在另一種具體實施例中,在進行所述數據同步時,還可以進一步包括:按照業(yè)務類型設置各業(yè)務源數據的同步時序,在同一時間只同步一個業(yè)務類型的源數據。這是因為,數據源服務器的下游系統(tǒng)有很多,為防止同一時間數據源服務器的負載壓力過大,所以設置時序來保證同一時間拉取數據的下游業(yè)務只有一個,從而可以進一步保證數據源服務器的穩(wěn)定性。
[0035]步驟202、針對同步到本地數據庫的所述數據,執(zhí)行物化視圖刷新,其中針對每個視圖采用原子刷新方式。
[0036]所述視圖是指:計算機數據庫中的虛擬表,其內容由查詢定義。同真實的表一樣,視圖包含一系列帶有名稱的列和行數據。但是,視圖并不在數據庫中以存儲的數據值集形式存在。行和列數據來自由定義視圖的查詢所引用的表,并且在引用視圖時動態(tài)生成。
[0037]所述物化視圖是指:用于預先計算并保存表連接或聚集等耗時較多的操作的結果,這樣,在執(zhí)行查詢時,就可以避免進行這些耗時的操作,從而快速的得到結果。物化視圖有很多方面和索引很相似:使用物化視圖的目的是為了提高查詢性能;物化視圖對應用透明,增加和刪除物化視圖不會影響應用程序中SQL語句的正確性和有效性;物化視圖需要占用存儲空間;當基表發(fā)生變化時,物化視圖也應當刷新。
[0038]所述物化視圖的原子刷新方式是指:在刷新一組物化視圖的時候,整個刷新作為一個事物,如果其中一個物化視圖刷新失敗,那么這一組物化視圖都不會刷新。即一個物化視圖刷新失敗了不影響其它的提交,可以解決之前有個別視圖刷新失敗導致整個物化視圖刷新過程失敗的問題,從而可以提升數據的處理效率。
[0039]步驟203、根據本地數據庫的數據,進行業(yè)務邏輯計算。
[0040]在所述BB備機進行業(yè)務邏輯計算時,本發(fā)明還可以具體采用以下幾種優(yōu)選實施例中的優(yōu)選方式進一步提高在進行業(yè)務邏輯計算時的處理效率,提高本地計算機的數據處理性能。
[0041]在一種優(yōu)選實施例中,在進行業(yè)務邏輯計算時,該方法進一步包括:將本地數據庫的運行模式設置為非歸檔模式。
[0042]例如對于ORACLE數據庫來說,Oracle數據庫有聯機重做日志,這個日志是記錄對數據庫所做的修改,比如插入,刪除,更新數據等,對這些操作都會記錄在聯機重做日志里。一般數據庫至少要有2個聯機重做日志組。當一個聯機重做日志組被寫滿的時候,就會發(fā)生日志切換,這時聯機重做日志組2成為當前使用的日志,當聯機重做日志組2寫滿的時候,又會發(fā)生日志切換,去寫聯機重做日志組1,就這樣反復進行。
[0043]如果數據庫處于非歸檔模式,聯機日志在切換時就會丟棄.而在歸檔模式下,當發(fā)生日志切換的時候,被切換的日志會進行歸檔。如,當前在使用聯機重做日志I,當I寫滿的時候,發(fā)生日志切換,開始寫聯機重做日志2,這時聯機重做日志I的內容會被拷貝到另外一個指定的目錄下。這個目錄叫做歸檔目錄,拷貝的文件叫歸檔重做日志。
[0044]由于oracle數據庫本身的日志機制很完善,會寫入很多日志,一定程度上影響機器性能,故將該數據庫的運行模式更改為非歸檔模式,就可以大幅度減少日志寫入,提升數據庫計算機的數據處理性能。
[0045]當然,如果采用的是其它數據庫,其工作模式也劃分為歸檔模式和非歸檔模式,在本實施例中對于其它數據庫,也可以將其運行模式設置為非歸檔模式。
[0046]在另一種優(yōu)選實施例中,在所述進行業(yè)務邏輯計算時,該方法進一步包括:確定本地計算設備的CPU核數n,分配CPU中的η-1個核用于并行進行所述業(yè)務邏輯計算。
[0047]采用本實施例,從而可以在CPU層面,從現有技術的單核計算,改成本發(fā)明的多核并行計算,基于目前服務器的多核特性,采用核數減I的并行度方案來完成并行查詢和插入的計算,實驗數據標明,本地計算設備的執(zhí)行性能提升30%,另外一個空余的核來保證CPU各個核的時序及統(tǒng)籌安排資源。具體的分配CPU核數的方法,可以采用結構化查詢語言(SQL, Structured Query Language)語句,通過相應的SQL指令對本地數據庫進行設置分配,使得CPU的n-Ι個核用于數據庫的并行業(yè)務邏輯計算。
[0048]步驟204、存儲所述業(yè)務邏輯計算結果,并將所述業(yè)務邏輯計算結果同步給業(yè)務服務器。
[0049]在一種優(yōu)選的實施例中,本步驟中所述存儲所述業(yè)務邏輯計算結果,具體包括:
[0050]a、令數據庫表中的索引失效;
[0051]b、向數據庫表中插入所述業(yè)務邏輯計算結果數據;
[0052]C、插入完畢后重新建立數據庫表的索引。
[0053]之所以采用本實施例的存儲方式,是因為在向數據庫表中插入數據時,去同步更新數據庫表的索引要比重建索引更會消耗存儲器上的輸入輸出(10)資源,因此采用本實施例的方法,可以降低對在本地數據計算服務器的存儲器上的1資源的消耗,從而可以進一步提高本地數據計算機服務器的數據處理效率和性能。
[0054]在存儲萬所述業(yè)務邏輯計算結果之后,可將所述業(yè)務邏輯計算結果同步給業(yè)務服務器,業(yè)務服務器如圖1所述的BB主機103。
[0055]與上述方法對應,本發(fā)明還公開了一種數據計算服務器,在一種具體實施例中,例如在如圖1所示網絡媒介信息處理系統(tǒng)的架構中,本發(fā)明所述的數據計算服務器為圖1所示的BB備機,所述數據源服務器例如可以是圖1中所述的BI服務器,所述業(yè)務服務器可以是圖1中所述的BB主機。
[0056]圖3為本發(fā)明所述數據計算服務器的一種組成示意圖。參見圖3,該數據計算服務器300具體包括:
[0057]第一同步模塊301,用于利用數據庫層的文件復制操作,從數據源服務器的數據庫同步源數據到本地數據庫。
[0058]物化模塊302,用于針對同步到本地數據庫的所述數據,執(zhí)行物化視圖刷新,其中針對每個視圖采用原子刷新方式。
[0059]計算模塊303,用于根據本地數據庫的數據,進行業(yè)務邏輯計算。
[0060]存儲模塊304,用于存儲所述業(yè)務邏輯計算結果。
[0061]第二同步模塊305,用于將所述業(yè)務邏輯計算結果同步給業(yè)務服務器。
[0062]在一種優(yōu)選實施例中,所述數據庫為ORACLE數據庫,所述第一同步模塊301所用的數據庫層的文件復制操作為=ORACLE數據庫的DBlink數據同步操作。所述dblink是一個數據庫到另一個數據庫的路徑的對象,由于避免了中間臨時表的數據中轉,因此速度優(yōu)于現有技術所采用的KETTLE方式,提高了網絡數據的傳輸效率。
[0063]在另一種優(yōu)選實施例中,所述數據庫為ORACLE數據庫,所述第一同步模塊301所用的數據庫層的文件復制操作為=ORACLE數據庫的數據泵的同步操作。數據泵是ORACLE數據庫提供的更新、更快、更靈活的數據導入、導出工具,由于避免了中間臨時表的數據中轉,因此其速度也優(yōu)于現有技術所采用的KETTLE方式。
[0064]在一種優(yōu)選實施例中,所述第一同步模塊301進一步用于:按照業(yè)務類型設置各業(yè)務源數據的同步時序,在同一時間只同步一個業(yè)務類型的源數據。通過這種設置,可以通過設置時序來保證同一時間拉取數據的下游業(yè)務只有一個,從而可以進一步保證數據源服務器的穩(wěn)定性。
[0065]在一種優(yōu)選實施例中,所述計算模塊303進一步用于:在進行業(yè)務邏輯計算時,將本地數據庫的運行模式設置為非歸檔模式,從而可以進一步提高數據計算服務器300的數據處理效率。
[0066]具體的,在采用ORACLE的實施例中,由于oracle數據庫本身的日志機制很完善,會寫入很多日志,一定程度上影響機器性能,故將該數據庫的運行模式更改為非歸檔模式,就可以大幅度減少日志寫入,提升數據庫計算機的數據處理性能。
[0067]當然,如果實施例中采用的是其它數據庫,其工作模式也劃分為歸檔模式和非歸檔模式,在本實施例中對于其它數據庫,也可以將其運行模式設置為非歸檔模式。
[0068]在一種優(yōu)選實施例中,所述計算模塊303進一步用于:在進行業(yè)務邏輯計算時,確定本地計算設備的CPU核數n,分配CPU中的n-ι個核用于并行進行所述業(yè)務邏輯計算。通過這種CPU核數的并行計算,可以進一步提高數據計算服務器300的數據處理效率。
[0069]在一種優(yōu)選實施例中,所述存儲模塊304具體用于:令數據庫表中的索引失效;向數據庫表中插入所述業(yè)務邏輯計算結果數據;插入完畢后重新建立數據庫表的索引。存儲模塊304之所以采用本實施例的存儲方式,是因為在向數據庫表中插入數據時,去同步更新數據庫表的索引要比重建索引更會消耗存儲器上的輸入輸出(10)資源,因此采用本實施例,可以降低對在本地數據計算服務器300的存儲器上的1資源的消耗,從而可以進一步提高本數據計算服務器300的數據處理效率和性能。
[0070]在存儲萬所述業(yè)務邏輯計算結果之后,可將所述業(yè)務邏輯計算結果同步給業(yè)務服務器,業(yè)務服務器如圖1所述的BB主機103。
[0071]本發(fā)明還公開了一種網絡媒介信息處理系統(tǒng),如圖4所示,該系統(tǒng)至少包括:商業(yè)智能(BI)服務器401、網絡媒介信息運營分析工具系統(tǒng)(BB)主機403,所述BI服務器401用于提供網絡媒介信息的源數據;所述BB主機403用于響應用戶請求,從所述BB備機讀取請求的數據;
[0072]如圖4所示,所述處理系統(tǒng)還包括BB備機402,該BB備機402包括上述數據計算服務器300的任一項實施例所述的數據計算服務器;其中,所述BI服務器401為所述數據源服務器,所述BB主機403為所述業(yè)務服務器。
[0073]圖5為所述網絡媒介信息處理系統(tǒng)的又一種組成示意圖,參見圖5,在該實施例中,該處理系統(tǒng)還進一步包括:
[0074]WEB服務器404,用于將BB主機的數據緩存在本地,用戶請求先到達該WEB服務器,該WEB服務器從本地的緩存中查詢請求結果,如果緩存命中請求結果則將請求結果返回給用戶,如果緩存未命中請求結果時請求BB主機查詢請求結果。這樣可以緩解BB主機403的訪問壓力。
[0075]在進一步的實施例中,該處理系統(tǒng)還可以進一步包括:預覽服務器405,用于同步所述BB備機的數據,進行同步預覽和迭代測試,其中設置預覽數據同步開發(fā)環(huán)境,在迭代開始時執(zhí)行,開發(fā)機器406可以在該開發(fā)環(huán)境中進行程序開發(fā)。
[0076]另外,在本發(fā)明各個實施例中的各功能模塊可以集成在一個處理單元中,也可以是各個模塊單獨物理存在,也可以兩個或兩個以上模塊集成在一個單元中。上述集成的單元既可以采用硬件的形式實現,也可以采用軟件功能單元的形式實現。所述各實施例的功能模塊可以位于一個終端或網絡節(jié)點,或者也可以分布到多個終端或網絡節(jié)點上。
[0077]另外,本發(fā)明的每一個實施例可以通過由數據處理設備如計算機執(zhí)行的數據處理程序來實現。顯然,數據處理程序構成了本發(fā)明。此外,通常存儲在一個存儲介質中的數據處理程序通過直接將程序讀取出存儲介質或者通過將程序安裝或復制到數據處理設備的存儲設備(如硬盤和或內存)中執(zhí)行。因此,這樣的存儲介質也構成了本發(fā)明。存儲介質可以使用任何類型的記錄方式,例如紙張存儲介質(如紙帶等)、磁存儲介質(如軟盤、硬盤、閃存等)、光存儲介質(如CD-ROM等)、磁光存儲介質(如MO等)等。
[0078]因此本發(fā)明還公開了一種存儲介質,其中存儲有數據處理程序,該數據處理程序用于執(zhí)行本發(fā)明上述方法的任何一種實施例。
[0079]以上所述僅為本發(fā)明的較佳實施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內,所做的任何修改、等同替換、改進等,均應包含在本發(fā)明保護的范圍之內。
【權利要求】
1.一種網絡數據的同步處理方法,其特征在于,包括: 利用數據庫層的文件復制操作,從數據源服務器的數據庫同步源數據到本地數據庫;針對同步到本地數據庫的所述數據,執(zhí)行物化視圖刷新,其中針對每個視圖采用原子刷新方式; 根據本地數據庫的數據,進行業(yè)務邏輯計算; 存儲所述業(yè)務邏輯計算結果,并將所述業(yè)務邏輯計算結果同步給業(yè)務服務器。
2.根據權利要求1所述的方法,其特征在于,所述數據庫為ORACLE數據庫或SQLServer數據庫,所述數據庫層的文件復制操作為:ORACLE數據庫或SQL Server數據庫的DBlink數據同步操作。
3.根據權利要求1所述的方法,其特征在于,所述數據庫為ORACLE數據庫,所述數據庫層的文件復制操作為:0RACLE數據庫的數據泵的同步操作。
4.根據權利要求1所述的方法,其特征在于,在進行數據同步時,進一步包括: 按照業(yè)務類型設置各業(yè)務源數據的同步時序,在同一時間只同步一個業(yè)務類型的源數據。
5.根據權利要求1所述的方法,其特征在于,所述進行業(yè)務邏輯計算時,該方法進一步包括: 將本地數據庫的運行模式設置為非歸檔模式。
6.根據權利要求1所述的方法,其特征在于,所述進行業(yè)務邏輯計算時,該方法進一步包括: 確定本地計算設備的CPU核數n,分配CPU中的η-1個核用于并行進行所述業(yè)務邏輯計笪
ο
7.根據權利要求1所述的方法,其特征在于,所述存儲所述業(yè)務邏輯計算結果,具體包括: 令數據庫表中的索引失效; 向數據庫表中插入所述業(yè)務邏輯計算結果數據; 插入完畢后重新建立數據庫表的索引。
8.一種數據計算服務器,其特征在于,包括: 第一同步模塊,用于利用數據庫層的文件復制操作,從數據源服務器的數據庫同步源數據到本地數據庫; 物化模塊,用于針對同步到本地數據庫的所述數據,執(zhí)行物化視圖刷新,其中針對每個視圖采用原子刷新方式; 計算模塊,用于根據本地數據庫的數據,進行業(yè)務邏輯計算; 存儲模塊,用于存儲所述業(yè)務邏輯計算結果; 第二同步模塊,用于將所述業(yè)務邏輯計算結果同步給業(yè)務服務器。
9.根據權利要求8所述的服務器,其特征在于,所述數據庫為ORACLE數據庫或SQLServer數據庫,所述第一同步模塊所用的數據庫層的文件復制操作為=ORACLE數據庫或SQL Server數據庫的DBlink數據同步操作。
10.根據權利要求8所述的服務器,其特征在于,所述數據庫為ORACLE數據庫,所述第一同步模塊所用的數據庫層的文件復制操作為=ORACLE數據庫的數據泵的同步操作。
11.根據權利要求8所述的服務器,其特征在于,所述第一同步模塊進一步用于:按照業(yè)務類型設置各業(yè)務源數據的同步時序,在同一時間只同步一個業(yè)務類型的源數據。
12.根據權利要求8所述的服務器,其特征在于,所述計算模塊進一步用于:在進行業(yè)務邏輯計算時,將本地數據庫的運行模式設置為非歸檔模式。
13.根據權利要求8所述的服務器,其特征在于,所述計算模塊進一步用于:在進行業(yè)務邏輯計算時,確定本地計算設備的CPU核數n,分配CPU中的n-ι個核用于并行進行所述業(yè)務邏輯計算。
14.根據權利要求8所述的服務器,其特征在于,所述存儲模塊具體用于:令數據庫表中的索引失效;向數據庫表中插入所述業(yè)務邏輯計算結果數據;插入完畢后重新建立數據庫表的索引。
15.一種網絡媒介信息處理系統(tǒng),包括:商業(yè)智能BI服務器、網絡媒介信息運營分析工具系統(tǒng)BB主機,所述BI服務器用于提供網絡媒介信息的源數據;所述BB主機用于響應用戶請求,從所述BB備機讀取請求的數據; 其特征在于,還包括BB備機,該BB備機包括如權利要求8至14任一項所述的數據計算服務器;其中,所述BI服務器為所述數據源服務器,所述BB主機為所述業(yè)務服務器。
16.根據權利要求16所述的系統(tǒng),其特征在于,該系統(tǒng)還進一步包括: WEB服務器,用于將BB主機的數據緩存在本地,用戶請求先到達該WEB服務器,該WEB服務器從本地的緩存中查詢請求結果,如果緩存命中請求結果則將請求結果返回給用戶,如果緩存未命中請求結果時請求即主機查詢請求結果。
17.根據權利要求16所述的系統(tǒng),其特征在于,該系統(tǒng)還進一步包括: 預覽服務器,用于同步所述BB備機的數據,進行同步預覽和迭代測試。
【文檔編號】H04L29/08GK104519103SQ201310460009
【公開日】2015年4月15日 申請日期:2013年9月30日 優(yōu)先權日:2013年9月30日
【發(fā)明者】馬曉偉, 汪坤先, 王勇, 王德文, 宋俊豪 申請人:騰訊科技(北京)有限公司