亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

分布式數(shù)據(jù)庫下全局主鍵生成方法和系統(tǒng)的制作方法

文檔序號:9200371閱讀:476來源:國知局
分布式數(shù)據(jù)庫下全局主鍵生成方法和系統(tǒng)的制作方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及數(shù)據(jù)庫領(lǐng)域,特別涉及一種分布式數(shù)據(jù)庫下全局主鍵生成方法和系統(tǒng)。
【背景技術(shù)】
[0002]水平切分是搭建基于關(guān)系型數(shù)據(jù)庫的分布式數(shù)據(jù)庫集群的關(guān)鍵技術(shù)之一,主要是通過將數(shù)據(jù)庫中數(shù)據(jù)量較大的表拆分為多個結(jié)構(gòu)相同的小表,小表分散存儲在多個物理數(shù)據(jù)庫中,并通過中間層軟件將客戶端對大表的請求路由到多個小表所在的物理數(shù)據(jù)庫中執(zhí)行。由于各個小表分散在多個物理庫中,所以在新增數(shù)據(jù)時無法保證每個小表的主鍵在全局的唯一性,因此當(dāng)數(shù)據(jù)庫實施了水平切分后,需要為分布式數(shù)據(jù)庫提供生成唯一且有序全局主鍵的服務(wù)。
[0003]全局主鍵目前有以下幾種生成方法:
[0004]一,應(yīng)用層自己產(chǎn)生唯一主鍵,這樣會增加應(yīng)用復(fù)雜度,并且數(shù)據(jù)庫的寫入操作必須依賴應(yīng)用。
[0005]二,通過一個節(jié)點提供獨立的主鍵生成服務(wù),一旦該節(jié)點發(fā)生故障,則造成整個系統(tǒng)無法提供主鍵生成服務(wù),因此存在單點故障問題以及性能瓶頸問題。
[0006]三,通過多個節(jié)點提供主鍵生成服務(wù),可能產(chǎn)生主鍵不連續(xù)或順序顛倒問題。例如,采用劃分主鍵段的模式保持主鍵的不重復(fù),A節(jié)點采用1000開頭,B節(jié)點采用2000開頭,這種模式雖然可以確保主鍵不重復(fù),但是可能會導(dǎo)致有些大的主鍵先產(chǎn)生,小的主鍵還未產(chǎn)生,存在主鍵不連續(xù)或順序顛倒等問題,對于索引或排序帶來困擾,不符合數(shù)據(jù)庫的使用規(guī)范。

【發(fā)明內(nèi)容】

