本技術(shù)涉及數(shù)據(jù)處理領(lǐng)域,具體涉及一種分布式系統(tǒng)唯一標(biāo)記的實(shí)現(xiàn)方法及裝置。
背景技術(shù):
1、目前主流的分布式系統(tǒng)唯一標(biāo)記是通過雪花算法或uuid產(chǎn)生的id來實(shí)現(xiàn)。雪花算法產(chǎn)生的是long類型的64位整型,而uuid產(chǎn)生的是128位的string類型。這兩種技術(shù)在軟件開發(fā)項(xiàng)目中得到了廣泛應(yīng)用,并且已經(jīng)相當(dāng)成熟。然而,它們也存在一定的局限性。
2、在某些業(yè)務(wù)場景中,可能并不需要如此長的位數(shù)來表示唯一標(biāo)識。雪花算法和uuid生成的id雖然具有唯一性,但過長的位數(shù)在存儲(chǔ)和傳輸時(shí)會(huì)占用較多的資源,對于某些對性能要求較高的分布式系統(tǒng)來說,這可能會(huì)成為一個(gè)不利因素。此外,隨著業(yè)務(wù)的發(fā)展和數(shù)據(jù)量的增加,如何更有效地管理這些唯一標(biāo)識也成為了一個(gè)需要解決的問題。
3、為了解決這些問題,亟需一種更加靈活且高效的數(shù)據(jù)唯一標(biāo)識實(shí)現(xiàn)方法,以適應(yīng)不同業(yè)務(wù)場景的需求。
技術(shù)實(shí)現(xiàn)思路
1、針對現(xiàn)有技術(shù)中的問題,本技術(shù)提供一種分布式系統(tǒng)唯一標(biāo)記的實(shí)現(xiàn)方法及裝置,能夠提高分布式系統(tǒng)唯一標(biāo)記的使用效率和靈活性。
2、為了解決上述問題中的至少一個(gè),本技術(shù)提供以下技術(shù)方案:
3、第一方面,本技術(shù)提供一種分布式系統(tǒng)唯一標(biāo)記的實(shí)現(xiàn)方法,包括:
4、收集歷史業(yè)務(wù)數(shù)據(jù),根據(jù)滑動(dòng)窗口算法在預(yù)設(shè)時(shí)間步長內(nèi)對所述歷史業(yè)務(wù)數(shù)據(jù)進(jìn)行特征提取操作,確定對應(yīng)的時(shí)間特征和并發(fā)量特征,根據(jù)所述時(shí)間特征和所述并發(fā)量特征進(jìn)行特征矩陣和目標(biāo)變量構(gòu)建操作,確定對應(yīng)的歷史業(yè)務(wù)特征,將所述歷史業(yè)務(wù)特征輸入預(yù)設(shè)時(shí)間序列模型進(jìn)行模型訓(xùn)練,確定對應(yīng)的并發(fā)預(yù)測模型,根據(jù)所述并發(fā)預(yù)測模型對預(yù)設(shè)業(yè)務(wù)性質(zhì)進(jìn)行預(yù)測,確定對應(yīng)的實(shí)時(shí)業(yè)務(wù)并發(fā)量,其中,所述歷史業(yè)務(wù)數(shù)據(jù)包括時(shí)間戳、業(yè)務(wù)類型以及并發(fā)量;
5、對所述業(yè)務(wù)性質(zhì)進(jìn)行時(shí)間分析操作,確定對應(yīng)的業(yè)務(wù)時(shí)間跨度和業(yè)務(wù)時(shí)間粒度,根據(jù)所述業(yè)務(wù)時(shí)間跨度和所述業(yè)務(wù)時(shí)間粒度進(jìn)行時(shí)間編碼生成操作,確定對應(yīng)的業(yè)務(wù)時(shí)間編碼,對所述業(yè)務(wù)性質(zhì)進(jìn)行種類數(shù)量分析操作,根據(jù)經(jīng)過所述種類數(shù)量分析操作后得到的業(yè)務(wù)種類數(shù)量進(jìn)行業(yè)務(wù)編號,確定對應(yīng)的業(yè)務(wù)標(biāo)記編碼,根據(jù)所述實(shí)時(shí)業(yè)務(wù)并發(fā)量和預(yù)設(shè)全局自增算法確定對應(yīng)的業(yè)務(wù)序列編碼,其中,所述業(yè)務(wù)時(shí)間編碼包括時(shí)間序列或時(shí)間戳;
6、根據(jù)所述業(yè)務(wù)時(shí)間編碼、所述業(yè)務(wù)標(biāo)記編碼以及所述業(yè)務(wù)序列編碼進(jìn)行字符串拼接操作,確定對應(yīng)的分布式系統(tǒng)唯一標(biāo)記。
7、進(jìn)一步地,在所述根據(jù)滑動(dòng)窗口算法在預(yù)設(shè)時(shí)間步長內(nèi)對所述歷史業(yè)務(wù)數(shù)據(jù)進(jìn)行特征提取操作,確定對應(yīng)的時(shí)間特征和并發(fā)量特征之前,包括:
8、對所述歷史業(yè)務(wù)數(shù)據(jù)中的時(shí)間戳進(jìn)行時(shí)間粒度統(tǒng)一操作,確定對應(yīng)的相同量級時(shí)間數(shù)據(jù),對所述歷史業(yè)務(wù)數(shù)據(jù)中的并發(fā)量進(jìn)行歸一化操作,確定對應(yīng)的統(tǒng)一并發(fā)量數(shù)據(jù);
9、根據(jù)所述相同量級時(shí)間數(shù)據(jù)和所述統(tǒng)一并發(fā)量數(shù)據(jù)對所述歷史業(yè)務(wù)數(shù)據(jù)進(jìn)行標(biāo)準(zhǔn)化操作,確定對應(yīng)的標(biāo)準(zhǔn)化后的歷史業(yè)務(wù)數(shù)據(jù)。
10、進(jìn)一步地,所述根據(jù)滑動(dòng)窗口算法在預(yù)設(shè)時(shí)間步長內(nèi)對所述歷史業(yè)務(wù)數(shù)據(jù)進(jìn)行特征提取操作,確定對應(yīng)的時(shí)間特征和并發(fā)量特征,包括:
11、根據(jù)預(yù)設(shè)業(yè)務(wù)類型對所述歷史業(yè)務(wù)數(shù)據(jù)中的并發(fā)量進(jìn)行分類統(tǒng)計(jì),分別確定與所述業(yè)務(wù)類型對應(yīng)的業(yè)務(wù)并發(fā)量數(shù)據(jù);
12、根據(jù)滑動(dòng)窗口算法在預(yù)設(shè)時(shí)間步長內(nèi)對所述業(yè)務(wù)并發(fā)量數(shù)據(jù)進(jìn)行特征提取操作,確定對應(yīng)的時(shí)間特征和并發(fā)量特征。
13、進(jìn)一步地,所述根據(jù)所述業(yè)務(wù)時(shí)間跨度和所述業(yè)務(wù)時(shí)間粒度進(jìn)行時(shí)間編碼生成操作,確定對應(yīng)的業(yè)務(wù)時(shí)間編碼,包括:
14、根據(jù)所述業(yè)務(wù)時(shí)間跨度和所述業(yè)務(wù)時(shí)間粒度進(jìn)行時(shí)間序列生成操作,確定對應(yīng)的時(shí)間序列,根據(jù)所述時(shí)間序列進(jìn)行時(shí)間戳轉(zhuǎn)換操作,確定對應(yīng)的時(shí)間戳;
15、根據(jù)所述時(shí)間序列和所述時(shí)間戳進(jìn)行編碼判斷操作,確定對應(yīng)的業(yè)務(wù)時(shí)間編碼。
16、進(jìn)一步地,所述根據(jù)所述時(shí)間序列和所述時(shí)間戳進(jìn)行編碼判斷操作,確定對應(yīng)的業(yè)務(wù)時(shí)間編碼,包括;
17、判斷所述時(shí)間序列的占用位數(shù)是否短于所述時(shí)間編碼的占用位數(shù);
18、若短,則根據(jù)所述時(shí)間序列確定對應(yīng)的業(yè)務(wù)時(shí)間編碼,若長,則根據(jù)所述時(shí)間戳確定對應(yīng)的業(yè)務(wù)時(shí)間編碼。
19、進(jìn)一步地,所述根據(jù)所述實(shí)時(shí)業(yè)務(wù)并發(fā)量和預(yù)設(shè)全局自增算法確定對應(yīng)的業(yè)務(wù)序列編碼,包括:
20、根據(jù)預(yù)設(shè)全局自增算法確定對應(yīng)的全局唯一的序列號;
21、根據(jù)所述全局唯一序列號對所述實(shí)時(shí)業(yè)務(wù)并發(fā)量進(jìn)行取余求值操作,確定對應(yīng)的業(yè)務(wù)序列編碼。
22、進(jìn)一步地,所述根據(jù)所述業(yè)務(wù)時(shí)間編碼、所述業(yè)務(wù)標(biāo)記編碼以及所述業(yè)務(wù)序列編碼進(jìn)行字符串拼接操作,確定對應(yīng)的分布式系統(tǒng)唯一標(biāo)記,包括:
23、根據(jù)所述業(yè)務(wù)時(shí)間編碼、所述業(yè)務(wù)標(biāo)記編碼以及所述業(yè)務(wù)序列編碼進(jìn)行字符串拼接操作,確定對應(yīng)的數(shù)字型字符串;
24、根據(jù)所述字符串長度確定對應(yīng)的分布式系統(tǒng)唯一標(biāo)記,其中,所述分布式系統(tǒng)唯一標(biāo)記為整型或長整型。
25、第二方面,本技術(shù)提供一種分布式系統(tǒng)唯一標(biāo)記的實(shí)現(xiàn)裝置,包括:
26、并發(fā)預(yù)測模型構(gòu)建模塊,用于根據(jù)滑動(dòng)窗口算法在預(yù)設(shè)時(shí)間步長內(nèi)對所述歷史業(yè)務(wù)數(shù)據(jù)進(jìn)行特征提取操作,確定對應(yīng)的時(shí)間特征和并發(fā)量特征,根據(jù)所述時(shí)間特征和所述并發(fā)量特征進(jìn)行特征矩陣和目標(biāo)變量構(gòu)建操作,確定對應(yīng)的歷史業(yè)務(wù)特征,將所述歷史業(yè)務(wù)特征輸入預(yù)設(shè)時(shí)間序列模型進(jìn)行模型訓(xùn)練,確定對應(yīng)的并發(fā)預(yù)測模型,根據(jù)所述并發(fā)預(yù)測模型對預(yù)設(shè)業(yè)務(wù)性質(zhì)進(jìn)行預(yù)測,確定對應(yīng)的實(shí)時(shí)業(yè)務(wù)并發(fā)量,其中,所述歷史業(yè)務(wù)數(shù)據(jù)包括時(shí)間戳、業(yè)務(wù)類型以及并發(fā)量;
27、業(yè)務(wù)編碼確定模塊,用于對所述業(yè)務(wù)性質(zhì)進(jìn)行時(shí)間分析操作,確定對應(yīng)的業(yè)務(wù)時(shí)間跨度和業(yè)務(wù)時(shí)間粒度,根據(jù)所述業(yè)務(wù)時(shí)間跨度和所述業(yè)務(wù)時(shí)間粒度進(jìn)行時(shí)間編碼生成操作,確定對應(yīng)的業(yè)務(wù)時(shí)間編碼,對所述業(yè)務(wù)性質(zhì)進(jìn)行種類數(shù)量分析操作,根據(jù)經(jīng)過所述種類數(shù)量分析操作后得到的業(yè)務(wù)種類數(shù)量進(jìn)行業(yè)務(wù)編號,確定對應(yīng)的業(yè)務(wù)標(biāo)記編碼,根據(jù)所述實(shí)時(shí)業(yè)務(wù)并發(fā)量和預(yù)設(shè)全局自增算法確定對應(yīng)的業(yè)務(wù)序列編碼,其中,所述業(yè)務(wù)時(shí)間編碼包括時(shí)間序列或時(shí)間戳;
28、唯一標(biāo)記生成模塊,用于根據(jù)所述業(yè)務(wù)時(shí)間編碼、所述業(yè)務(wù)標(biāo)記編碼以及所述業(yè)務(wù)序列編碼進(jìn)行字符串拼接操作,確定對應(yīng)的分布式系統(tǒng)唯一標(biāo)記。
29、第三方面,本技術(shù)提供一種電子設(shè)備,包括存儲(chǔ)器、處理器及存儲(chǔ)在存儲(chǔ)器上并可在處理器上運(yùn)行的計(jì)算機(jī)程序,所述處理器執(zhí)行所述程序時(shí)實(shí)現(xiàn)所述的分布式系統(tǒng)唯一標(biāo)記的實(shí)現(xiàn)方法的步驟。
30、第四方面,本技術(shù)提供一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),其上存儲(chǔ)有計(jì)算機(jī)程序,該計(jì)算機(jī)程序被處理器執(zhí)行時(shí)實(shí)現(xiàn)所述的分布式系統(tǒng)唯一標(biāo)記的實(shí)現(xiàn)方法的步驟。
31、第五方面,本技術(shù)提供一種計(jì)算機(jī)程序產(chǎn)品,包括計(jì)算機(jī)程序/指令,該計(jì)算機(jī)程序/指令被處理器執(zhí)行時(shí)實(shí)現(xiàn)所述的分布式系統(tǒng)唯一標(biāo)記的實(shí)現(xiàn)方法的步驟。
32、由上述技術(shù)方案可知,本技術(shù)提供一種分布式系統(tǒng)唯一標(biāo)記的實(shí)現(xiàn)方法及裝置,通過根據(jù)滑動(dòng)窗口算法在預(yù)設(shè)時(shí)間步長內(nèi)對歷史業(yè)務(wù)數(shù)據(jù)進(jìn)行特征提取操作,得到歷史業(yè)務(wù)特征,將歷史業(yè)務(wù)特征輸入預(yù)設(shè)時(shí)間序列模型進(jìn)行模型訓(xùn)練,得到并發(fā)預(yù)測模型,根據(jù)并發(fā)預(yù)測模型預(yù)測業(yè)務(wù)性質(zhì),得到實(shí)時(shí)業(yè)務(wù)并發(fā)量,分析業(yè)務(wù)性質(zhì)的時(shí)間跨度和業(yè)務(wù)時(shí)間粒度生成業(yè)務(wù)時(shí)間編碼,分析業(yè)務(wù)性質(zhì)的種類數(shù)量生成業(yè)務(wù)標(biāo)記編碼,根據(jù)實(shí)時(shí)業(yè)務(wù)并發(fā)量和預(yù)設(shè)全局自增算法得到業(yè)務(wù)序列編碼,根據(jù)業(yè)務(wù)時(shí)間編碼、業(yè)務(wù)標(biāo)記編碼以及業(yè)務(wù)序列編碼進(jìn)行字符串拼接操作,確定分布式系統(tǒng)唯一標(biāo)記,由此能夠提高分布式系統(tǒng)唯一標(biāo)記的使用效率和靈活性。