【技術實現步驟摘要】
本專利技術涉及數據庫,特別是涉及一種數據庫增刪改查方法、一種數據庫增刪改查裝置、一種電子設備以及一種計算機可讀介質。
技術介紹
1、傳統的java網站后端,小程序后端,安卓app后端等軟件后端一些請求服務都會涉及到訪問遠程的數據庫,但隨著數據庫規模的擴大,包括數據量增加、數據表增多、數據庫表字段增多,數據庫如果沒有針對需要進行增刪改查操作的字段進行性能優化,尤其是面對一些復雜的增刪改查,如多表關聯、聚合操作、子查詢等復雜的增刪改查操作沒有進行性能優化的話,會使得數據庫響應時間比較漫長。同時當數據庫面臨高并發負載時,數據庫增刪改查性能會成為瓶頸,并發的增刪改查可能導致資源爭用和鎖競爭,降低系統的整體性能,使得響應時間更加會遠超過了預期或用戶可接受的范圍時,長時間的等待會降低系統的響應速度,甚至到導致系統崩潰,極大影響了用戶體驗感。
技術實現思路
1、鑒于上述問題,提出了本專利技術以便提供一種克服上述問題或者至少部分地解決上述問題的一種數據庫增刪改查方法、一種數據庫增刪改查裝置、一種電子設備以及一種計算機可讀介質。
2、本專利技術公開了一種數據庫增刪改查方法,所述方法包括:
3、識別和處理sql語句,生成所述sql語句對應的b+樹索引;
4、對所述sql語句對應的b+樹索引進行去重并建立所述sql語句對應的多重b+樹索引集;
5、采用所述sql語句對應的多重b+樹索引集執行所述sql語句,得到增刪改查結果。
6、可選地,識別和
7、識別所述sql語句中是否包含增刪改查關鍵字;
8、若所述sql語句包含增刪改查關鍵字,從所述sql語句中提取所有字段和表名;
9、根據所述字段和表名建立所述sql語句對應的b+樹索引。
10、可選地,若所述sql語句包含增刪改查關鍵字,從所述sql語句中提取所有字段和表名,包括:
11、若所述sql語句包含增刪改查關鍵字,則根據所述增刪改查關鍵字確定所述sql語句的類型;
12、根據所述sql語句的類型的語句結構從所述sql語句中提取sql語句片段;
13、采用指定分割符分割所述sql語句片段,得到多個字符串;
14、根據所述sql語句的類型的語句結構從所述多個字符串中確定所有字段和表名。
15、可選地,采用所述sql語句對應的多重b+樹索引集執行所述sql語句,得到增刪改查結果,包括:
16、若所述sql語句為查詢語句,則根據提取的字段和表名,利用所述sql語句對應的多重b+樹索引集執行查詢操作,得到查詢結果;
17、若所述sql語句為更新語句,則根據提取的字段和表名,更新所述sql語句對應的多重b+樹索引集;
18、若所述sql語句為插入語句,則根據提取的字段和表名創建b+樹索引,并添加到所述sql語句對應的多重b+樹索引集中;
19、若所述sql語句為刪除語句,則從所述sql語句對應的多重b+樹索引集中刪除所述提取的字段和表名對應的b+樹索引。
20、可選地,所述方法還包括:
21、在相同條件下,基于所述sql語句對應的多重b+樹索引集執行增刪改查操作和基于其他方式執行增刪改查操作,分別得到第一插入所需時間、第一刪除所需時間、第一更新所需時間、第一查詢所需時間和第二插入所需時間、第二刪除所需時間、第二更新所需時間和第二查詢所需時間;所述其他方式為無索引或二叉樹索引或b樹索引或hash索引;
22、采用第二插入所需時間、第二刪除所需時間、第二更新所需時間和第二查詢所需時間與第一插入所需時間、第一刪除所需時間、第一更新所需時間兩兩相減,得到多個時間差;
23、判斷所述多個時間差中最大的時間差是否大于預設時間差閾值;
24、若所述多個時間差中最大的時間差大于預設時間差閾值,則確定第一插入所需時間、第一刪除所需時間、第一更新所需時間、第一查詢所需時間符合響應時間標準。
25、本專利技術還公開了一種數據庫增刪改查裝置,所述裝置包括:
26、b+樹索引生成模塊,用于識別和處理sql語句,生成所述sql語句對應的b+樹索引;
27、多重b+樹索引集建立模塊,用于對所述sql語句對應的b+樹索引進行去重并建立所述sql語句對應的多重b+樹索引集;
28、sql語句執行模塊,用于采用所述sql語句對應的多重b+樹索引集執行所述sql語句,得到增刪改查結果。
29、可選地,所述b+樹索引生成模塊,包括:
30、增刪改查識別子模塊,用于識別所述sql語句中是否包含增刪改查關鍵字;
31、提取子模塊,用于若所述sql語句包含增刪改查關鍵字,從所述sql語句中提取所有字段和表名;
32、b+樹索引建立子模塊,用于根據所述字段和表名建立所述sql語句對應的b+樹索引。
33、可選地,所述提取子模塊,包括:
34、sql語句類型確定單元,用于若所述sql語句包含增刪改查關鍵字,則根據所述增刪改查關鍵字確定所述sql語句的類型;
35、sql語句片段提取單元,用于根據所述sql語句的類型的語句結構從所述sql語句中提取sql語句片段;
36、分割單元,用于采用指定分割符分割所述sql語句片段,得到多個字符串;
37、字段和表名確定單元,用于根據所述sql語句的類型的語句結構從所述多個字符串中確定所有字段和表名。
38、可選地,所述sql語句執行模塊,包括:
39、查詢子模塊,用于若所述sql語句為查詢語句,則根據提取的字段和表名,利用所述sql語句對應的多重b+樹索引集執行查詢操作,得到查詢結果;
40、更新子模塊,用于若所述sql語句為更新語句,則根據提取的字段和表名,更新所述sql語句對應的多重b+樹索引集;
41、插入子模塊,用于若所述sql語句為插入語句,則根據提取的字段和表名創建b+樹索引,并添加到所述sql語句對應的多重b+樹索引集中;
42、刪除子模塊,用于若所述sql語句為刪除語句,則從所述sql語句對應的多重b+樹索引集中刪除所述提取的字段和表名對應的b+樹索引。
43、可選地,所述裝置還包括:
44、增刪改查時間測試模塊,用于在相同條件下,基于所述sql語句對應的多重b+樹索引集執行增刪改查操作和基于其他方式執行增刪改查操作,分別得到第一插入所需時間、第一刪除所需時間、第一更新所需時間、第一查詢所需時間和第二插入所需時間、第二刪除所需時間、第二更新所需時間和第二查詢所需時間;所述其他方式為無索引或二叉樹索引或b樹索引或hash索引;
45、最大時間差計算模塊,用于采用第二插入所需時間、第二刪除所需時間、第二更新所需時間和第二查詢所需本文檔來自技高網...
【技術保護點】
1.一種數據庫增刪改查方法,其特征在于,所述方法包括:
2.根據權利要求1所述的方法,其特征在于,識別和處理SQL語句,生成所述SQL語句對應的B+樹索引,包括:
3.根據權利要求2所述的方法,其特征在于,若所述SQL語句包含增刪改查關鍵字,從所述SQL語句中提取所有字段和表名,包括:
4.根據權利要求2所述的方法,其特征在于,采用所述SQL語句對應的多重B+樹索引集執行所述SQL語句,得到增刪改查結果,包括:
5.根據權利要求1所述的方法,其特征在于,所述方法還包括:
6.一種數據庫增刪改查裝置,其特征在于,所述裝置包括:
7.根據權利要求6所述的方法,其特征在于,所述B+樹索引生成模塊,包括:
8.根據權利要求7所述的方法,其特征在于,所述提取子模塊,包括:
9.一種電子設備,其特征在于,包括處理器、通信接口、存儲器和通信總線,其中,所述處理器、所述通信接口以及所述存儲器通過所述通信總線完成相互間的通信;
10.一個或多個計算機可讀介質,其上存儲有指令,當由一個或多個處
...【技術特征摘要】
1.一種數據庫增刪改查方法,其特征在于,所述方法包括:
2.根據權利要求1所述的方法,其特征在于,識別和處理sql語句,生成所述sql語句對應的b+樹索引,包括:
3.根據權利要求2所述的方法,其特征在于,若所述sql語句包含增刪改查關鍵字,從所述sql語句中提取所有字段和表名,包括:
4.根據權利要求2所述的方法,其特征在于,采用所述sql語句對應的多重b+樹索引集執行所述sql語句,得到增刪改查結果,包括:
5.根據權利要求1所述的方法,其特征在于,所述方法還包括:
...
【專利技術屬性】
技術研發人員:許統洭,
申請(專利權)人:廣東天波信息技術股份有限公司,
類型:發明
國別省市:
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。