新四季網

一種資料庫集群的數據節點擴展方法及裝置與流程

2023-09-20 21:58:45 3


本發明涉及數據節點擴展技術領域,更具體地說,涉及一種Postgres-XL資料庫集群的數據節點擴展方法及裝置。



背景技術:

Postgres-XL是一個基於PostgreSQL資料庫的橫向擴展開源SQL資料庫集群,具有足夠的靈活性來處理不同的資料庫工作負載。在使用基於Postgres-XL資料庫集群時,若想增加數據節點,目前只能在判定待添加的節點的信息正確時,通過手動執行add_datanode接口添加節點,每次只能增加一個數據節點,也就是說,原生集群是不支持批量增加數據節點的,只能通過命令重複多次的添加,不僅添加速度慢,還增加人工成本。

因此,如何實現批量的添加數據節點,減少人工成本,是本領域技術人員需要解決的問題。



技術實現要素:

本發明的目的在於提供一種Postgres-XL資料庫集群的數據節點擴展方法及裝置,以實現實現批量的添加數據節點,減少人工成本。

為實現上述目的,本發明實施例提供了如下技術方案:

一種Postgres-XL資料庫集群的數據節點擴展方法,包括:

獲取待添加的多個數據節點的節點信息;

將每個數據節點的節點信息,按照信息類型分別存入對應的容器;

統計待添加的數據節點的總節點數量,根據所述總結點數量生成對應的節點添加指令,通過所述節點添加指令多次調用add_datanode接口進行節點的添加。

其中,所述將每個數據節點的節點信息,按照信息類型分別存入對應的容器,包括:

將每個數據節點的節點地址信息存入節點地址容器,將每個數據節點的埠號信息存入埠號容器,將每個數據節點的節點名稱信息存入節點名稱容器;其中,同一數據節點的節點地址信息、埠號信息、節點名稱信息在對應容器的下標相同。

其中,所述根據所述總結點數量生成對應的節點添加指令,包括:

若所述總結點數量為N,則生成的節點添加指令為:執行N次add_datanode函數,從而實現添加N個數據節點;其中,N為正整數。

其中,所述通過所述節點添加指令多次調用add_datanode接口進行節點的添加,包括:

從各個容器中獲取與待添加的目標數據節點對應的節點信息;

判斷與目標數據節點對應的節點信息是否正確;

若是,則調用add_datanode接口添加目標節點,選定下一個待添加的目標數據節點,並繼續執行所述從各個容器中獲取與待添加的目標數據節點對應的節點信息的步驟;

若否,則發出節點信息錯誤提示,選定下一個待添加的目標數據節點,並繼續執行所述從各個容器中獲取與待添加的目標數據節點對應的節點信息的步驟。

一種Postgres-XL資料庫集群的數據節點擴展裝置,包括:

獲取模塊,用於獲取待添加的多個數據節點的節點信息;

存儲模塊,用於將每個數據節點的節點信息,按照信息類型分別存入對應的容器;

指令生成模塊,用於統計待添加的數據節點的總節點數量,根據所述總結點數量生成對應的節點添加指令;

節點添加模塊,用於通過所述節點添加指令多次調用add_datanode接口進行節點的添加。

其中,所述存儲模塊將每個數據節點的節點地址信息存入節點地址容器,將每個數據節點的埠號信息存入埠號容器,將每個數據節點的節點名稱信息存入節點名稱容器;其中,同一數據節點的節點地址信息、埠號信息、節點名稱信息在對應容器的下標相同。

其中,若所述總結點數量為N,則所述指令生成模塊生成的節點添加指令為:執行N次add_datanode函數,從而實現添加N個數據節點;其中,N為正整數。

其中,所述節點添加模塊包括:

節點信息獲取單元,用於從各個容器中獲取與待添加的目標數據節點對應的節點信息;

判斷單元,用於判斷與目標數據節點對應的節點信息是否正確;

第一添加單元,用於判定與目標數據節點對應的節點信息正確時,調用add_datanode接口添加目標節點,選定下一個待添加的目標數據節點,並觸發所述節點信息獲取單元;

第二添加單元,用於判定與目標數據節點對應的節點信息不正確時,發出節點信息錯誤提示,選定下一個待添加的目標數據節點,並觸發所述節點信息獲取單元。

