System.ArgumentOutOfRangeException: 索引和長度必須引用該字符串內的位置。 參數名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技術實現步驟摘要】
本申請涉及分布式數據庫領域,尤其涉及一種數據查詢方法、主控服務器及數據庫系統。
技術介紹
1、批處理是一種數據處理模式,批處理可以用于執行大規模、復雜的數據處理作業。批處理可以應用于分布式數據庫領域,通過批處理可以實現在分布式數據庫中自動化執行大規模數據查詢作業。
2、在一些技術中,在分布式數據庫中執行數據查詢作業時,從分布式數據庫中直接進行批處理,一次性從分布式數據庫中查詢全部數據。上述技術中,數據查詢作業的執行效率低。
技術實現思路
1、本申請實施例提供的數據查詢方法、主控服務器及數據庫系統,用以達到提高數據查詢作業的效率的效果。
2、第一方面,本申請實施例提供一種數據查詢方法,方法應用于數據庫系統中的主控服務器,數據庫系統包括主控服務器和多個服務器分機,其中,主控服務器分別與多個服務器分機連接;方法包括:
3、響應于數據查詢作業請求,將數據查詢作業拆分為多個數據查詢子作業;
4、若數據查詢子作業的數量大于或等于預設的子作業數量閾值,則將多個數據查詢子作業分配給多個服務器分機;其中,多個數據查詢子作業用于被多個服務器分機并行執行以得到數據查詢子作業的執行結果;
5、根據各數據查詢子作業的執行結果,得到數據查詢作業的結果。
6、在一種可能的實施方式中,數據查詢作業請求中包括數據查詢作業的拆分維度、數據查詢作業的拆分策略、以及數據查詢子作業的數量;
7、響應于數據查詢作業請求,將數據查詢作業拆分為多
8、響應于數據查詢作業請求,根據數據查詢作業請求中的數據查詢作業的拆分維度、數據查詢作業的拆分策略、以及數據查詢子作業的數量,將數據查詢作業拆分為多個數據查詢子作業。
9、在一種可能的實施方式中,拆分維度包括以下至少一種:按一個字段拆分,按多個字段拆分,整行拆分;拆分策略包括以下至少一種:哈希拆分,范圍拆分。
10、在一種可能的實施方式中,將多個數據查詢子作業分配給多個服務器分機,包括:
11、根據數據查詢子作業的數量和服務器分機的個數,確定分機子作業數量閾值;
12、根據分機子作業數量閾值,將多個數據查詢子作業分配給多個服務器分機;其中,每個服務器分機被分配到的數據查詢子作業的數量小于或等于分機子作業數量閾值。
13、在一種可能的實施方式中,在數據查詢子作業的數量大于或等于預設的子作業數量閾值時,數據查詢子作業用于被服務器分機基于服務器分機線程并行執行。
14、在一種可能的實施方式中,方法還包括:
15、若數據查詢子作業的數量小于預設的子作業數量閾值,則將多個數據查詢子作業分配給多個主控服務器線程并行執行,得到數據查詢子作業的執行結果。
16、在一種可能的實施方式中,數據庫系統對應有數據查詢作業信息表,方法還包括:
17、將數據查詢子作業對應的分組特征值和作業分發情況,記錄在數據查詢作業信息表中;
18、將每個主控服務器線程執行被分配到的數據查詢子作業的作業執行情況、錯誤堆棧、主控服務器的ip地址,記錄在數據查詢作業信息表中。
19、在一種可能的實施方式中,數據庫系統對應有數據查詢作業信息表,數據查詢作業信息表中記錄有服務器分機執行被分配到的數據查詢子作業的作業執行情況、錯誤堆棧、服務器分機的ip地址。
20、第二方面,本申請實施例提供一種數據查詢裝置,包括:
21、拆分模塊,用于響應于數據查詢作業請求,將數據查詢作業拆分為多個數據查詢子作業。
22、分配模塊,用于若數據查詢子作業的數量大于或等于預設的子作業數量閾值,則將多個數據查詢子作業分配給多個服務器分機;其中,多個數據查詢子作業用于被多個服務器分機并行執行以得到數據查詢子作業的執行結果。
23、處理模塊,用于根據各數據查詢子作業的執行結果,得到數據查詢作業的結果。
24、在一種可能的實施方式中,數據查詢作業請求中包括數據查詢作業的拆分維度、數據查詢作業的拆分策略、以及數據查詢子作業的數量。
25、響應于數據查詢作業請求,將數據查詢作業拆分為多個數據查詢子作業,拆分模塊用于:
26、響應于數據查詢作業請求,根據數據查詢作業請求中的數據查詢作業的拆分維度、數據查詢作業的拆分策略、以及數據查詢子作業的數量,將數據查詢作業拆分為多個數據查詢子作業。
27、在一種可能的實施方式中,拆分維度包括以下至少一種:按一個字段拆分,按多個字段拆分,整行拆分;拆分策略包括以下至少一種:哈希拆分,范圍拆分。
28、在一種可能的實施方式中,將多個數據查詢子作業分配給多個服務器分機,分配模塊用于:
29、根據數據查詢子作業的數量和服務器分機的個數,確定分機子作業數量閾值;
30、根據分機子作業數量閾值,將多個數據查詢子作業分配給多個服務器分機;其中,每個服務器分機被分配到的數據查詢子作業的數量小于或等于分機子作業數量閾值。
31、在一種可能的實施方式中,在數據查詢子作業的數量大于或等于預設的子作業數量閾值時,數據查詢子作業用于被服務器分機基于服務器分機線程并行執行。
32、在一種可能的實施方式中,分配模塊還用于:
33、若數據查詢子作業的數量小于預設的子作業數量閾值,則將多個數據查詢子作業分配給多個主控服務器線程并行執行,得到數據查詢子作業的執行結果。
34、在一種可能的實施方式中,數據庫系統對應有數據查詢作業信息表,處理模塊303還用于:
35、將數據查詢子作業對應的分組特征值和作業分發情況,記錄在數據查詢作業信息表中;
36、將每個主控服務器線程執行被分配到的數據查詢子作業的作業執行情況、錯誤堆棧、主控服務器的ip地址,記錄在數據查詢作業信息表中。
37、在一種可能的實施方式中,數據庫系統對應有數據查詢作業信息表,數據查詢作業信息表中記錄有服務器分機執行被分配到的數據查詢子作業的作業執行情況、錯誤堆棧、服務器分機的ip地址。
38、第三方面,本申請實施例提供一種主控服務器,包括:存儲器,處理器;
39、存儲器存儲計算機執行指令;
40、處理器執行存儲器存儲的計算機執行指令,使得處理器執行如上第一方面和/或第一方面各種可能的實施方式。
41、第四方面,本申請實施例提供一種數據庫系統,包括如上第三方面提供的主控服務器,以及多個服務器分機,其中,主控服務器分別與多個服務器分機連接。
42、第五方面,本申請實施例提供一種計算機可讀存儲介質,計算機可讀存儲介質中存儲有計算機執行指令,計算機執行指令被處理器執行時用于實現如上第一方面和/或第一方面各種可能的實施方式。
43、第六方面,本申請實施例提供一種計算機程序產品,包括計算機程序,該計算機程序被處理器執行時本文檔來自技高網...
【技術保護點】
1.一種數據查詢方法,其特征在于,所述方法應用于數據庫系統中的主控服務器,所述數據庫系統包括所述主控服務器和多個服務器分機,其中,所述主控服務器分別與所述多個服務器分機連接;所述方法包括:
2.根據權利要求1所述的方法,其特征在于,所述數據查詢作業請求中包括數據查詢作業的拆分維度、數據查詢作業的拆分策略、以及數據查詢子作業的數量;
3.根據權利要求2所述的方法,其特征在于,所述拆分維度包括以下至少一種:按一個字段拆分,按多個字段拆分,整行拆分;所述拆分策略包括以下至少一種:哈希拆分,范圍拆分。
4.根據權利要求1所述的方法,其特征在于,將所述多個數據查詢子作業分配給所述多個服務器分機,包括:
5.根據權利要求1所述的方法,其特征在于,在所述數據查詢子作業的數量大于或等于預設的子作業數量閾值時,所述數據查詢子作業用于被所述服務器分機基于服務器分機線程并行執行。
6.根據權利要求1所述的方法,其特征在于,所述方法還包括:
7.根據權利要求1至6中任一項所述的方法,其特征在于,所述數據庫系統對應有數據查詢作業信息表
8.根據權利要求1至6中任一項所述的方法,其特征在于,所述數據庫系統對應有數據查詢作業信息表,所述數據查詢作業信息表中記錄有服務器分機執行被分配到的數據查詢子作業的作業執行情況、錯誤堆棧、服務器分機的IP地址。
9.一種主控服務器,其特征在于,包括:存儲器,處理器;
10.一種數據庫系統,其特征在于,所述數據庫系統包括:如權利要求9所述的主控服務器,以及多個服務器分機,其中,所述主控服務器分別與所述多個服務器分機連接。
...【技術特征摘要】
1.一種數據查詢方法,其特征在于,所述方法應用于數據庫系統中的主控服務器,所述數據庫系統包括所述主控服務器和多個服務器分機,其中,所述主控服務器分別與所述多個服務器分機連接;所述方法包括:
2.根據權利要求1所述的方法,其特征在于,所述數據查詢作業請求中包括數據查詢作業的拆分維度、數據查詢作業的拆分策略、以及數據查詢子作業的數量;
3.根據權利要求2所述的方法,其特征在于,所述拆分維度包括以下至少一種:按一個字段拆分,按多個字段拆分,整行拆分;所述拆分策略包括以下至少一種:哈希拆分,范圍拆分。
4.根據權利要求1所述的方法,其特征在于,將所述多個數據查詢子作業分配給所述多個服務器分機,包括:
5.根據權利要求1所述的方法,其特征在于,在所述數據查詢子作業的數量大于或等于預設的子作...
【專利技術屬性】
技術研發人員:劉沛然,黃子卿,馬博宇,馬路,許鑫悅,
申請(專利權)人:中國銀行股份有限公司,
類型:發明
國別省市:
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。