[0007]本發(fā)明實施例所要解決的一個技術(shù)問題是:通過多個節(jié)點提供主鍵生成服務(wù)時主鍵的有序和連續(xù)性問題。
[0008]根據(jù)本發(fā)明實施例的一個方面,提出一種分布式數(shù)據(jù)庫下全局主鍵生成方法,包括:主鍵服務(wù)器集群中的任意主鍵服務(wù)器接收到客戶端發(fā)起的主鍵申請請求時,將主鍵申請請求轉(zhuǎn)發(fā)給主鍵服務(wù)器集群中的主主鍵服務(wù)器;主主鍵服務(wù)器對主鍵申請請求進行排序,并將排序結(jié)果依次同步給主鍵服務(wù)器集群中的所有主鍵服務(wù)器;主鍵服務(wù)器集群中的所有主鍵服務(wù)器均響應(yīng)主主鍵服務(wù)器同步的主鍵申請請求,按照相同的主鍵生成規(guī)則生成全局主鍵;主鍵服務(wù)器集群中的任意主鍵服務(wù)器在主主鍵服務(wù)器同步的主鍵申請請求與本主鍵服務(wù)器接收的客戶端發(fā)起的主鍵申請請求一致時,將生成的全局主鍵返回給客戶端。
[0009]在一個實施例中,主鍵服務(wù)器集群中的所有主鍵服務(wù)器預(yù)先設(shè)置有相同的主鍵信息和配置信息;其中,主鍵信息是客戶端在用的最大全局主鍵,配置信息包括面向客戶端的主鍵生成規(guī)則、以及作為主主鍵服務(wù)器時對主鍵申請請求的排序規(guī)則。
[0010]在一個實施例中,主鍵服務(wù)器集群中的所有主鍵服務(wù)器均響應(yīng)主主鍵服務(wù)器同步的主鍵申請請求,按照相同的主鍵生成規(guī)則生成全局主鍵包括:主鍵服務(wù)器集群中的所有主鍵服務(wù)器均響應(yīng)主主鍵服務(wù)器同步的主鍵申請請求,將客戶端在用的最大全局主鍵作為面向客戶端的主鍵生成規(guī)則的輸入,生成相同的全局主鍵。
[0011]在一個實施例中,主主鍵服務(wù)器通過動態(tài)選舉的方式從主鍵服務(wù)器集群中選舉產(chǎn)生,在當(dāng)前主主鍵服務(wù)器宕機時觸發(fā)選舉的操作,被選舉出來的主主鍵服務(wù)器在主鍵服務(wù)器集群中廣播自身的位置信息,所有主鍵服務(wù)器接收到廣播信息后更新本地的主主鍵服務(wù)器的位置信息。
[0012]在一個實施例中,主主鍵服務(wù)器對主鍵申請請求進行排序包括:主主鍵服務(wù)器按照主鍵申請請求的接收時間對多個主鍵服務(wù)器發(fā)來的主鍵申請請求進行排序。
[0013]在一個實施例中,該方法還包括:負載均衡設(shè)備接收客戶端發(fā)起的主鍵申請請求,并將客戶端發(fā)起的主鍵申請請求均衡地路由給主鍵服務(wù)器集群中的主鍵服務(wù)器。
[0014]根據(jù)本發(fā)明實施例的再一個方面,提出一種分布式數(shù)據(jù)庫下全局主鍵生成系統(tǒng),包括:由主鍵服務(wù)器組成的主鍵服務(wù)器集群,該主鍵服務(wù)器集群中有一個主主鍵服務(wù)器;主鍵服務(wù)器包括請求處理模塊、主鍵生成模塊和請求響應(yīng)模塊,請求處理模塊用于在接收到客戶端發(fā)起的主鍵申請請求時,將主鍵申請請求轉(zhuǎn)發(fā)給主主鍵服務(wù)器,主鍵生成模塊用于響應(yīng)主主鍵服務(wù)器同步的主鍵申請請求,按照相同的主鍵生成規(guī)則生成全局主鍵,請求響應(yīng)模塊用于在主主鍵服務(wù)器同步的主鍵申請請求與本主鍵服務(wù)器接收的客戶端發(fā)起的主鍵申請請求一致時,將生成的全局主鍵返回給客戶端;主主鍵服務(wù)器包括請求排序模塊和請求同步模塊,請求排序模塊用于對主鍵申請請求進行排序,請求同步模塊用于將主鍵申請請求的排序結(jié)果依次同步給主鍵服務(wù)器集群中的所有主鍵服務(wù)器。
[0015]在一個實施例中,主鍵服務(wù)器還包括存儲模塊,用于存儲預(yù)先設(shè)置的相同的主鍵信息和配置信息;其中,主鍵信息是客戶端在用的最大全局主鍵,配置信息包括面向客戶端的主鍵生成規(guī)則、以及作為主主鍵服務(wù)器時對主鍵申請請求的排序規(guī)則。
[0016]在一個實施例中,主鍵生成模塊,具體用于響應(yīng)主主鍵服務(wù)器同步的主鍵申請請求,將客戶端在用的最大全局主鍵作為面向客戶端的主鍵生成規(guī)則的輸入,生成相同的全局主鍵。
[0017]在一個實施例中,主主鍵服務(wù)器還包括廣播模塊,用于在主鍵服務(wù)器集群中廣播自身的位置信息;主鍵服務(wù)器還包括位置更新模塊,用于接收到主主鍵服務(wù)器的廣播信息后更新本地的主主鍵服務(wù)器的位置信息。
[0018]在一個實施例中,請求排序模塊,具體用于按照主鍵申請請求的接收時間對多個主鍵服務(wù)器發(fā)來的主鍵申請請求進行排序。
[0019]在一個實施例中,該系統(tǒng)還包括:負載均衡設(shè)備,用于接收客戶端發(fā)起的主鍵申請請求,并將客戶端發(fā)起的主鍵申請請求均衡地路由給主鍵服務(wù)器集群中的主鍵服務(wù)器。
[0020]本發(fā)明實施例構(gòu)建主鍵服務(wù)器集群,由集群中的主主鍵服務(wù)器對多個主鍵申請請求進行排序,并同步給集群中的其他主鍵服務(wù)器,主鍵生成分由集群內(nèi)的多個主鍵服務(wù)器執(zhí)行,各主鍵服務(wù)器基于同步的主鍵申請請求生成全局主鍵,保持了主鍵的強一致性,既保證全局主鍵的有序和連續(xù)性,又可以避免主鍵生成的單點故障和性能瓶頸問題。
[0021]通過以下參照附圖對本發(fā)明的示例性實施例的詳細描述,本發(fā)明的其它特征及其優(yōu)點將會變得清楚。
【附圖說明】
[0022]為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動性的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
[0023]圖1為本發(fā)明全局主鍵應(yīng)用系統(tǒng)的一個實施例的不意圖。
[0024]圖2為本發(fā)明全局主鍵生成系統(tǒng)一個實施例的結(jié)構(gòu)示意圖。
[0025]圖3為本發(fā)明全局主鍵生成系統(tǒng)再一個實施例的結(jié)構(gòu)示意圖。
[0026]圖4為本發(fā)明分布式數(shù)據(jù)庫下全局主鍵生成方法一個實施例的流程示意圖。
[0027]圖5為本發(fā)明分布式數(shù)據(jù)庫下全局主鍵生成方法一個應(yīng)用示例的流程示意圖。
當(dāng)前第1頁1 2 3 4 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1