本發(fā)明涉及計(jì)算機(jī),具體地涉及一種用于數(shù)據(jù)庫(kù)的任務(wù)處理方法、裝置、設(shè)備、介質(zhì)和程序產(chǎn)品。
背景技術(shù):
1、由于中央處理器的一個(gè)核心可以執(zhí)行至少一條線程,因此利用多核中央處理器能夠?qū)崿F(xiàn)對(duì)于多個(gè)計(jì)算任務(wù)的并行處理。而在對(duì)多個(gè)計(jì)算任務(wù)并行處理時(shí),通常會(huì)存在不足以均分給每條線程進(jìn)行處理的計(jì)算任務(wù),對(duì)于該計(jì)算任務(wù)通常會(huì)通過(guò)固定線程來(lái)對(duì)其進(jìn)行處理。
2、在實(shí)現(xiàn)本發(fā)明構(gòu)思的過(guò)程中,發(fā)現(xiàn)相關(guān)技術(shù)中至少存在如下問(wèn)題:由于在對(duì)不足以均分給每個(gè)線程的計(jì)算任務(wù)進(jìn)行處理時(shí)采用了由固定線程進(jìn)行處理的方式,使得對(duì)于不同場(chǎng)景的任務(wù)處理方式不靈活,并在一些場(chǎng)景中,可能存在任務(wù)處理時(shí)間較長(zhǎng)、任務(wù)處理效率低的問(wèn)題。
技術(shù)實(shí)現(xiàn)思路
1、鑒于上述問(wèn)題,本發(fā)明提供了一種用于數(shù)據(jù)庫(kù)的任務(wù)處理方法、裝置、設(shè)備、介質(zhì)和程序產(chǎn)品。
2、根據(jù)本發(fā)明的一個(gè)方面,提供了一種用于數(shù)據(jù)庫(kù)的任務(wù)處理方法方法,包括:將從多個(gè)待處理任務(wù)中確定的多個(gè)目標(biāo)任務(wù)均分給多個(gè)可用線程,得到針對(duì)多個(gè)目標(biāo)任務(wù)的分配方式,其中,目標(biāo)任務(wù)為由多個(gè)可用線程并行處理的待處理任務(wù);在確定多個(gè)待處理任務(wù)中存在除目標(biāo)任務(wù)之外的剩余任務(wù)的情況下,基于剩余任務(wù)的數(shù)量和可用線程的數(shù)量,將剩余任務(wù)模擬分配給多個(gè)可用線程,得到多個(gè)模擬分配結(jié)果;基于預(yù)設(shè)預(yù)處理時(shí)長(zhǎng)和預(yù)設(shè)任務(wù)處理時(shí)長(zhǎng),確定多個(gè)模擬分配結(jié)果各自的任務(wù)處理耗時(shí);將多個(gè)模擬分配結(jié)果中任務(wù)處理耗時(shí)最短的模擬分配結(jié)果作為針對(duì)剩余任務(wù)的分配方式;基于針對(duì)多個(gè)目標(biāo)任務(wù)的分配方式和針對(duì)剩余任務(wù)的分配方式,得到針對(duì)多個(gè)待處理任務(wù)的分配方式。
3、根據(jù)本發(fā)明的實(shí)施例,剩余任務(wù)為至少一個(gè);多個(gè)模擬分配結(jié)果包括第一模擬分配結(jié)果、第二模擬分配結(jié)果以及第三模擬分配結(jié)果;基于剩余任務(wù)的數(shù)量和可用線程的數(shù)量,將剩余任務(wù)模擬分配給多個(gè)可用線程,得到多個(gè)模擬分配結(jié)果,包括:將至少一個(gè)剩余任務(wù)分別模擬分配至各自的目標(biāo)線程,得到第一模擬分配結(jié)果,其中,剩余任務(wù)與目標(biāo)線程為一一對(duì)應(yīng)的關(guān)系,目標(biāo)線程是從多個(gè)可用線程中確定的;對(duì)于每個(gè)剩余任務(wù),將基于可用線程的數(shù)量對(duì)剩余任務(wù)進(jìn)行切分后得到的多個(gè)第一剩余分片任務(wù),分別模擬分配給各自的可用線程,得到第二模擬分配結(jié)果;響應(yīng)于可用線程的數(shù)量與剩余任務(wù)的數(shù)量成倍數(shù)關(guān)系,將基于倍數(shù)關(guān)系切分后的剩余任務(wù),分別模擬分配給各自的可用線程,得到第三模擬分配結(jié)果。
4、根據(jù)本發(fā)明的實(shí)施例,將至少一個(gè)剩余任務(wù)分別模擬分配至各自的目標(biāo)線程,得到第一模擬分配結(jié)果,包括:基于剩余任務(wù)的數(shù)量,從多個(gè)可用線程中確定目標(biāo)線程,其中,目標(biāo)線程的數(shù)量與剩余任務(wù)的數(shù)量相同;分別為每個(gè)剩余任務(wù)模擬分配一個(gè)目標(biāo)線程,得到第一模擬分配結(jié)果。
5、根據(jù)本發(fā)明的實(shí)施例,將基于可用線程的數(shù)量對(duì)剩余任務(wù)進(jìn)行切分后得到的多個(gè)第一剩余分片任務(wù),分別模擬分配給各自的可用線程,得到第二模擬分配結(jié)果,包括:對(duì)于每個(gè)剩余任務(wù),基于可用線程的數(shù)量對(duì)剩余任務(wù)進(jìn)行切分,得到多個(gè)第一剩余分片任務(wù),其中,第一剩余分片任務(wù)的數(shù)量與可用線程的數(shù)量相等;分別為每個(gè)第一剩余分片任務(wù)模擬分配一個(gè)可用線程,得到第二模擬分配結(jié)果。
6、根據(jù)本發(fā)明的實(shí)施例,將基于倍數(shù)關(guān)系切分后的剩余任務(wù),分別模擬分配給各自的線程,得到第三模擬分配結(jié)果,包括:基于倍數(shù)關(guān)系將每個(gè)剩余任務(wù)進(jìn)行切分,得到至少一個(gè)剩余任務(wù)各自的第二剩余分片任務(wù);分別為每個(gè)第二剩余分片任務(wù)模擬分配一個(gè)可用線程,得到第三模擬分配結(jié)果。
7、根據(jù)本發(fā)明的實(shí)施例,基于預(yù)設(shè)預(yù)處理時(shí)長(zhǎng)和預(yù)設(shè)任務(wù)處理時(shí)長(zhǎng),確定多個(gè)模擬分配結(jié)果各自的任務(wù)處理耗時(shí),包括:對(duì)于每個(gè)模擬分配結(jié)果,基于模擬分配結(jié)果,確定并行次數(shù);基于模擬分配結(jié)果中剩余任務(wù)的任務(wù)分片數(shù)和預(yù)設(shè)任務(wù)處理時(shí)長(zhǎng),得到目標(biāo)任務(wù)處理時(shí)長(zhǎng);基于并行次數(shù)、目標(biāo)任務(wù)處理時(shí)長(zhǎng)和預(yù)設(shè)預(yù)處理時(shí)長(zhǎng),得到模擬分配結(jié)果的任務(wù)處理耗時(shí)。
8、根據(jù)本發(fā)明的實(shí)施例,方法還包括:基于數(shù)據(jù)庫(kù)中多個(gè)待處理數(shù)據(jù)各自的數(shù)據(jù)行數(shù)、待生成數(shù)據(jù)塊的預(yù)設(shè)數(shù)據(jù)行數(shù)、與多個(gè)待處理數(shù)據(jù)各自對(duì)應(yīng)的數(shù)據(jù)索引,確定多個(gè)待生成數(shù)據(jù)塊信息,其中,數(shù)據(jù)索引用于在數(shù)據(jù)庫(kù)中查找待處理數(shù)據(jù);將多個(gè)待生成數(shù)據(jù)塊信息輸入至任務(wù)生成模板中,得到多個(gè)待處理任務(wù)。
9、根據(jù)本發(fā)明的實(shí)施例,方法還包括:基于針對(duì)多個(gè)待處理任務(wù)的分配方式,調(diào)用與多個(gè)待處理任務(wù)各自對(duì)應(yīng)的可用線程對(duì)待處理任務(wù)進(jìn)行處理。
10、本發(fā)明的另一個(gè)方面提供了一種用于數(shù)據(jù)庫(kù)的任務(wù)處理裝置,包括:第一方式確定模塊,用于將從多個(gè)待處理任務(wù)中確定的多個(gè)目標(biāo)任務(wù)均分給多個(gè)可用線程得到針對(duì)多個(gè)目標(biāo)任務(wù)的分配方式,其中,目標(biāo)任務(wù)為由多個(gè)可用線程并行處理的待處理任務(wù),每個(gè)可用線程處理的目標(biāo)任務(wù)的數(shù)量相同;模擬模塊,用于在確定多個(gè)待處理任務(wù)中存在除目標(biāo)任務(wù)之外的剩余任務(wù)的情況下,基于剩余任務(wù)的數(shù)量和可用線程的數(shù)量,將剩余任務(wù)模擬分配給多個(gè)可用線程,得到多個(gè)模擬分配結(jié)果;耗時(shí)確定模塊,用于基于預(yù)設(shè)預(yù)處理時(shí)長(zhǎng)和預(yù)設(shè)任務(wù)處理時(shí)長(zhǎng),確定多個(gè)模擬分配結(jié)果各自的任務(wù)處理耗時(shí);第二方式確定模塊,用于將多個(gè)模擬分配結(jié)果中任務(wù)處理耗時(shí)最短的模擬分配結(jié)果作為針對(duì)剩余任務(wù)的分配方式;第三方式確定模塊,用于基于針對(duì)多個(gè)目標(biāo)任務(wù)的分配方式和針對(duì)剩余任務(wù)的分配方式,得到針對(duì)多個(gè)待處理任務(wù)的分配方式。
11、本發(fā)明的另一個(gè)方面提供了一種電子設(shè)備,包括:一個(gè)或多個(gè)處理器;存儲(chǔ)器,用于存儲(chǔ)一個(gè)或多個(gè)計(jì)算機(jī)程序,其中,上述一個(gè)或多個(gè)處理器執(zhí)行上述一個(gè)或多個(gè)計(jì)算機(jī)程序以實(shí)現(xiàn)上述方法的步驟。
12、本發(fā)明的另一個(gè)方面還提供了一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),其上存儲(chǔ)有計(jì)算機(jī)程序或指令,上述計(jì)算機(jī)程序或指令被處理器執(zhí)行時(shí)實(shí)現(xiàn)上述方法的步驟。
13、本發(fā)明的另一個(gè)方面還提供了一種計(jì)算機(jī)程序產(chǎn)品,包括計(jì)算機(jī)程序或指令,上述計(jì)算機(jī)程序或指令被處理器執(zhí)行時(shí)實(shí)現(xiàn)上述方法的步驟。
14、根據(jù)本發(fā)明的用于數(shù)據(jù)庫(kù)的任務(wù)處理方法,通過(guò)從多個(gè)待處理任務(wù)中確定目標(biāo)任務(wù),并由可用線程處理相同數(shù)量的目標(biāo)任務(wù),以及確定多個(gè)待處理任務(wù)中除目標(biāo)任務(wù)之外的剩余任務(wù),根據(jù)剩余任務(wù)的數(shù)量和可用線程的數(shù)量,采用多種模擬分配方式來(lái)將剩余任務(wù)進(jìn)行模擬分配,得到多個(gè)模擬分配結(jié)果,并通過(guò)量化預(yù)處理時(shí)長(zhǎng)和任務(wù)處理時(shí)長(zhǎng),來(lái)確定每個(gè)模擬分配結(jié)果的任務(wù)處理耗時(shí),從而基于該任務(wù)處理耗時(shí)從多個(gè)模擬分配方式中確定適合當(dāng)前任務(wù)處理場(chǎng)景的剩余任務(wù)分配方式,進(jìn)而得到整體待處理任務(wù)的分配方式。由于采用了將剩余任務(wù)模擬分配給多個(gè)可用線程,并通過(guò)量化每種模擬分配方式的任務(wù)處理耗時(shí),從而對(duì)于不同任務(wù)處理場(chǎng)景皆能夠確定具有針對(duì)性且耗時(shí)最短的剩余任務(wù)分配方式,并通過(guò)將目標(biāo)任務(wù)均分給每個(gè)可用線程的目標(biāo)任務(wù)分配方式和上述剩余任務(wù)分配方式來(lái)得到耗時(shí)最短的整體任務(wù)分配方式,因此,至少部分的解決了相關(guān)技術(shù)中存在的任務(wù)處理方式不靈活導(dǎo)致的任務(wù)處理時(shí)間長(zhǎng)和任務(wù)處理效率低的技術(shù)問(wèn)題,實(shí)現(xiàn)了靈活的處理待處理任務(wù)、縮短任務(wù)處理整體耗時(shí)以及提升任務(wù)處理效率等技術(shù)效果。
1.一種用于數(shù)據(jù)庫(kù)的任務(wù)處理方法,其特征在于,所述方法包括:
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述剩余任務(wù)為至少一個(gè);多個(gè)所述模擬分配結(jié)果包括第一模擬分配結(jié)果、第二模擬分配結(jié)果以及第三模擬分配結(jié)果;
3.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述將至少一個(gè)所述剩余任務(wù)分別模擬分配至各自的目標(biāo)線程,得到所述第一模擬分配結(jié)果,包括:
4.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述將基于所述可用線程的數(shù)量對(duì)所述剩余任務(wù)進(jìn)行切分后得到的多個(gè)第一剩余分片任務(wù),分別模擬分配給各自的可用線程,得到所述第二模擬分配結(jié)果,包括:
5.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述將基于所述倍數(shù)關(guān)系切分后的所述剩余任務(wù),分別模擬分配給各自的可用線程,得到所述第三模擬分配結(jié)果,包括:
6.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述基于預(yù)設(shè)預(yù)處理時(shí)長(zhǎng)和預(yù)設(shè)任務(wù)處理時(shí)長(zhǎng),確定多個(gè)所述模擬分配結(jié)果各自的任務(wù)處理耗時(shí),包括:
7.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述方法還包括:
8.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述方法還包括:
9.一種用于數(shù)據(jù)庫(kù)的任務(wù)處理裝置,其特征在于,所述裝置包括:
10.一種電子設(shè)備,包括: