本發(fā)明涉及分片部署,尤其涉及一種部署分片數的動態(tài)調整方法及裝置。
背景技術:
1、在mpp分布式系統中,dba部署mpp集群時,為了操作簡便,通常會采用單分片的部署方式,也就是一個計算節(jié)點一個主分片,在數據量比較小或者服務器內存很大、并發(fā)數很小的情況下,這種部署方式并不會引起明顯的性能異常;但是當大數據量的表做關聯查詢、聚合查詢時,mpp集群會將主分片的數據全部放入內存,并按cpu核數或者線程數進行切分,當主分片數據量很大,切分的時間就會很長,另外,當因數據量太大,內存放不下的時候,就會產生數據落盤,而一旦涉及到磁盤讀寫,磁盤讀寫性能和內存讀寫性能差距很大,就會很明顯的影響查詢性能,這也是單分片部署的弊端。
技術實現思路
1、本發(fā)明旨在至少解決相關技術中存在的技術問題之一。為此,本發(fā)明提供一種部署分片數的動態(tài)調整方法及裝置。
2、本發(fā)明提供一種部署分片數的動態(tài)調整方法,包括:
3、s1:獲取集群中的哈希緩存區(qū)大小,并根據磁盤監(jiān)控數據獲取參與計算的數據信息;
4、s2:根據所述哈希緩存區(qū)大小及所述數據信息計算獲得最佳部署分片數;
5、s3:根據所述最佳部署分片數動態(tài)調整部署分片數。
6、根據本發(fā)明提供的一種部署分片數的動態(tài)調整方法,步驟s1中具體包括:
7、當所述磁盤監(jiān)控數據內不存在sql歷史數據時,采集第一數據信息;
8、當所述磁盤監(jiān)控數據內存在sql歷史數據時,采集第二數據信息。
9、根據本發(fā)明提供的一種部署分片數的動態(tài)調整方法,所述第一數據信息包括:
10、參與計算的表的總數據行數、最大列寬、列基數值;
11、所述第二數據信息包括:
12、當前部署分片數、落盤數據大小。
13、根據本發(fā)明提供的一種部署分片數的動態(tài)調整方法,步驟s2具體包括:
14、當所述數據信息為所述第一數據信息時,所述最佳部署分片數為第一最佳部署分片數;
15、當所述數據信息為所述第二數據信息時,所述最佳部署分片數為第二最佳部署分片數。
16、根據本發(fā)明提供的一種部署分片數的動態(tài)調整方法,所述第一最佳部署分片數的表達式為:
17、
18、其中,為第一最佳部署分片數,為參與計算的列基數值,為參與計算的表的總數據行數,為哈希緩沖區(qū)大小,為參與計算的數據列的最大列寬;
19、所述第二最佳部署分片數的表達式為:
20、
21、其中,為第二最佳部署分片數,為落盤數據大小,為當前部署分片數。
22、根據本發(fā)明提供的一種部署分片數的動態(tài)調整方法,步驟s3具體包括:
23、當需要調整部署分片數時,根據所述最佳部署分片數動態(tài)調整部署分片數;
24、當需要維持部署分片數時,調整數據信息以進行部署分片數維持。
25、根據本發(fā)明提供的一種部署分片數的動態(tài)調整方法,所述根據所述最佳部署分片數動態(tài)調整部署分片數的步驟具體包括:
26、當所述數據信息中的任一數據信息值變化時,計算獲得變化后的最佳部署分片數,將變化后的最佳部署分片數作為動態(tài)調整后的部署分片數。
27、根據本發(fā)明提供的一種部署分片數的動態(tài)調整方法,所述調整數據信息以進行部署分片數維持的步驟具體包括:
28、當所述總數據行數增加,其它數據信息不變,需要維持部署分片數時,增加哈希緩存區(qū)大??;
29、當所述最大列寬增加,其它數據信息不變,需要維持部署分片數時,增加哈希緩存區(qū)大小。
30、根據本發(fā)明提供的一種部署分片數的動態(tài)調整方法,當所述哈希緩存區(qū)大小無法增加時,動態(tài)調整后的部署分片數為所述最佳部署分片數。
31、本發(fā)明還提供一種部署分片數的動態(tài)調整裝置,用以執(zhí)行如以上任一項所述的一種部署分片數的動態(tài)調整方法,包括:
32、采集模塊:用于獲取集群中的哈希緩存區(qū)大小,并根據磁盤監(jiān)控數據獲取參與計算的數據信息;
33、計算模塊:用于根據所述采集模塊采集獲得的所述哈希緩存區(qū)大小及所述數據信息計算獲得最佳部署分片數;
34、調整模塊:用于根據所述計算模塊計算獲得的最佳部署分片數動態(tài)調整部署分片數。
35、本發(fā)明提供一種部署分片數的動態(tài)調整方法及裝置,最大程度的使得數據在內存中計算,根據磁盤數據中是否存在sql運行數據,及落盤數據的大小,通過不同方式計算最佳的部署分片數,后續(xù)通過計算獲得的最佳部署分片數,根據是否要調整分片數需求,進行相應的部署分片數調整或者哈希緩沖區(qū)的調整,能夠最大限度的降低磁盤對性能的影響,解決了當數據量大,內存小,并發(fā)高,性能下降的問題,總體來講本發(fā)明能夠根據mpp特點,自動輸出最佳部署的分片數,將磁盤對性能的影響降低到最小,使用戶業(yè)務更快速完成,避免因磁盤問題造成的性能下降,提高業(yè)務執(zhí)行的性能。
36、本發(fā)明的附加方面和優(yōu)點將在下面的描述中部分給出,部分將從下面的描述中變得明顯,或通過本發(fā)明的實踐了解到。
1.一種部署分片數的動態(tài)調整方法,其特征在于,包括:
2.根據權利要求1所述的一種部署分片數的動態(tài)調整方法,其特征在于,步驟s1中具體包括:
3.根據權利要求2所述的一種部署分片數的動態(tài)調整方法,其特征在于,所述第一數據信息包括:
4.根據權利要求2所述的一種部署分片數的動態(tài)調整方法,其特征在于,步驟s2具體包括:
5.根據權利要求4所述的一種部署分片數的動態(tài)調整方法,其特征在于,所述第一最佳部署分片數的表達式為:
6.根據權利要求3所述的一種部署分片數的動態(tài)調整方法,其特征在于,步驟s3具體包括:
7.根據權利要求6所述的一種部署分片數的動態(tài)調整方法,其特征在于,所述根據所述最佳部署分片數動態(tài)調整部署分片數的步驟具體包括:
8.根據權利要求6所述的一種部署分片數的動態(tài)調整方法,其特征在于,所述調整數據信息以進行部署分片數維持的步驟具體包括:
9.根據權利要求7所述的一種部署分片數的動態(tài)調整方法,其特征在于,當所述哈希緩存區(qū)大小無法增加時,動態(tài)調整后的部署分片數為所述最佳部署分片數。
10.一種部署分片數的動態(tài)調整裝置,用以執(zhí)行如權利要求1-9任一項所述的一種部署分片數的動態(tài)調整方法,其特征在于,包括: