999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于數據庫代理實現數據庫分表、分庫訪問的方案研究

2019-02-14 16:20:28姬渭孟于雪蓮
數字通信世界 2019年9期
關鍵詞:數據庫

姬渭孟,于雪蓮

(1.吉林移動業務支撐中心,長春 130000 ;2.中國聯通吉林省公司,長春 130000)

1 方案提出的背景

隨著MySQL 開源軟件的發展,由于其使用方便、安全維護簡單,越來越多的IT 系統開始采用MySQL 作為自己的數據庫,存儲系統數據。但此數據庫產品由于性能、安全等方面限制,一般來說建議單個數據庫容量不能過大(一般在1-2T 左右),單個數據庫表記錄數不能過多(建議單表數量不高于500萬),而在IT 系統中,往往有大量的數據,常常單個數據庫達到10T 以上,單表超過一億條。目前通用的方法是采用分庫、分表的方式,通過對數據進行分區,將一個大數據庫分為多個小的數據庫,對于分表的方式,多通過表字段取模等方法,將一個數據庫表拆分成多個數據庫表。業務系統應用程序在訪問和操作數據時,在應用程序側進行判斷,確定要訪問和操作的數據庫和數據庫表,然后進行訪問和操作。此方案的問題是應用和數據耦合度高,應用需要清楚了解自己所操作數據的位置(哪個分庫、哪個分表),當數據量增加,數據庫、數據庫表進行擴展時,如增加新數據庫、增加新數據庫表,都需要對應用程序進行改造,以訪問和操作新增加的數據庫、新的數據庫表,改造的工作量較大、工期長、風險較高。

2 具體方案介紹

本方案提出一種數據庫代理裝置,它由幾部分組成:(1)數據庫掃描模塊;(2)分庫分表策略存儲模塊;(3)SQL 語句接收和解析模塊;(4)SQL 語句執行模塊;(5)結果返回模塊。

數據庫掃描模塊通過數據庫連接池訪問底層的多個數據庫,將掃描結果進行分析處理,形成數據庫分庫、分表信息,將這些信息存儲到分庫分表策略存儲模塊。前端應用需要進行SQL 語句執行時,首先訪問數據庫代理裝置的SQL 語句接收和解析模塊,提供需要執行的SQL 語句,此模塊通過對SQL 語句進行解析,獲取要訪問的數據庫對象信息,通過與分庫分表策略存儲模塊進行交互,轉化成具體要訪問的實體數據庫和表,將解析結果傳遞給SQL 語句執行模塊,通過數據庫連接池,連接到具體的分數據庫,完成SQL 的執行,將執行結果記錄,并通過結果返回模塊與前端應用進行交互,將SQL 語句執行結果返回給前端應用。

詳細處理步驟如下:

步驟101:為數據庫代理裝置中數據庫掃描模塊創建連接池,與底層多個小的分數據庫進行鏈接,能否進行訪問。

步驟102:數據庫掃描模塊通過連接池,能夠訪問底層的各個小的數據庫,并可以訪問各個小的數據庫的數據庫對象(如數據庫表)。

步驟103:數據庫掃描模塊掃描底層數據庫,獲取分庫分表信息。

如一個完整的數據庫對象,通過之前人為定義的分庫分表路由策略,數據庫掃描模塊按照策略進行掃描,最終確定每一個數據庫對象保存在哪幾個數據庫,或者保存在哪些分表中,包括數據庫名稱、分表的名稱。

步驟104:數據庫掃描模塊掃描的結果與上次相比是否發生了變化?如新增數據庫、新增數據庫對象等。

步驟105:如果發生了變化,則由數據庫掃描模塊更新分庫、分表信息到分庫分表策略存儲模塊。同時也提供手工訪問更新的功能。

步驟106:如未發生變化,則記錄掃描日志記錄后,不再進行處理。

步驟107:當應用程序需要訪問數據庫執行SQL 語句時,首先訪問數據庫代理層的SQL 語句接收和解析模塊。

步驟108:SQL 語句接收和解析模塊接收SQL 語句,應用程序不再需要指明要訪問哪個分庫、哪個分表,只要指明訪問的數據即可。

步驟109:SQL 語句接收和解析模塊與分庫分表策略存儲模塊通信,獲取實時的數據庫分庫、分表策略信息。

步驟110:SQL 語句接收和解析模塊對SQL 訪問數據庫及表進行解析匹配,將訪問對象轉換成具體訪問的數據庫名、數據庫分表名稱等信息。

步驟111:SQL 語句接收和解析模塊將SQL 解析結果傳遞給SQL 執行模塊。

步驟112:SQL 執行模塊通過數據庫連接池,訪問具體的分數據庫和分表,將SQL 語句完整執行,獲取最終執行結果。

并將執行結果傳遞給結果返回模塊,由結果返回模塊與應用進行通信,并將具體的SQL 執行結果返回給前端應用,由應用進行處理。

本方案的優點:應用程序側不再需要指定要訪問的哪個數據庫,哪個具體的表,只需要明確訪問的數據內容,由數據庫代理層通過內部的相關模塊,獲取訪問數據庫、表的策略,獲取訪問路徑,這樣當分數據庫、數據庫分表發生變化時,也不再需要通知應用程序,由策略存儲模塊提供訪問策略,進行訪問及操作。

3 結束語

在IT 軟件系統中,針對某些數據庫表數據量過大的情況,分散存儲在不同的數據庫,不同的表中。本方法通過提出一套數據庫代理裝置,有效解決了應用軟件與數據庫耦合性高的問題。

猜你喜歡
數據庫
數據庫
財經(2017年15期)2017-07-03 22:40:49
數據庫
財經(2017年2期)2017-03-10 14:35:35
兩種新的非確定數據庫上的Top-K查詢
數據庫
財經(2016年15期)2016-06-03 07:38:02
數據庫
財經(2016年3期)2016-03-07 07:44:46
數據庫
財經(2016年6期)2016-02-24 07:41:51
數據庫
財經(2015年3期)2015-06-09 17:41:31
數據庫
財經(2014年21期)2014-08-18 01:50:18
數據庫
財經(2014年6期)2014-03-12 08:28:19
數據庫
財經(2013年6期)2013-04-29 17:59:30
主站蜘蛛池模板: 极品私人尤物在线精品首页| 制服无码网站| 国产资源免费观看| 亚洲天堂.com| 国产91透明丝袜美腿在线| 伊人国产无码高清视频| 啪啪永久免费av| 久久综合九九亚洲一区| 国产丝袜第一页| 欧美日韩国产在线观看一区二区三区 | 99热这里只有精品久久免费| 中文字幕人妻无码系列第三区| 国产综合欧美| 国产精品嫩草影院视频| 色婷婷在线影院| 无码啪啪精品天堂浪潮av | 精品1区2区3区| 亚洲香蕉伊综合在人在线| 三级视频中文字幕| 国产亚洲精品无码专| 国产日韩丝袜一二三区| 日本午夜在线视频| 久久精品国产精品一区二区| 国产女人水多毛片18| 精品国产福利在线| 国产精品免费p区| 国产高潮视频在线观看| 国产91无毒不卡在线观看| 中国国产一级毛片| 福利在线一区| 波多野结衣无码视频在线观看| 第一区免费在线观看| 欧美日韩第三页| 日韩一二三区视频精品| 精品无码一区二区在线观看| 韩国福利一区| 中文字幕在线欧美| 国产欧美自拍视频| 成年人福利视频| 国产玖玖视频| 国产成人精品2021欧美日韩| 91精品啪在线观看国产| 国产h视频免费观看| 日韩第九页| 久久99国产综合精品女同| 色婷婷亚洲综合五月| 直接黄91麻豆网站| 女高中生自慰污污网站| 久久精品人妻中文系列| 精品亚洲欧美中文字幕在线看 | 成人免费午夜视频| 99这里只有精品6| 久久午夜夜伦鲁鲁片无码免费| 玖玖精品在线| 国产欧美日韩视频怡春院| 日韩在线观看网站| 91久久青青草原精品国产| 色妞永久免费视频| 日韩精品专区免费无码aⅴ| 天天综合网色中文字幕| 第一页亚洲| 一区二区无码在线视频| 国产一区二区精品福利| 青青青视频蜜桃一区二区| 四虎永久免费地址| 香蕉久久国产精品免| 男女性色大片免费网站| 国产呦精品一区二区三区网站| 国产成人精品亚洲77美色| 欧美区国产区| 色综合久久88| 亚洲中久无码永久在线观看软件| 亚洲三级a| 亚洲综合欧美在线一区在线播放| 看av免费毛片手机播放| 免费一级毛片在线播放傲雪网| 欧美精品啪啪一区二区三区| 91色国产在线| 天天爽免费视频| 久久久久久久久亚洲精品| 日韩精品毛片人妻AV不卡| 2019年国产精品自拍不卡|