通過以上方案可知,本發明實施例提供的一種Postgres-XL資料庫集群的數據節點擴展方法,包括:獲取待添加的多個數據節點的節點信息;將每個數據節點的節點信息,按照信息類型分別存入對應的容器;統計待添加的數據節點的總節點數量,根據所述總結點數量生成對應的節點添加指令,通過所述節點添加指令多次調用add_datanode接口進行節點的添加;

可見,在本方案中,用戶將待添加的多個數據節點的節點信息統一添加後,便可根據總節點數量生成節點添加指令,根據該節點添加指令便可批量添加數據節點,實現了在數據節點擴展時通過執行一次命令,便可使集群自動增加節點,大大減少了人工成本;本發明還公開了一種Postgres-XL資料庫集群的數據節點擴展裝置,同樣能實現上述技術效果。

附圖說明

為了更清楚地說明本發明實施例或現有技術中的技術方案,下面將對實施例或現有技術描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發明的一些實施例,對於本領域普通技術人員來講,在不付出創造性勞動的前提下,還可以根據這些附圖獲得其他的附圖。

圖1為本發明實施例公開的一種Postgres-XL資料庫集群的數據節點擴展方法流程示意圖;

圖2為現有技術中Postgres-XL資料庫集群的數據節點擴展方法;

圖3為本發明實施例公開的一種具體的Postgres-XL資料庫集群的數據節點擴展方法流程示意圖;

圖4為本發明實施例公開的一種Postgres-XL資料庫集群的數據節點擴展裝置結構示意圖。

具體實施方式

下面將結合本發明實施例中的附圖,對本發明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發明一部分實施例,而不是全部的實施例。基於本發明中的實施例,本領域普通技術人員在沒有作出創造性勞動前提下所獲得的所有其他實施例,都屬於本發明保護的範圍。

本發明實施例公開了一種Postgres-XL資料庫集群的數據節點擴展方法及裝置,以實現實現批量的添加數據節點,減少人工成本。

參見圖1,本發明實施例提供的一種Postgres-XL資料庫集群的數據節點擴展方法,包括:

S101、獲取待添加的多個數據節點的節點信息;

具體的,參見圖2,為本實施例提供的現有技術中的數據節點擴展方法,在添加節點時,只能通過手動執行add_datanode接口,並且該接口只支持一次增加一個數據節點。因此,參見圖3,在本方案中,通過將想要增加數據節點的信息,先儲存在一個臨時函數中,該臨時函數分析節點信息後,統計出要增加的節點個數,例如節點個數為n個,則執行n次add_datanode函數,從而增加n個節點,實現了一條命令增加多個節點的功能。

S102、將每個數據節點的節點信息,按照信息類型分別存入對應的容器;

其中,所述將每個數據節點的節點信息,按照信息類型分別存入對應的容器,包括:

將每個數據節點的節點地址信息存入節點地址容器,將每個數據節點的埠號信息存入埠號容器,將每個數據節點的節點名稱信息存入節點名稱容器;其中,同一數據節點的節點地址信息、埠號信息、節點名稱信息在對應容器的下標相同。

需要說明的是,在原生集群的算法中,通過add_datanode接口增加數據節點時,需要傳入節點的信息,例如節點地址,埠號等,從而通過這些節點的信息自動執行增加數據節點步驟。在此基礎上,在本實施例中,加了信息統計的函數,將每次從客戶端輸入的節點信息,分類存儲在不同的容器中,例如節點地址容器、埠號容器、節點名稱容器等,每個容器中節點信息的下標即為要增加數據節點的編號與當前已存在數據節點編號最大值的偏移量,這樣就可以實現對數據節點的自動添加。

S103、統計待添加的數據節點的總節點數量,根據所述總結點數量生成對應的節點添加指令,通過所述節點添加指令多次調用add_datanode接口進行節點的添加。

其中,所述根據所述總結點數量生成對應的節點添加指令,包括:

若所述總結點數量為N,則生成的節點添加指令為:執行N次add_datanode函數,從而實現添加N個數據節點;其中,N為正整數。

其中,所述通過所述節點添加指令多次調用add_datanode接口進行節點的添加,包括:

從各個容器中獲取與待添加的目標數據節點對應的節點信息;

判斷與目標數據節點對應的節點信息是否正確;

若是,則調用add_datanode接口添加目標節點,選定下一個待添加的目標數據節點,並繼續執行所述從各個容器中獲取與待添加的目標數據節點對應的節點信息的步驟;

若否,則發出節點信息錯誤提示,選定下一個待添加的目標數據節點,並繼續執行所述從各個容器中獲取與待添加的目標數據節點對應的節點信息的步驟。

具體的,在本實施例統計出總結點數量N後,則生成對應的節點添加指令,通過從不同的容器中獲取節點信息,判斷該信息不為空且正確後,調用add_datanode接口,從而實現增加數據節點,並且在接收到上一個節點增加完畢的消息後,會繼續執行下一次調用,對下一個數據節點進行添加,直至獲取的節點信息為空為止,從而通過這種方法,達到了在集群中批量增加數據節點的目的。

需要說明的是,本實施例中的Postgres-XL資料庫集群的數據節點擴展方式,主要針對的是:集群在運行過程中,如果需要增加數據節點,進行集群的擴容,原生集群是不支持批量增加的,只能通過命令重複多次,每次增加一個數據節點。而在本實施例中,通過對擴展模塊核心算法的二次開發,實現了在擴展時可以定製增加節點的數量,執行一次命令後,集群自動增加節點,大大減少了人工成本。

下面對本發明實施例提供的數據節點擴展裝置進行介紹,下文描述的數據節點擴展裝置與上文描述的數據節點擴展方法可以相互參照。

參見圖4,本發明實施例提供的一種Postgres-XL資料庫集群的數據節點擴展裝置,包括:

獲取模塊100,用於獲取待添加的多個數據節點的節點信息;

存儲模塊200,用於將每個數據節點的節點信息,按照信息類型分別存入對應的容器;

指令生成模塊300,用於統計待添加的數據節點的總節點數量,根據所述總結點數量生成對應的節點添加指令;

節點添加模塊400,用於通過所述節點添加指令多次調用add_datanode接口進行節點的添加。

其中,所述存儲模塊將每個數據節點的節點地址信息存入節點地址容器,將每個數據節點的埠號信息存入埠號容器,將每個數據節點的節點名稱信息存入節點名稱容器;其中,同一數據節點的節點地址信息、埠號信息、節點名稱信息在對應容器的下標相同。

其中,若所述總結點數量為N,則所述指令生成模塊生成的節點添加指令為:執行N次add_datanode函數,從而實現添加N個數據節點;其中,N為正整數。

其中,所述節點添加模塊包括:

節點信息獲取單元,用於從各個容器中獲取與待添加的目標數據節點對應的節點信息;

判斷單元,用於判斷與目標數據節點對應的節點信息是否正確;

第一添加單元,用於判定與目標數據節點對應的節點信息正確時,調用add_datanode接口添加目標節點,選定下一個待添加的目標數據節點,並觸發所述節點信息獲取單元;

第二添加單元,用於判定與目標數據節點對應的節點信息不正確時,發出節點信息錯誤提示,選定下一個待添加的目標數據節點,並觸發所述節點信息獲取單元。

本發明實施例提供的一種Postgres-XL資料庫集群的數據節點擴展方法,包括:獲取待添加的多個數據節點的節點信息;將每個數據節點的節點信息,按照信息類型分別存入對應的容器;統計待添加的數據節點的總節點數量,根據所述總結點數量生成對應的節點添加指令,通過所述節點添加指令多次調用add_datanode接口進行節點的添加;

可見,在本方案中,用戶將待添加的多個數據節點的節點信息統一添加後,便可根據總節點數量生成節點添加指令,根據該節點添加指令便可批量添加數據節點,實現了在數據節點擴展時通過執行一次命令,便可使集群自動增加節點,大大減少了人工成本;本發明還公開了一種Postgres-XL資料庫集群的數據節點擴展裝置,同樣能實現上述技術效果。

本說明書中各個實施例採用遞進的方式描述,每個實施例重點說明的都是與其他實施例的不同之處,各個實施例之間相同相似部分互相參見即可。

對所公開的實施例的上述說明,使本領域專業技術人員能夠實現或使用本發明。對這些實施例的多種修改對本領域的專業技術人員來說將是顯而易見的,本文中所定義的一般原理可以在不脫離本發明的精神或範圍的情況下,在其它實施例中實現。因此,本發明將不會被限制於本文所示的這些實施例,而是要符合與本文所公開的原理和新穎特點相一致的最寬的範圍。

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