專利名稱:關(guān)系型數(shù)據(jù)庫的數(shù)據(jù)壓縮方法
技術(shù)領(lǐng)域:
本發(fā)明涉及網(wǎng)絡(luò)技術(shù),尤其涉及一種關(guān)系型數(shù)據(jù)庫的數(shù)據(jù)壓縮方法。
背景技術(shù):
網(wǎng)上論壇是網(wǎng)上交流最常見的載體,給無數(shù)的網(wǎng)民提供了多方、即時、便捷的交 流平臺以及多種多樣的動態(tài)訊息,同時網(wǎng)上論壇也越來越多地涉及了各個重要領(lǐng)域,如IT 業(yè)、金融和高校BBS等。為了加大信息傳播力、擴大信息影響力起了舉足輕重的作用。因而, 為了更大限度的滿足網(wǎng)民日益增長的需求,網(wǎng)上論壇系統(tǒng)的創(chuàng)建和維護也顯得格外重要。網(wǎng)上論壇系統(tǒng)的核心內(nèi)容就是所保存的數(shù)據(jù),網(wǎng)上論壇的成功與否直接取決于對 于數(shù)據(jù)的保存維護、訪問速度的快慢、數(shù)據(jù)安全性之類的問題,因此,如何來有序地保存網(wǎng) 絡(luò)論壇的數(shù)據(jù)是網(wǎng)上論壇系統(tǒng)最需要考慮的問題。網(wǎng)上論壇保存數(shù)據(jù)最主要的方法是采用關(guān)系型數(shù)據(jù)庫,由于網(wǎng)上論壇數(shù)據(jù)量龐 大,十分容易造成數(shù)據(jù)的遺失或是訪問速度的緩慢,這些對于網(wǎng)上論壇來說都是十分致命 的缺陷。由此,就需要一種對于數(shù)據(jù)庫的有效的壓縮方法。
發(fā)明內(nèi)容
針對網(wǎng)上論壇的應(yīng)用特點,本發(fā)明提出一種專門針對網(wǎng)上論壇的數(shù)據(jù)庫壓縮方法。根據(jù)本發(fā)明,提出一種關(guān)系型數(shù)據(jù)庫的數(shù)據(jù)壓縮方法,包括下述步驟定義操作實體、與操作實體相關(guān)的操作行為對象、以及評價操作行為對象的行為 結(jié)果的操作行為數(shù)據(jù),其中,操作實體和操作行為對象之間存在一對一的關(guān)系;定義靜態(tài)實體、與靜態(tài)實體相關(guān)的靜態(tài)行為對象、以及評價靜態(tài)行為對象的行為 結(jié)果的靜態(tài)行為數(shù)據(jù),其中,靜態(tài)實體和靜態(tài)行為對象之間存在多對一的關(guān)系;定義動態(tài)實體、與動態(tài)實體相關(guān)的動態(tài)行為對象、以及評價動態(tài)行為對象的行為 結(jié)果的動態(tài)行為數(shù)據(jù),其中,動態(tài)實體和動態(tài)行為對象之間存在多對一的關(guān)系;關(guān)聯(lián)操作實體和靜態(tài)實體,形成操作實體-靜態(tài)實體關(guān)聯(lián)關(guān)系表,其中,每一個靜 態(tài)實體與且僅與一個操作實體相關(guān)聯(lián),操作實體和與其相關(guān)聯(lián)的靜態(tài)實體在操作實體-靜 態(tài)實體關(guān)聯(lián)關(guān)系表中記錄為授權(quán)關(guān)聯(lián)關(guān)系,操作實體和與其不相關(guān)聯(lián)的靜態(tài)實體在操作實 體-靜態(tài)實體關(guān)聯(lián)關(guān)系表中記錄為非授權(quán)關(guān)聯(lián)關(guān)系; 關(guān)聯(lián)操作實體和動態(tài)實體,形成操作實體-動態(tài)實體關(guān)聯(lián)關(guān)系表,其中,每一個動 態(tài)實體與至少兩個操作實體相關(guān)聯(lián),其中有且僅有一個操作實體與該動態(tài)實體具有授權(quán)關(guān) 聯(lián),操作實體和與其相關(guān)聯(lián)的動態(tài)實體在操作實體-動態(tài)實體關(guān)聯(lián)關(guān)系表中記錄為授權(quán)關(guān) 聯(lián)關(guān)系,操作實體和與其不相關(guān)聯(lián)的動態(tài)實體在操作實體-動態(tài)實體關(guān)聯(lián)關(guān)系表中記錄為 非授權(quán)關(guān)聯(lián)關(guān)系; 以相同的操作實體、靜態(tài)實體、動態(tài)實體或者行為對象為基礎(chǔ)壓縮合并操作實 體-靜態(tài)實體關(guān)聯(lián)關(guān)系表和操作實體-動態(tài)實體關(guān)聯(lián)關(guān)系表,形成數(shù)據(jù)庫總關(guān)系表。
其中,與操作實體相關(guān)的操作行為對象包括登錄對象、注冊對象和退出對象。其中,與靜態(tài)實體相關(guān)的靜態(tài)行為對象包括生成對象、刪除對象、修改對象、再生 對象和瀏覽對象。其中,與動態(tài)實體相關(guān)的動態(tài)行為對象包括生成對象、刪除對象、再生對象和接收 對象。本發(fā)明的關(guān)系型數(shù)據(jù)庫的數(shù)據(jù)壓縮方法針對網(wǎng)上論壇的特點,對關(guān)系型數(shù)據(jù)庫進 行針對性地壓縮,不但有效提高的空間利用率,更加確保了網(wǎng)上論壇的數(shù)據(jù)安全和數(shù)據(jù)訪 問速度。
圖1揭示了操作實體及相關(guān)操作行為對象的一個實例。圖2揭示了靜態(tài)實體及相關(guān)靜態(tài)行為對象的一個實例。圖3揭示了動態(tài)實體及相關(guān)動態(tài)行為對象的一個實例。圖4揭示了經(jīng)過壓縮后的操作實體、靜態(tài)實體、動態(tài)實體以及相關(guān)的行為對象的關(guān)系。
具體實施例方式根據(jù)本發(fā)明,提出一種關(guān)系型數(shù)據(jù)庫的數(shù)據(jù)壓縮方法,包括下述步驟10.定義操作實體、與操作實體相關(guān)的操作行為對象、以及評價操作行為對象的行 為結(jié)果的操作行為數(shù)據(jù),其中,操作實體和操作行為對象之間存在一對一的關(guān)系。參考圖1 所示,揭示了操作實體及相關(guān)操作行為對象的一個實例。操作實體是用戶11,操作行為對象 是注冊對象110,相關(guān)的操作行為數(shù)據(jù)包括用戶名110a、密碼110b、昵稱110c、性別IlOd和 郵箱110e。評價注冊對象110的行為結(jié)果是基于用戶名110a、密碼110b、昵稱110c、性別 IlOd和郵箱IlOe而進行。操作實體的操作行為對象不僅僅限于注冊對象,作為示例,還包 括登錄對象、退出對象等等。20.定義靜態(tài)實體、與靜態(tài)實體相關(guān)的靜態(tài)行為對象、以及評價靜態(tài)行為對象的行 為結(jié)果的靜態(tài)行為數(shù)據(jù),其中,靜態(tài)實體和靜態(tài)行為對象之間存在多對一的關(guān)系。參考圖2 所示,揭示了靜態(tài)實體及相關(guān)靜態(tài)行為對象的一個實例。靜態(tài)實體是文章21,靜態(tài)行為對象 包括生成對象210和刪除對象212。靜態(tài)行為數(shù)據(jù)包括內(nèi)容200a、回復(fù)200b、標題200c、附 件名200d、時間210e、作者索引號210f、文章索引號220g和討論區(qū)索引號220h。其中,內(nèi)容 200a、回復(fù)200b、標2400c、附件名200d與文章41直接關(guān)聯(lián),時間210e、作者索引號210f與 生成對象210直接關(guān)聯(lián),文章索引號220g和討論區(qū)索引號220h與刪除對象412直接關(guān)聯(lián)。 在進行行為結(jié)果的評價時,對生成對象210的行為結(jié)果的評價利用內(nèi)容200a、回復(fù)200b、標 題200c、附件名200d、時間210e、作者索引號210f,對刪除對象212的行為結(jié)果的評價利用 內(nèi)容200a、回復(fù)200b、標題200c、附件名200d、文章索引號220g和討論區(qū)索引號220h。靜 態(tài)實體的靜態(tài)行為對象不僅僅限于生成對象和刪除對象,作為示例,還包括修改對象、再生 對象和瀏覽對象。30.定義動態(tài)實體、與動態(tài)實體相關(guān)的動態(tài)行為對象、以及評價動態(tài)行為對象的行 為結(jié)果的動態(tài)行為數(shù)據(jù),其中,動態(tài)實體和動態(tài)行為對象之間存在多對一的關(guān)系。參考圖3所示,揭示了動態(tài)實體及相關(guān)動態(tài)行為對象的一個實例。動態(tài)實體是郵件31,動態(tài)行為對象 包括生成對象310和刪除對象312。動態(tài)行為數(shù)據(jù)包括內(nèi)容300a、收件人300b、標題300c、 發(fā)件人300d、時間310e、索引號310f。其中,內(nèi)容300a、收件人300b、標題300c、發(fā)件人300d 與郵件31直接關(guān)聯(lián),時間310e、索引號310f與生成對象310直接關(guān)聯(lián)。在進行行為結(jié)果 的評價時,對生成對象310的行為結(jié)果的評價利用內(nèi)容300a、收件人300b、標題300c、發(fā)件 人300d、時間310e、索引號310f,對刪除對象312的行為結(jié)果的評價利用內(nèi)容300a、收件人 300b、標題300c、發(fā)件人300d。動態(tài)實體的動態(tài)行為對象不僅僅限于生成對象和刪除對象, 作為示例,還包括再生對象和接收對象。
40.關(guān)聯(lián)操作實體和靜態(tài)實體,形成操作實體_靜態(tài)實體關(guān)聯(lián)關(guān)系表,其中,每一 個靜態(tài)實體與且僅與一個操作實體相關(guān)聯(lián),操作實體和與其相關(guān)聯(lián)的靜態(tài)實體在操作實 體-靜態(tài)實體關(guān)聯(lián)關(guān)系表中記錄為授權(quán)關(guān)聯(lián)關(guān)系,操作實體和與其不相關(guān)聯(lián)的靜態(tài)實體在 操作實體-靜態(tài)實體關(guān)聯(lián)關(guān)系表中記錄為非授權(quán)關(guān)聯(lián)關(guān)系。50.關(guān)聯(lián)操作實體和動態(tài)實體,形成操作實體_動態(tài)實體關(guān)聯(lián)關(guān)系表,其中,每一 個動態(tài)實體與至少兩個操作實體相關(guān)聯(lián),其中有且僅有一個操作實體與該動態(tài)實體具有授 權(quán)關(guān)聯(lián),操作實體和與其相關(guān)聯(lián)的動態(tài)實體在操作實體-動態(tài)實體關(guān)聯(lián)關(guān)系表中記錄為授 權(quán)關(guān)聯(lián)關(guān)系,操作實體和與其不相關(guān)聯(lián)的動態(tài)實體在操作實體_動態(tài)實體關(guān)聯(lián)關(guān)系表中記 錄為非授權(quán)關(guān)聯(lián)關(guān)系。60.以相同的操作實體、靜態(tài)實體、動態(tài)實體或者行為對象為基礎(chǔ)壓縮合并操作實 體_靜態(tài)實體關(guān)聯(lián)關(guān)系表和操作實體_動態(tài)實體關(guān)聯(lián)關(guān)系表,形成數(shù)據(jù)庫總關(guān)系表。步驟40-60的壓縮過程的一個實例如下首先將實體集映射成為關(guān)系,例如,操作實體為用戶,操作行為數(shù)據(jù)包括索引號、用戶名、密碼、性別、用戶郵箱、用戶 昵稱;動態(tài)實體為郵件,動態(tài)行為數(shù)據(jù)包括索引號、郵件標題、郵件內(nèi)容、發(fā)信人、收信 人、主題文章發(fā)送時間;靜態(tài)實體為文章,靜態(tài)實體數(shù)據(jù)包括索引號、文章標題、文章內(nèi)容、作者的索引號、 發(fā)文時間、所屬討論區(qū)索引號、主題文章索引號、文章閱讀人數(shù)、文章回復(fù)數(shù)、文章對應(yīng)的附 件名、附件的保存名;之后將聯(lián)系集映射為關(guān)系,即將行為對象映射為關(guān)系,操作實體的一個操作行為對向,注冊對象關(guān)聯(lián)的操作行為數(shù)據(jù)包括索引號、用戶 名、密碼、性別、用戶郵箱、用戶昵稱;靜態(tài)實體的一個靜態(tài)行為對象,生成對象的靜態(tài)行為數(shù)據(jù)包括索引號、文章標題、 文章內(nèi)容、發(fā)文時間、所屬討論區(qū)索引號、主題文章索引號、文章對應(yīng)的附件名、附件的保存 名;靜態(tài)實體的另一個靜態(tài)行為對象,刪除對象的靜態(tài)行為數(shù)據(jù)包括所屬討論區(qū)索引 號、主題文章索引號、文章對應(yīng)的附件名、附件的保存名;動態(tài)實體的一個動態(tài)行為對象,生成對象的動態(tài)行為數(shù)據(jù)包括索引號、郵件標題、 郵件內(nèi)容、發(fā)信人、收信人、主題文章發(fā)送時間;動態(tài)實體的另一個動態(tài)行為對象,刪除對象的動態(tài)行為數(shù)據(jù)包括索引號、主題文章發(fā)送時間。 以相同的操作實體、靜態(tài)實體、動態(tài)實體或者行為對象為基礎(chǔ)壓縮合并操作實 體_靜態(tài)實體關(guān)聯(lián)關(guān)系表和操作實體_動態(tài)實體關(guān)聯(lián)關(guān)系表,一般包括三步首先檢查是 否存在冗余的表和可以合并的表;第二步是按照關(guān)系數(shù)據(jù)庫的規(guī)范化理論,檢查每一個表 是否達到優(yōu)化(一般為第三范式);最后對照需求,檢查每一項功能所需的數(shù)據(jù)是否都有相 應(yīng)的數(shù)據(jù)庫表支撐。這樣才可以對數(shù)據(jù)庫的結(jié)構(gòu)是否需要或如何進行優(yōu)化有一個明確的了 解。一般來說,主碼想同的兩個表可以合并。由“一對多”或“多對一”的聯(lián)系集映射的 來的表,其主碼與代表“多”端實體集的表相同,所以,通常由“一對多”或“多對一”的聯(lián)系 集映射的來的表可以合并到代表“多”端實體集的表中去。例如用戶表可以和注冊信息表 合并。但是,對應(yīng)一對多聯(lián)系集的表,并非一定要合并,有時為了某種需要,也可以不合并。 對于由“一對一”的聯(lián)系集轉(zhuǎn)換的來的表,可與對應(yīng)任意一端實體集的表合并。舉例說明,下述的4個表為合并之后得到。表 權(quán)利要求
一種關(guān)系型數(shù)據(jù)庫的數(shù)據(jù)壓縮方法,其特征在于,包括下述步驟定義操作實體、與操作實體相關(guān)的操作行為對象、以及評價操作行為對象的行為結(jié)果的操作行為數(shù)據(jù),其中,操作實體和操作行為對象之間存在一對一的關(guān)系;定義靜態(tài)實體、與靜態(tài)實體相關(guān)的靜態(tài)行為對象、以及評價靜態(tài)行為對象的行為結(jié)果的靜態(tài)行為數(shù)據(jù),其中,靜態(tài)實體和靜態(tài)行為對象之間存在多對一的關(guān)系;定義動態(tài)實體、與動態(tài)實體相關(guān)的動態(tài)行為對象、以及評價動態(tài)行為對象的行為結(jié)果的動態(tài)行為數(shù)據(jù),其中,動態(tài)實體和動態(tài)行為對象之間存在多對一的關(guān)系;關(guān)聯(lián)操作實體和靜態(tài)實體,形成操作實體 靜態(tài)實體關(guān)聯(lián)關(guān)系表,其中,每一個靜態(tài)實體與且僅與一個操作實體相關(guān)聯(lián),操作實體和與其相關(guān)聯(lián)的靜態(tài)實體在操作實體 靜態(tài)實體關(guān)聯(lián)關(guān)系表中記錄為授權(quán)關(guān)聯(lián)關(guān)系,操作實體和與其不相關(guān)聯(lián)的靜態(tài)實體在操作實體 靜態(tài)實體關(guān)聯(lián)關(guān)系表中記錄為非授權(quán)關(guān)聯(lián)關(guān)系;關(guān)聯(lián)操作實體和動態(tài)實體,形成操作實體 動態(tài)實體關(guān)聯(lián)關(guān)系表,其中,每一個動態(tài)實體與至少兩個操作實體相關(guān)聯(lián),其中有且僅有一個操作實體與該動態(tài)實體具有授權(quán)關(guān)聯(lián),操作實體和與其相關(guān)聯(lián)的動態(tài)實體在操作實體 動態(tài)實體關(guān)聯(lián)關(guān)系表中記錄為授權(quán)關(guān)聯(lián)關(guān)系,操作實體和與其不相關(guān)聯(lián)的動態(tài)實體在操作實體 動態(tài)實體關(guān)聯(lián)關(guān)系表中記錄為非授權(quán)關(guān)聯(lián)關(guān)系;以相同的操作實體、靜態(tài)實體、動態(tài)實體或者行為對象為基礎(chǔ)壓縮合并操作實體 靜態(tài)實體關(guān)聯(lián)關(guān)系表和操作實體 動態(tài)實體關(guān)聯(lián)關(guān)系表,形成數(shù)據(jù)庫總關(guān)系表。
2.如權(quán)利要求1所述的關(guān)系型數(shù)據(jù)庫的數(shù)據(jù)壓縮方法,其特征在于,與操作實體相關(guān)的操作行為對象包括登錄對象、注冊對象和退出對象。
3.如權(quán)利要求1所述的關(guān)系型數(shù)據(jù)庫的數(shù)據(jù)壓縮方法,其特征在于,與靜態(tài)實體相關(guān)的靜態(tài)行為對象包括生成對象、刪除對象、修改對象、再生對象和瀏覽 對象。
4.如權(quán)利要求1所述的關(guān)系型數(shù)據(jù)庫的數(shù)據(jù)壓縮方法,其特征在于,與動態(tài)實體相關(guān)的動態(tài)行為對象包括生成對象、刪除對象、再生對象和接收對象。
全文摘要
本發(fā)明揭示了一種關(guān)系型數(shù)據(jù)庫的數(shù)據(jù)壓縮方法,包括定義操作實體、操作行為對象、操作行為數(shù)據(jù);定義靜態(tài)實體、靜態(tài)行為對象、靜態(tài)行為數(shù)據(jù);定義動態(tài)實體、動態(tài)行為對象、動態(tài)行為數(shù)據(jù);關(guān)聯(lián)操作實體和靜態(tài)實體,形成操作實體-靜態(tài)實體關(guān)聯(lián)關(guān)系表;關(guān)聯(lián)操作實體和動態(tài)實體,形成操作實體-動態(tài)實體關(guān)聯(lián)關(guān)系表;以相同的操作實體、靜態(tài)實體、動態(tài)實體或者行為對象為基礎(chǔ)壓縮合并操作實體-靜態(tài)實體關(guān)聯(lián)關(guān)系表和操作實體-動態(tài)實體關(guān)聯(lián)關(guān)系表,形成數(shù)據(jù)庫總關(guān)系表。本發(fā)明的關(guān)系型數(shù)據(jù)庫的數(shù)據(jù)壓縮方法針對網(wǎng)上論壇的特點,對關(guān)系型數(shù)據(jù)庫進行針對性地壓縮,不但有效提高的空間利用率,更加確保了網(wǎng)上論壇的數(shù)據(jù)安全和數(shù)據(jù)訪問速度。
文檔編號G06F17/30GK101989273SQ20091005577
公開日2011年3月23日 申請日期2009年7月31日 優(yōu)先權(quán)日2009年7月31日
發(fā)明者謝雅婷 申請人:上海杉達學(xué)院