本發明涉及計算機,尤其涉及數據庫,更具體地,涉及一種基于數據庫的資源分配方法及裝置。
背景技術:
1、隨著云計算技術的日益成熟,對于多租戶的數據庫系統,其資源利用率和運維效率均顯著提升。在多租戶的數據庫系統中,可以對每個租戶的可用資源進行管理,使得每個租戶可以共享數據庫系統的中央處理器、存儲器資源或磁盤輸入和輸出資源。
2、然而,在多個租戶同時執行作業時,由于在先登錄數據庫系統的部分租戶進行作業占用了過多的資源空間,使得在后登錄的其他租戶被擠占部分資源空間,從而導致在后登錄的其他租戶執行作業耗時過長。
技術實現思路
1、有鑒于此,本發明提供了一種基于數據庫的資源分配方法及裝置。
2、本發明的一個方面提供了一種基于數據庫的資源分配方法,包括:響應于來自目標租戶的任務處理請求,獲取上述目標租戶的資源占用量和數據庫集群空閑容量;在上述目標租戶的資源占用量大于上述數據庫集群空閑容量的情況下,從正在執行的多個任務線程中確定至少一個待中斷任務線程;中斷上述至少一個待中斷任務線程,得到更新后的數據庫集群空閑容量;在上述目標租戶的資源占用量小于上述更新后的數據庫集群空閑容量的情況下,基于上述更新后的數據庫集群空閑容量,為上述任務處理請求分配資源,以生成用于處理上述任務處理請求的任務線程。
3、本發明的另一個方面提供了一種基于數據庫的資源分配裝置,包括:獲取模塊,用于響應于來自目標租戶的任務處理請求,獲取上述目標租戶的資源占用量和數據庫集群空閑容量;確定模塊,用于在上述目標租戶的資源占用量大于上述數據庫集群空閑容量的情況下,從正在執行的多個任務線程中確定至少一個待中斷任務線程;中斷模塊,中斷上述至少一個待中斷任務線程,得到更新后的數據庫集群空閑容量;資源分配模塊,在上述目標租戶的資源占用量小于上述更新后的數據庫集群空閑容量的情況下,基于上述更新后的數據庫集群空閑容量,為上述任務處理請求分配資源,以生成用于處理上述任務處理請求的任務線程。
4、本發明的另一方面提供了一種電子設備,包括:一個或多個處理器;存儲器,用于存儲一個或多個計算機程序,其中,上述一個或多個處理器執行上述一個或多個計算機程序以實現上述方法的步驟。
5、本發明的另一方面提供了一種計算機可讀存儲介質,其上存儲有計算機程序或指令,上述計算機程序或指令被處理器執行時實現上述方法的步驟。
6、本發明的另一方面提供了一種計算機程序產品,包括計算機程序或指令,上述計算機程序或指令被處理器執行時實現上述方法的步驟。
7、根據本發明的實施例,通過比較目標租戶的資源占用量和當前數據庫集群空閑容量,以確定是否需要從當前正在執行的任務線程中確定待中斷任務線程,在與待中斷任務線程相對應的目標其他租戶的資源占用量大于預定資源占用量的情況下,通過中斷該待中斷任務線程來釋放目標其他租戶超額占用的資源量,為目標租戶分配資源以處理目標租戶的任務處理請求,從而在提高了多租戶資源分配效率的同時保證了資源分配的執行公平性。
1.一種基于數據庫的資源分配方法,其特征在于,所述方法包括:
2.根據權利要求1所述的方法,其特征在于,所述在所述目標租戶的資源占用量大于所述數據庫集群空閑容量的情況下,從正在執行的多個任務線程中確定至少一個待中斷任務線程包括:
3.根據權利要求2所述的方法,其特征在于,所述在所述目標其他租戶的資源占用量大于所述目標其他租戶的預定資源占用量的情況下,將所述目標其他租戶正在執行的多個任務線程中的至少一個任務線程確定為所述待中斷任務線程包括:
4.根據權利要求1所述的方法,其特征在于,所述方法還包括:
5.根據權利要求4所述的方法,其特征在于,所述方法還包括:
6.根據權利要求5所述的方法,其特征在于,所述基于所述歷史資源占用信息,確定所述預定資源占用量包括:
7.根據權利要求1所述的方法,其特征在于,所述方法還包括:
8.根據權利要求1所述的方法,其特征在于,所述中斷所述至少一個待中斷任務線程,得到更新后的數據庫集群空閑容量包括:
9.根據權利要求1所述的方法,其特征在于,所述響應于來自目標租戶的任務處理請求,獲取所述目標租戶的資源占用量和數據庫集群空閑容量包括:
10.一種基于數據庫的資源分配裝置,其特征在于,所述裝置包括: