[發明專利]一種流式事務處理方法及系統有效
| 申請號: | 201910183742.5 | 申請日: | 2019-03-12 |
| 公開(公告)號: | CN109918391B | 公開(公告)日: | 2020-09-22 |
| 發明(設計)人: | 劉睿民 | 申請(專利權)人: | 威訊柏睿數據科技(北京)有限公司 |
| 主分類號: | G06F16/24 | 分類號: | G06F16/24 |
| 代理公司: | 北京市盛峰律師事務所 11337 | 代理人: | 于國富 |
| 地址: | 100089 北京市海淀區青龍橋*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 事務處理 方法 系統 | ||
1.一種流式事務處理方法,其中每個事務需要對關系數據庫執行參數化查詢,所述參數化查詢從每個事務中獲取至少一個輸入;其特征在于,所述方法具體為,將流式事務記錄成塊序列,對每個塊序列進行批量處理,統計批量事務中包含的事務個數,將此批量事務進行排序,之后開始對批量事務中的各個事務進行處理,直到此批量事務被處理完畢,在進行下一批量數據處理時,將會重新統計批量事務中事務的個數,之后再進行相關操作;對批量事務進行處理的過程具體包括如下步驟:
S1、識別從一個事務中獲取的參數化查詢的輸入;
S2、創建一個用于保存參數化查詢的輸入的參數表;所述參數表有特定的大小,針對不同的事務將會創建不同大小的參數表;
S3、將參數化查詢轉化為包含與參數表連接的等效查詢;
S4、將識別的參數化查詢的輸入填充入參數表;
S5、判斷參數表是否被填滿,若否,則返回步驟S4;若是,則執行步驟S6;
S6、應用等效查詢查詢關系數據庫以生成結果集,并將結果集的輸出值插入相應的事務中;
S7、判斷批量事務中的事務是否為最后一個事務,若是,則批量事務處理完畢;若否,則刪除參數表,按照事先排好的事務順序進入下一事務,并返回步驟S1。
2.根據權利要求1中所述的流式事務處理方法,其特征在于,所述步驟S1具體包括如下步驟:
對參數化查詢進行詞法分析,以生成多個令牌;
解析令牌,以識別參數化查詢的輸入和輸出。
3.根據權利要求1所述的流式事務處理方法,其特征在于:所述步驟S2具體包括根據參數化查詢的輸入的個數使用關系數據庫的第一接口創建參數表,所述第一接口為單一數據操作。
4.根據權利要求1所述的流式事務處理方法,其特征在于:所述步驟S3具體包括如下步驟:
將參數化查詢建模為樹結構;
將樹結構描述為樹語法結構;
根據參數化查詢的輸入與樹語法結構之間的匹配,選擇規則集中的至少一個規則,采用選擇出的規則將參數化查詢轉化為包含與參數表連接的等效查詢。
5.根據權利要求1所述的流式事務處理方法,其特征在于:所述步驟S4具體包括使用關系數據庫的第二接口將參數化查詢的輸入填充入參數表,所述第二接口為批量數據操作。
6.一種流式事務處理系統,所述流式事務處理系統用于實現上述權利要求1至5任一所述的流式事務處理方法;其特征在于,所述流式事務處理系統包括:
識別單元,所述識別單元用于識別參數化查詢的輸入和輸出;
生成單元,用于在存儲器中創建參數表以保存參數化查詢的輸入;
轉換單元,用于將參數化查詢轉化為包含與參數表連接的等效查詢;
填充單元,用于將識別的參數化查詢的輸入填充入參數表;
第一判斷單元,用于判斷參數表是否被填滿;
處理單元,用于應用等效查詢查詢關系數據庫以生成結果集;
插入單元,用于將結果集的輸出值插入每個所述事務中,并在等效查詢結束后刪除所述參數表;
第二判斷單元,用于判斷當前查詢的事務是否為批量事務中的最后一個事務;
計數單元,用于統計批量事務的個數。
7.根據權利要求6所述的流式事務處理系統,其特征在于,所述識別單元包括:
詞法分析器,用于對參數化查詢進行詞法分析,以生成多個令牌;
解析器,用于解析令牌,以識別參數化查詢的輸入和輸出。
8.根據權利要求6所述的流式事務處理系統,其特征在于:所述流式事務處理系統包括流水線控制器,所述流水線控制器對批量事務進行排序,并控制批量事務的參數化查詢順序。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于威訊柏睿數據科技(北京)有限公司,未經威訊柏睿數據科技(北京)有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201910183742.5/1.html,轉載請聲明來源鉆瓜專利網。





