一種數(shù)據(jù)庫的數(shù)據(jù)處理方法及系統(tǒng)的制作方法
【專利摘要】本發(fā)明公開一種數(shù)據(jù)庫的數(shù)據(jù)處理方法,包括:配置以時間單位為粒度的分區(qū)策略;根據(jù)配置的分區(qū)策略,在物理層創(chuàng)建多個子文件,并與邏輯層的索引表相對應(yīng);根據(jù)配置的分區(qū)策略,將物理層的執(zhí)行數(shù)據(jù)分別存儲在創(chuàng)建的多個子文件中;本發(fā)明還提供一種數(shù)據(jù)庫的數(shù)據(jù)處理系統(tǒng)。根據(jù)本發(fā)明的技術(shù)方案,能夠提升數(shù)據(jù)庫的使用性能。
【專利說明】一種數(shù)據(jù)庫的數(shù)據(jù)處理方法及系統(tǒng)
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及數(shù)據(jù)管理技術(shù),尤其涉及一種數(shù)據(jù)庫的數(shù)據(jù)處理方法及系統(tǒng)。
【背景技術(shù)】
[0002]目前,客戶關(guān)系管理(CRM,Customer Relationship Management)系統(tǒng)的執(zhí)行數(shù)據(jù)在逐年加倍增長,這些執(zhí)行數(shù)據(jù)都存儲于結(jié)構(gòu)化查詢語言(SQL, Structured QueryLanguage)服務(wù)器(Server)數(shù)據(jù)庫的執(zhí)行數(shù)據(jù)表中,由于執(zhí)行數(shù)據(jù)表中的執(zhí)行數(shù)據(jù)量巨大,對該執(zhí)行數(shù)據(jù)表中的執(zhí)行數(shù)據(jù)的增加、刪除、修改、查詢等操作的速度都很慢,導(dǎo)致涉及執(zhí)行數(shù)據(jù)的業(yè)務(wù)的性能非常低,用戶體驗很差。
[0003]針對上述問題,MySQL數(shù)據(jù)庫采用分表方式解決,如圖1所示,對于MySQL數(shù)據(jù)庫,邏輯層中存有多個索引表,如索引表I?索引表3,物理層中的主文件為實際存儲執(zhí)行數(shù)據(jù)的載體;通常,將位于物理層的保存執(zhí)行數(shù)據(jù)的主文件分成多個主文件,使得邏輯層中的每個索引表在物理層中都有一個對應(yīng)的主文件,如索引表I對應(yīng)主文件1、索引表2對應(yīng)主文件2,以此類推;這種方案需要在最初就設(shè)置好規(guī)則,并創(chuàng)建多個主文件,用于存儲海量的執(zhí)行數(shù)據(jù),然后按照設(shè)置的規(guī)則去物理層中相應(yīng)的主文件中獲取執(zhí)行數(shù)據(jù)。
[0004]MySQL數(shù)據(jù)庫還可以采用圖2所示方式解決,如圖2所示,保存CRM系統(tǒng)的執(zhí)行數(shù)據(jù)的SQL Server數(shù)據(jù)庫中,邏輯層中僅存在一個索引表,物理層僅存在一個對應(yīng)的主文件,該主文件保存所有CRM系統(tǒng)的執(zhí)行數(shù)據(jù);基于這種方式,由于CRM系統(tǒng)中執(zhí)行數(shù)據(jù)需要被多個使用系統(tǒng)調(diào)用,如果將MySQL數(shù)據(jù)庫的方案應(yīng)用于保存CRM系統(tǒng)的執(zhí)行數(shù)據(jù)的SQLServer數(shù)據(jù)庫中,則需要將邏輯層中的索引表分為多個索引表,將物理層中的主文件分為多個主文件,那么,SQL Server數(shù)據(jù)庫的邏輯層和物理層都將發(fā)生較大的改動,而且查詢執(zhí)行數(shù)據(jù)的方法也都要進行相應(yīng)改動,帶來的成本和使用風險較大。
【發(fā)明內(nèi)容】
[0005]有鑒于此,本發(fā)明的主要目的在于提供一種數(shù)據(jù)庫的數(shù)據(jù)處理方法及系統(tǒng),能夠提升數(shù)據(jù)庫的使用性能。
[0006]為達到上述目的,本發(fā)明的技術(shù)方案是這樣實現(xiàn)的:
[0007]—種數(shù)據(jù)庫的數(shù)據(jù)處理方法,配置以時間單位為粒度的分區(qū)策略;該方法還包括:
[0008]根據(jù)配置的分區(qū)策略,在物理層創(chuàng)建多個子文件,并與邏輯層的索引表相對應(yīng);
[0009]根據(jù)配置的分區(qū)策略,將物理層的執(zhí)行數(shù)據(jù)分別存儲在創(chuàng)建的多個子文件中。
[0010]其中,該方法還包括:
[0011]根據(jù)配置的分區(qū)策略,自動創(chuàng)建新的子文件,將新的執(zhí)行數(shù)據(jù)存儲到所述新的子文件中。
[0012]其中,該方法還包括:
[0013]創(chuàng)建備份數(shù)據(jù)庫,將歷史數(shù)據(jù)遷移到所述備份數(shù)據(jù)庫中進行保存。[0014]其中,所述配置以時間單位為粒度的分區(qū)策略為:
[0015]為邏輯層的索引表對應(yīng)的物理層保存的執(zhí)行數(shù)據(jù)配置以時間單位為粒度的分區(qū)策略;
[0016]所述以時間單位為粒度的分區(qū)策略是根據(jù)生成時間按照年月進行分區(qū),或根據(jù)生成時間按照年日進行分區(qū),或根據(jù)生成時間和ID按照年加ID尾數(shù)進行分區(qū)。
[0017]其中,該方法還包括:
[0018]在邏輯層的索引表中增加一列標志位Pflag,并根據(jù)分區(qū)策略確定所述Pflag保存的時間信息。
[0019]其中,所述根據(jù)配置的分區(qū)策略,在物理層創(chuàng)建多個子文件,并與邏輯層的索引表相對應(yīng),為:
[0020]根據(jù)配置的分區(qū)策略,確定在物理層創(chuàng)建子文件的數(shù)量;
[0021]根據(jù)確定的創(chuàng)建子文件的數(shù)量,在物理層為邏輯層的索引表創(chuàng)建與所述索引表對應(yīng)的多個子文件。
[0022]其中,所述根據(jù)配置的分區(qū)策略,將物理層的執(zhí)行數(shù)據(jù)分別存儲在創(chuàng)建的多個子文件中為:
[0023]根據(jù)配置的分區(qū)策略、以及所述Pflag中保存的執(zhí)行數(shù)據(jù)的生成時間,將原先存儲在物理層已有的執(zhí)行數(shù)據(jù),再分別存儲到物理層創(chuàng)建的多個子文件中;
[0024]將物理層中每個子文件與邏輯層的索引表關(guān)聯(lián)。
[0025]一種數(shù)據(jù)庫的數(shù)據(jù)處理系統(tǒng),該系統(tǒng)包括:配置單元、創(chuàng)建單元、存儲單元;其中,
[0026]配置單元,用于配置以時間單位為粒度的分區(qū)策略;
[0027]創(chuàng)建單元,用于根據(jù)配置單元配置的分區(qū)策略,在物理層創(chuàng)建多個子文件,并與邏輯層的索引表相對應(yīng);
[0028]存儲單元,根據(jù)配置單元配置的分區(qū)策略,將物理層的執(zhí)行數(shù)據(jù),分別存儲在創(chuàng)建的多個子文件中。
[0029]其中,所述創(chuàng)建單元,還用于根據(jù)配置單元配置的分區(qū)策略,自動創(chuàng)建新的子文件;
[0030]所述存儲單元,還用于將新的執(zhí)行數(shù)據(jù)存儲到所述新的子文件中。
[0031]其中,所述創(chuàng)建單元,還用于創(chuàng)建備份數(shù)據(jù)庫;
[0032]所述存儲單元,還用于將歷史數(shù)據(jù)遷移到所述備份數(shù)據(jù)庫中進行保存。
[0033]其中,所述配置單元還包括分區(qū)策略配置子單元;
[0034]所述分區(qū)策略配置子單元,用于為邏輯層的索引表對應(yīng)的物理層保存的執(zhí)行數(shù)據(jù)配置以時間單位為粒度的分區(qū)策略;所述以時間單位為粒度的分區(qū)策略是根據(jù)生成時間按照年月進行分區(qū),或根據(jù)生成時間按照年日進行分區(qū),或根據(jù)生成時間和ID按照年加ID尾數(shù)進行分區(qū)。
[0035]其中,所述配置單元還包括Pflag配置子單元;
[0036]所述Pflag配置子單元,用于在邏輯層的索引表中增加一列Pflag,并根據(jù)分區(qū)策略確定所述Pflag保存的時間信息。
[0037]其中,所述配置單元還包括物理層子文件配置子單元;
[0038]所述物理層子文件配置子單元,用于根據(jù)配置的分區(qū)策略,確定在物理層創(chuàng)建子文件的數(shù)量;根據(jù)確定的創(chuàng)建子文件的數(shù)量,在物理層為邏輯層的索引表創(chuàng)建與所述索引表對應(yīng)的多個子文件。
[0039]其中,所述配置單元還包括物理層子文件存儲配置子單元;
[0040]所述物理層子文件存儲配置子單元,用于根據(jù)配置的分區(qū)策略、以及所述Pflag中保存的執(zhí)行數(shù)據(jù)的生成時間,將原先存儲在物理層已有的執(zhí)行數(shù)據(jù),再分別存儲到物理層創(chuàng)建的多個子文件中;將物理層中每個子文件與邏輯層的索引表關(guān)聯(lián)。
[0041]本發(fā)明提供的數(shù)據(jù)庫的數(shù)據(jù)處理方法及系統(tǒng),配置以時間單位為粒度的分區(qū)策略;根據(jù)配置的分區(qū)策略,在物理層創(chuàng)建多個子文件,并與邏輯層的索引表相對應(yīng);根據(jù)配置的分區(qū)策略,將物理層的執(zhí)行數(shù)據(jù)分別存儲在創(chuàng)建的多個子文件中,如此,按照合理的分區(qū)策略將存儲的數(shù)據(jù)分成多個存儲區(qū)域,能夠提高對數(shù)據(jù)庫的數(shù)據(jù)表中執(zhí)行數(shù)據(jù)的增加、刪除、修改、查詢等操作的速度,提升數(shù)據(jù)庫使用性能,從而提高涉及執(zhí)行數(shù)據(jù)的業(yè)務(wù)的性倉泛。
【專利附圖】
【附圖說明】
[0042]圖1是現(xiàn)有技術(shù)中MySQL數(shù)據(jù)庫中邏輯層和物理層的結(jié)構(gòu)示意圖;
[0043]圖2是現(xiàn)有技術(shù)中SQL Server數(shù)據(jù)庫中邏輯層和物理層的結(jié)構(gòu)示意圖;
[0044]圖3是本發(fā)明實現(xiàn)數(shù)據(jù)庫的數(shù)據(jù)處理方法的流程示意圖;
[0045]圖4是本發(fā)明中數(shù)據(jù)庫中邏輯層和物理層的結(jié)構(gòu)示意圖;
[0046]圖5是本發(fā)明實現(xiàn)數(shù)據(jù)庫的數(shù)據(jù)處理系統(tǒng)的結(jié)構(gòu)示意圖;
[0047]圖6是本發(fā)明實現(xiàn)數(shù)據(jù)庫的數(shù)據(jù)處理系統(tǒng)的配置單元中子單元的示意圖。
【具體實施方式】
[0048]本發(fā)明的基本思想是:配置以時間單位為粒度的分區(qū)策略;根據(jù)配置的分區(qū)策略,在物理層創(chuàng)建多個子文件,并與邏輯層的索引表相對應(yīng);根據(jù)配置的分區(qū)策略,將物理層的執(zhí)行數(shù)據(jù)分別存儲在創(chuàng)建的多個子文件中。
[0049]下面通過附圖及具體實施例對本發(fā)明再做進一步的詳細說明。
[0050]本發(fā)明提供一種數(shù)據(jù)庫的數(shù)據(jù)處理方法,圖3是本發(fā)明實現(xiàn)數(shù)據(jù)庫的數(shù)據(jù)處理方法的流程示意圖,如圖3所示,該方法包括以下步驟:
[0051]步驟301,配置以時間單位為粒度的分區(qū)策略;
[0052]具體的,執(zhí)行數(shù)據(jù)表中的執(zhí)行數(shù)據(jù)為執(zhí)行數(shù)據(jù)操作時生成的數(shù)據(jù),比如交易數(shù)據(jù),每條交易數(shù)據(jù)都有交易ID、交易時間、交易金額等多列信息;
[0053]為邏輯層的索引表對應(yīng)的物理層保存的執(zhí)行數(shù)據(jù)配置以時間單位為粒度的分區(qū)策略;所述以時間單位為粒度的分區(qū)策略可以是根據(jù)交易時間按照年月進行分區(qū),或根據(jù)交易時間按照年日進行分區(qū),或根據(jù)交易時間和交易ID按照年+ID尾數(shù)進行分區(qū)等;
[0054]配置分區(qū)策略后,需要在邏輯層的索引表中增加一列標志位Pflag,根據(jù)分區(qū)策略確定該Pflag保存的時間信息,例如,分區(qū)策略是根據(jù)生成時間比如交易時間按照年月進行分區(qū)時,該Pflag用于保存每條交易數(shù)據(jù)的交易時間的年月,即年份+月份。
[0055]步驟302,根據(jù)配置的分區(qū)策略,在物理層創(chuàng)建多個子文件,并與邏輯層的索引表相對應(yīng);[0056]具體的,如圖4所示,根據(jù)配置的分區(qū)策略,可以確定在物理層創(chuàng)建子文件的數(shù)量,根據(jù)確定的數(shù)量,在物理層中為邏輯層的索引表創(chuàng)建對應(yīng)的多個子文件;為了使得硬盤的IO性能達到最佳,可以將創(chuàng)建的多個子文件均勻分布在服務(wù)器的各個硬盤上;
[0057]例如,當執(zhí)行數(shù)據(jù)操作時生成數(shù)據(jù)的生成時間具體為交易時間時,可以根據(jù)交易時間按照年月進行分區(qū)時,對于2010年分為201001?201012共12個區(qū),對于2011年分為201101?201112共12個區(qū),對于2012年分為201201?201212共12個區(qū),對于2009年及2009年之前的執(zhí)行數(shù)據(jù),由于在業(yè)務(wù)使用的越來越少,因此可以不按照年月進行分區(qū),而按照年進行分區(qū),即存在I個分區(qū),因此,對于2009年至2012年的執(zhí)行數(shù)據(jù),可以在物理層創(chuàng)建37個子文件;根據(jù)交易時間按照年日進行分區(qū)時,2010年可分為201001、201002、......,201030,201031 共 31 個區(qū)。
[0058]步驟303,根據(jù)配置的分區(qū)策略,將物理層的執(zhí)行數(shù)據(jù)分別存儲在創(chuàng)建的多個子文件中;
[0059]具體的,根據(jù)配置的分區(qū)策略、以及Pflag中保存的執(zhí)行數(shù)據(jù)的交易時間,將原先存儲在物理層主文件中已有的執(zhí)行數(shù)據(jù),再分別存儲到物理層創(chuàng)建的多個子文件中;例如,分區(qū)策略為根據(jù)交易時間按照年月進行分區(qū)時,根據(jù)Pflag中保存的執(zhí)行數(shù)據(jù)的交易時間的年月,將2009年至2012年的執(zhí)行數(shù)據(jù)按照年月的分區(qū)策略,分別存儲到創(chuàng)建的37個子文件中,每個子文件中都保存有一年中某一月份的所有執(zhí)行數(shù)據(jù),如此,每個子文件中的執(zhí)行數(shù)據(jù)相對均勻,至少同一年份的子文件中的執(zhí)行數(shù)據(jù)相對均勻,劃分粒度較細,而且交易時間也是數(shù)據(jù)庫中的常用字段;
[0060]在將執(zhí)行數(shù)據(jù)存儲到物理層的多個子文件后,將物理層中每個子文件都與邏輯層的索引表關(guān)聯(lián),取消物理層中主文件與索引表的關(guān)聯(lián),實現(xiàn)用多個子文件代替原來一個主文件的方式;如此,在進行分區(qū)后,通過邏輯層的索引表可以在每個創(chuàng)建的子文件中查詢需要的執(zhí)行數(shù)據(jù);此外,還可以在數(shù)據(jù)庫運行一段時間后,刪除原先的主文件。
[0061]進一步的,可以根據(jù)配置的分區(qū)策略,自動創(chuàng)建新的子文件,將新的執(zhí)行數(shù)據(jù)存儲到所述新的子文件中;
[0062]具體的,所述新的子文件可以是下一個月的子文件、下一年每個月的子文件;所述新的執(zhí)行數(shù)據(jù)可以是下一個月的執(zhí)行數(shù)據(jù)、下一年某個月的執(zhí)行數(shù)據(jù)。舉例來說,如果今年為2012年,創(chuàng)建的子文件只到2012年12月,因此,可選的,還可以配置一個自動創(chuàng)建程序,該自動創(chuàng)建程序可以自動運行,例如在每年的12月15日定時自動運行,自動創(chuàng)建程序根據(jù)配置的分區(qū)策略,在物理層中一次性創(chuàng)建下一年的所有子文件,創(chuàng)建的下一年的子文件將保存下一年新產(chǎn)生的執(zhí)行數(shù)據(jù);例如,如果分區(qū)策略為根據(jù)交易時間按照年月進行分區(qū),則該自動創(chuàng)建程序可以在2012年12月15日自動運行,在物理層中一次性創(chuàng)建2013年的12
個子文件201301、201302、......>201312 ;如此,物理層中對應(yīng)2013年的12個子文件將分
別存儲2013年每個月的執(zhí)行數(shù)據(jù);自動創(chuàng)建程序在完成下一年所有子文件的創(chuàng)建操作后,通過郵件通知數(shù)據(jù)庫管理員;如此,解決根據(jù)分區(qū)策略處理數(shù)據(jù)庫中數(shù)據(jù)的擴展性問題和可持續(xù)性問題。
[0063]進一步的,還可以創(chuàng)建備份數(shù)據(jù)庫,將歷史數(shù)據(jù)遷移到備份數(shù)據(jù)庫中進行保存;
[0064]具體的,可選的,在物理層中,還可以再創(chuàng)建一個與執(zhí)行數(shù)據(jù)表的結(jié)構(gòu)相同的備份數(shù)據(jù)表且可以存儲在備份數(shù)據(jù)庫中,隨著時間的推移,根據(jù)業(yè)務(wù)的需要,可以選擇性的將不再使用的執(zhí)行數(shù)據(jù)遷移到創(chuàng)建的備份數(shù)據(jù)表中進行存儲,例如2013年年初時,不再用到2009年的執(zhí)行數(shù)據(jù),則將200900的子文件遷移到備份數(shù)據(jù)表;2013年年底時,不再使用2010年第一季度的數(shù)據(jù),則將201001的子文件、201002的子文件和201003的子文件遷移到備份數(shù)據(jù)表進行存儲,從而解決歷史數(shù)據(jù)過于冗余的問題;而且遷移的子文件中的執(zhí)行數(shù)據(jù)屬于物理層的操作,即使有上千萬的數(shù)據(jù)量,數(shù)據(jù)庫也可以在毫秒級完成,效率非常聞。
[0065]利用本發(fā)明提供的上述方案,將物理層中的主文件用多個子文件進行替代,實現(xiàn)物理層中執(zhí)行數(shù)據(jù)的分區(qū)存儲,不需要改變邏輯層,因而不需要改變執(zhí)行數(shù)據(jù)表的使用方法,而且經(jīng)過驗證,對于查詢同一個執(zhí)行數(shù)據(jù),利用現(xiàn)有方法,將需要消耗62160毫秒的時間,利用本發(fā)明的技術(shù)方案,僅需要14953毫秒的時間,此外,執(zhí)行數(shù)據(jù)的更新、插入和刪除等操作的速度也明顯提高,對于執(zhí)行數(shù)據(jù)的使用起到了明顯的優(yōu)化作用。
[0066]需要說明的是,本發(fā)明的技術(shù)方案可以應(yīng)用于MySQL數(shù)據(jù)庫、SQL Server數(shù)據(jù)庫、甲骨文數(shù)據(jù)庫(Oracel)。
[0067]為實現(xiàn)上述方法,本發(fā)明還提供一種數(shù)據(jù)庫的數(shù)據(jù)處理系統(tǒng),圖5是本發(fā)明實現(xiàn)數(shù)據(jù)庫的數(shù)據(jù)處理系統(tǒng)的結(jié)構(gòu)示意圖,如圖5所示,該系統(tǒng)包括:配置單元50、創(chuàng)建單元60、存儲單元70 ;其中,
[0068]配置單元50,用于配置以時間單位為粒度的分區(qū)策略;
[0069]創(chuàng)建單元60,用于根據(jù)配置單元50配置的分區(qū)策略,在物理層創(chuàng)建多個子文件,并與邏輯層的索引表相對應(yīng);
[0070]存儲單元70,根據(jù)配置單元配置的分區(qū)策略,將物理層的執(zhí)行數(shù)據(jù),分別存儲在創(chuàng)建的多個子文件中。
[0071]其中,所述創(chuàng)建單元60,還用于根據(jù)配置單元50配置的分區(qū)策略,自動創(chuàng)建新的子文件;
[0072]所述存儲單元70,還用于將新的執(zhí)行數(shù)據(jù)存儲到所述新的子文件中。
[0073]這里,所述新的子文件可以是下一個月的子文件、下一年每個月的子文件;所述新的執(zhí)行數(shù)據(jù)可以是下一個月的執(zhí)行數(shù)據(jù)、下一年某個月的執(zhí)行數(shù)據(jù)。
[0074]所述創(chuàng)建單元60,還用于創(chuàng)建備份數(shù)據(jù)庫;
[0075]所述存儲單元70,還用于將歷史數(shù)據(jù)遷移到所述備份數(shù)據(jù)庫中進行保存。
[0076]具體的,所述配置單元50配置以時間單位為粒度的分區(qū)策略為:為邏輯層的索引表對應(yīng)的物理層保存的執(zhí)行數(shù)據(jù)配置以時間單位為粒度的分區(qū)策略;所述以時間單位為粒度的分區(qū)策略是根據(jù)生成時間比如交易時間按照年月進行分區(qū),或根據(jù)交易時間按照年日進行分區(qū),或根據(jù)交易時間和交易ID按照年加ID尾數(shù)進行分區(qū)。
[0077]所述創(chuàng)建單元60根據(jù)配置的分區(qū)策略,為邏輯層的索引表在物理層創(chuàng)建多個子文件為:根據(jù)配置的分區(qū)策略,確定在物理層創(chuàng)建子文件的數(shù)量;根據(jù)確定的創(chuàng)建子文件的數(shù)量,在物理層為邏輯層的索引表創(chuàng)建對應(yīng)的多個子文件。
[0078]所述存儲單元70根據(jù)配置的分區(qū)策略,將物理層的執(zhí)行數(shù)據(jù)分別存儲在創(chuàng)建的多個子文件中為:根據(jù)配置的分區(qū)策略,確定在物理層創(chuàng)建子文件的數(shù)量;根據(jù)確定的創(chuàng)建子文件的數(shù)量,在物理層為邏輯層的索引表創(chuàng)建對應(yīng)的多個子文件。
[0079]配置單元50還可以包括以下子單元中的一種或多種的組合,如圖6所示為配置單元50包括以下所有子單元的具體實例,包括分區(qū)策略配置子單元501、Pflag配置子單元502、物理層子文件配置子單元503和物理層子文件存儲配置子單元504。
[0080]分區(qū)策略配置子單元501,用于為邏輯層的索引表對應(yīng)的物理層保存的執(zhí)行數(shù)據(jù)配置以時間單位為粒度的分區(qū)策略;所述以時間單位為粒度的分區(qū)策略是根據(jù)生成時間按照年月進行分區(qū),或根據(jù)生成時間按照年日進行分區(qū),或根據(jù)生成時間和ID按照年加ID尾數(shù)進行分區(qū)。
[0081]Pflag配置子單元502,用于在邏輯層的索引表中增加一列Pflag,并根據(jù)分區(qū)策略確定所述Pflag保存的時間信息。
[0082]物理層子文件配置子單元503,用于根據(jù)配置的分區(qū)策略,確定在物理層創(chuàng)建子文件的數(shù)量;根據(jù)確定的創(chuàng)建子文件的數(shù)量,在物理層為邏輯層的索引表創(chuàng)建與所述索引表對應(yīng)的多個子文件。
[0083]物理層子文件存儲配置子單元504,用于根據(jù)配置的分區(qū)策略、以及所述Pflag中保存的執(zhí)行數(shù)據(jù)的生成時間,將原先存儲在物理層已有的執(zhí)行數(shù)據(jù),再分別存儲到物理層創(chuàng)建的多個子文件中;將物理層中每個子文件與邏輯層的索引表關(guān)聯(lián)。
[0084]以上所述,僅為本發(fā)明的較佳實施例而已,并非用于限定本發(fā)明的保護范圍,凡在本發(fā)明的精神和原則之內(nèi)所作的任何修改、等同替換和改進等,均應(yīng)包含在本發(fā)明的保護范圍之內(nèi)。
【權(quán)利要求】
1.一種數(shù)據(jù)庫的數(shù)據(jù)處理方法,其特征在于,配置以時間單位為粒度的分區(qū)策略;該方法還包括: 根據(jù)配置的分區(qū)策略,在物理層創(chuàng)建多個子文件,并與邏輯層的索引表相對應(yīng); 根據(jù)配置的分區(qū)策略,將物理層的執(zhí)行數(shù)據(jù)分別存儲在創(chuàng)建的多個子文件中。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,該方法還包括: 根據(jù)配置的分區(qū)策略,自動創(chuàng)建新的子文件,將新的執(zhí)行數(shù)據(jù)存儲到所述新的子文件中。
3.根據(jù)權(quán)利要求1或2所述的方法,其特征在于,該方法還包括: 創(chuàng)建備份數(shù)據(jù)庫,將歷史數(shù)據(jù)遷移到所述備份數(shù)據(jù)庫中進行保存。
4.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述配置以時間單位為粒度的分區(qū)策略為: 為邏輯層的索引表對應(yīng)的物理層保存的執(zhí)行數(shù)據(jù)配置以時間單位為粒度的分區(qū)策略; 所述以時間單位為粒度的分區(qū)策略是根據(jù)生成時間按照年月進行分區(qū),或根據(jù)生成時間按照年日進行分區(qū),或根據(jù)生成時間和ID按照年加ID尾數(shù)進行分區(qū)。
5.根據(jù)權(quán)利要求4所述的方法,其特征在于,該方法還包括: 在邏輯層的索引表中增加一列標志位Pflag,并根據(jù)分區(qū)策略確定所述Pflag保存的時間信息。
6.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述根據(jù)配置的分區(qū)策略,在物理層創(chuàng)建多個子文件,并與邏輯層的索引表相對應(yīng),為: 根據(jù)配置的分區(qū)策略,確定在物理層創(chuàng)建子文件的數(shù)量; 根據(jù)確定的創(chuàng)建子文件的數(shù)量,在物理層為邏輯層的索引表創(chuàng)建與所述索引表對應(yīng)的多個子文件。
7.根據(jù)權(quán)利要求4所述的方法,其特征在于,所述根據(jù)配置的分區(qū)策略,將物理層的執(zhí)行數(shù)據(jù)分別存儲在創(chuàng)建的多個子文件中為: 根據(jù)配置的分區(qū)策略、以及所述Pflag中保存的執(zhí)行數(shù)據(jù)的生成時間,將原先存儲在物理層已有的執(zhí)行數(shù)據(jù),再分別存儲到物理層創(chuàng)建的多個子文件中; 將物理層中每個子文件與邏輯層的索引表關(guān)聯(lián)。
8.一種數(shù)據(jù)庫的數(shù)據(jù)處理系統(tǒng),其特征在于,該系統(tǒng)包括:配置單元、創(chuàng)建單元、存儲單元;其中, 配置單元,用于配置以時間單位為粒度的分區(qū)策略; 創(chuàng)建單元,用于根據(jù)配置單元配置的分區(qū)策略,在物理層創(chuàng)建多個子文件,并與邏輯層的索引表相對應(yīng); 存儲單元,根據(jù)配置單元配置的分區(qū)策略,將物理層的執(zhí)行數(shù)據(jù),分別存儲在創(chuàng)建的多個子文件中。
9.根據(jù)權(quán)利要求8所述的系統(tǒng),其特征在于, 所述創(chuàng)建單元,還用于根據(jù)配置單元配置的分區(qū)策略,自動創(chuàng)建新的子文件; 所述存儲單元,還用于將新的執(zhí)行數(shù)據(jù)存儲到所述新的子文件中。
10.根據(jù)權(quán)利要求8或9所述的系統(tǒng),其特征在于,所述創(chuàng)建單元,還用于創(chuàng)建備份數(shù)據(jù)庫; 所述存儲單元,還用于將歷史數(shù)據(jù)遷移到所述備份數(shù)據(jù)庫中進行保存。
11.根據(jù)權(quán)利要求8所述的系統(tǒng),其特征在于,所述配置單元還包括分區(qū)策略配置子單元; 所述分區(qū)策略配置子單元,用于為邏輯層的索引表對應(yīng)的物理層保存的執(zhí)行數(shù)據(jù)配置以時間單位為粒度的分區(qū)策略;所述以時間單位為粒度的分區(qū)策略是根據(jù)生成時間按照年月進行分區(qū),或根據(jù)生成時間按照年日進行分區(qū),或根據(jù)生成時間和ID按照年加ID尾數(shù)進行分區(qū)。
12.根據(jù)權(quán)利要求11所述的系統(tǒng),其特征在于,所述配置單元還包括Pflag配置子單元; 所述Pflag配置子單元,用于在邏輯層的索引表中增加一列Pflag,并根據(jù)分區(qū)策略確定所述Pflag保存的時間信息。
13.根據(jù)權(quán)利要求8所述的系統(tǒng),其特征在于,所述配置單元還包括物理層子文件配置子單元; 所述物理層子文件配置子單元,用于根據(jù)配置的分區(qū)策略,確定在物理層創(chuàng)建子文件的數(shù)量;根據(jù)確定的創(chuàng)建子文件的數(shù)量,在物理層為邏輯層的索引表創(chuàng)建與所述索引表對應(yīng)的多個子文件。
14.根據(jù)權(quán)利要求11所述的系統(tǒng),其特征在于,所述配置單元還包括物理層子文件存儲配置子單元; 所述物理層子文件存儲配置子單元,用于根據(jù)配置的分區(qū)策略、以及所述Pflag中保存的執(zhí)行數(shù)據(jù)的生成時間,將原先存儲在物理層已有的執(zhí)行數(shù)據(jù),再分別存儲到物理層創(chuàng)建的多個子文件中;將物理層中每個子文件與邏輯層的索引表關(guān)聯(lián)。
【文檔編號】G06F17/30GK103793382SQ201210418832
【公開日】2014年5月14日 申請日期:2012年10月26日 優(yōu)先權(quán)日:2012年10月26日
【發(fā)明者】牛鳴 申請人:騰訊科技(北京)有限公司