欧美阿v视频在线大全_亚洲欧美中文日韩V在线观看_www性欧美日韩欧美91_亚洲欧美日韩久久精品

主頁 > 知識庫 > 從云數據遷移服務看MySQL大表抽取模式的原理解析

從云數據遷移服務看MySQL大表抽取模式的原理解析

熱門標簽:百應電話機器人優勢 地圖標注費用是多少 曲靖移動外呼系統公司 武漢網絡外呼系統服務商 電話外呼系統改號 外呼系統打電話上限是多少 怎樣在地圖標注銷售區域 南昌三維地圖標注 啥是企業400電話辦理

摘要:MySQL JDBC抽取到底應該采用什么樣的方式,且聽小編給你娓娓道來。

小編最近在云上的一個遷移項目中被MySQL抽取模式折磨的很慘。一開始爆內存被客戶懟,再后來遷移效率低下再被懟。MySQL JDBC抽取到底應該采用什么樣的方式,且聽小編給你娓娓道來。

1.1 Java-JDBC通信原理

JDBC與數據庫之間的通信是通過socket完,大致流程如下圖所示。Mysql Server ->內核Socket Buffer -> 客戶端Socket Buffer ->JDBC所在的JVM

1.2 JDBC讀取數據的三種模式

1.2.1 方式1:使用JDBC默認參數讀取數據

主要分為以下幾步:

1)Mysql Server通過OuputStream 向 Socket Server 本地Kennel Buffer 寫入數據,這里是一次內存拷貝。

2)當Socket Server 本地Kennel Buffer 有數據,就會通過TCP鏈路把數據傳輸到Socket Client 所在機器的Kennel Buffer。

3)JDBC 所在JVM利用InputSream讀取本地Kennel Buffer 數據到JVM內存,沒有數據時,則讀取被阻塞。

接下來就是不斷重復1,2,3的過程。 問題 是,Socket Client 端的JVM在默認模式下讀取Kennel Buffer是沒有考慮本機內存大小的,有多少讀多少。如果數據太大,就會造成FULL GC,緊接著內存溢出。

參考 JDBC API docs,默認模式 Java demo 代碼如下

1.2.2 方式2:游標查詢

為了解決方式1爆內存的問題,JDBC提供了一個游標參數,在建立jdbc連接時加上useCursorFetch=true。設置游標后,JDBC 每次會告訴Server端每次抽取的數據量,避免爆內存。通信過程如下圖所示。

​ 方式2游標查詢雖然解決了內存溢出的問題,方式2極大的依賴網絡質量。當網絡時延增大,假設每次通信增加10ms,10萬次通信就會多出1000s。這里僅僅是每次發請求的RT,TCP每次發送報文,都要求反饋ACK保證數據可靠性。client每取100行(請求行數可配置),就會有多次通信,進一步放大時延增加導致的效率問題。此外,游標查詢下,Mysql無法預知查詢的結束時延,為了應對自身的DML操作會在本地建立一個臨時空間存放要抽取的數據。因此,游標查詢時會有以下幾個現象發生

a. IOPS飆升,Mysql將數據寫入到臨時空間,數據傳輸時從臨時空間讀取數據,這都會引發大量IO操作。

b. 磁盤空間飆升,臨時空間生命周期存在于整個JDBC讀取階段,直到客戶端發起Result.close()時才會被Mysql回收。

c. CPU和內存有一定比例上升。

有關游標查詢的原理可參考博客MySQL JDBC StreamResult通信原理淺析以及JDBC源碼,本文不在贅述。

參考 JDBC API docs,游標模式 Java demo 代碼如下

1.2.3 方式3: Stream讀取數據

方式1會導致JVM內存溢出,方式2雖然不會FULL GC但是通信效率較低,而且也會導致Mysql服務端IOPS飆升,消耗磁盤空間等問題。因此,我們介紹Stream讀取數據 ,流式需要在讀取Result前設置

方式3在通信前不會做任何Server-Cient的交互操作,避免通信效率低下。服務端準備好數據寫入Server的Kennel Buffer中,這些數據通過TCP鏈路傳輸到Client的Kennel Buffer中,緊接著client端inputStream.read()方法被喚醒去讀取數據,與方式1不同,client每次只會讀取一個package大小的數據,如果一個package不滿一行則會再讀取一個package。當client消費數據的速度不及數據傳輸速率時,client端kennel區的數據就會被堆滿,緊接著Server端的kennel數據也會堆滿進而阻塞了OuputStream。這樣,JDBC在Stream模式下就像一個水管連接兩個蓄水池,Client和Server達到一個平衡。

​對于JDBC客戶端,由于每次都是從kennel讀取數據,效率會比方式2高很多,每次讀取一小部分數據也不會導致JVM內存溢出。對于服務端,Mysql每次都是往kennel寫數據,無需建立臨時空間,不涉及IO讀取,服務端壓力也變小了。當然,方式3也有自己的問題,例如Stream流式時無法cancel,cancel不阻塞等等。

參考 JDBC API docs,網上很多教程需要設置useCursorFetch=trueResultSet.FETCH_REVERSE等,其實小編研究完JDBC驅動源碼后發現,只需要設fetchSize=Integer. MIN_VALUE,其他配置均和默認配置保持一致即可。游標模式 Java demo 代碼如下

1.3 云數據遷移服務在三種模式下的調優

云數據遷移服務(Cloud Data Migration, CDM)是華為云上一個遷移工具,詳見 CDM官網 ,小編則通過CDM介紹如何切換三種模式抽取數據。CDM默認使用的是方式3,流式抽取數據,如果需要切換方式1,方式2需額外配置。

1.3.1 配置方式1:默認讀取

新建Mysql連接器,建立方法詳見官網,在高級屬性中增加useCursorFetch=false和adopt.stream=false

1.3.2 配置方式2:游標查詢

編輯Mysql連接器,在高級屬性中增加useCursorFetch=true和adopt.stream=false。游標查詢的大小可通過界面上的Fetch Size調整,默認1000。

1.3.3 配置方式3:流式

CDM默認走的流式,無需額外配置。注意Stream模式下,界面上的 Fetch Size 是不起作用的,原因參考上一節。

1.3.4 性能對比

新建Mysql2Hive的CDM遷移作業,源表101個字段,100萬行數據,配置如下

方式1:寫入100萬行數據耗時1m22s

方式2:同樣寫入100萬行,調整fetchSzie分別為1,10,100,100,最低耗時2m1s

方式3:同樣寫入100萬行,耗時1m5s

小編還測試了100萬的小表,明顯方式1和方式3的速率要遠遠高于方式2,另外小編還測試了1000萬的大表,方式1爆內存,方式2正常遷移但耗時20分鐘以上,而方式3仍然可以在15分鐘內跑完。

到此這篇關于從云數據遷移服務看MySQL大表抽取模式的原理解析的文章就介紹到這了,更多相關MySQL大表抽取內容請搜索腳本之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • mysql8.0.11數據目錄遷移的實現
  • mysql8.0.20數據目錄遷移的方法
  • 如何把本地mysql遷移到服務器數據庫
  • mysql事件之修改事件(ALTER EVENT)、禁用事件(DISABLE)、啟用事件(ENABLE)、事件重命名及數據庫事件遷移操作詳解
  • Docker版的MySQL5.7升級到MySQL8.0.13,數據遷移
  • Mysql的數據庫遷移到另一個機器上的方法詳解
  • MySQL數據庫遷移快速導出導入大量數據
  • python制作mysql數據遷移腳本
  • MySQL數據遷移相關總結

標簽:吉林 資陽 錦州 隨州 荊州 甘南 滄州 黑河

巨人網絡通訊聲明:本文標題《從云數據遷移服務看MySQL大表抽取模式的原理解析》,本文關鍵詞  從,云,數據,遷移,服務,看,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《從云數據遷移服務看MySQL大表抽取模式的原理解析》相關的同類信息!
  • 本頁收集關于從云數據遷移服務看MySQL大表抽取模式的原理解析的相關信息資訊供網民參考!
  • 推薦文章
    欧美阿v视频在线大全_亚洲欧美中文日韩V在线观看_www性欧美日韩欧美91_亚洲欧美日韩久久精品
  • <rt id="w000q"><acronym id="w000q"></acronym></rt>
  • <abbr id="w000q"></abbr>
    <rt id="w000q"></rt>
    中文字幕一区二区在线播放| 成人精品视频一区二区三区尤物| 韩国三级在线看| 在线欧美日韩国产| 亚洲视频每日更新| 美女视频黄频大全不卡视频在线播放| 成人av在线播放网站| 亚洲女人久久久| 日本一区二区成人在线| 国产精品1024| 久久久久久久久久久国产精品| 欧美一区二区视频在线观看2022| 中文字幕在线一区二区三区| 国产69精品久久久久毛片 | 制服丝袜成人动漫| 亚洲va欧美va人人爽午夜| 丁香婷婷综合激情五月色| 成人免费毛片糖心| 欧美精品777| 日本大胆欧美人术艺术动态| 人妻激情偷乱视频一区二区三区| 欧美日韩一区二区三区在线| 亚洲天堂av老司机| 日韩高清一二三区| 日韩一区二区免费电影| 亚洲一区二区欧美日韩| 精品国产一区在线| 欧美色老头old∨ideo| 最近中文字幕一区二区三区| 国产精品一区二区三区四区| 播金莲一级淫片aaaaaaa| 久久精品视频一区| 精品一区二区三区免费播放| 91n在线视频| 伊人一区二区三区| 99精品国产91久久久久久| 农村黄色一级片| 国产精品久久三| 丰满饥渴老女人hd| 日韩欧美一区二区不卡| 日韩在线卡一卡二| 欧美乱大交做爰xxxⅹ小说| 亚洲欧美另类图片小说| 你懂的在线观看网站| 国产亚洲精品资源在线26u| 韩国中文字幕2020精品| 色综合一区二区三区| 五月天网站亚洲| 欧美一级片黄色| 日本一区二区在线不卡| 久久久久久久久久久影视| 欧美色倩网站大全免费| 久久av老司机精品网站导航| 蜜桃传媒一区二区亚洲| 亚洲视频 欧洲视频| 97精品久久久午夜一区二区三区| 欧美一区二区三区白人| 国产成人aaa| 91精品国产品国语在线不卡| 日韩黄色小视频| 男的操女的网站| 日韩av不卡在线观看| 中文字幕一区二区三区人妻电影| 国产精品久久久一区麻豆最新章节| 久久久久久久人妻无码中文字幕爆| 欧美精品国产精品| 日韩av中文字幕一区二区| 波多野结衣家庭教师| 日韩高清不卡在线| 色婷婷久久综合| 亚洲国产欧美日韩另类综合 | 无码精品一区二区三区在线播放| 国产日产欧美一区二区三区| 亚洲美女高潮久久久| 久久精品视频一区二区| 国产黑丝一区二区| 国产精品久久久久久户外露出| 成人福利视频在线| 欧美videos中文字幕| 91麻豆国产福利精品| 久久精品欧美一区二区三区麻豆| 国产人妖在线观看| 精品久久久久久综合日本欧美| 欧美一区二区三区影院| 国产精品毛片高清在线完整版 | 一区二区三区精品在线| 国产大屁股喷水视频在线观看| 《视频一区视频二区| 国产熟女一区二区| 偷窥少妇高潮呻吟av久久免费| 色婷婷狠狠综合| 日韩精品福利网| 欧美午夜精品免费| 暴力调教一区二区三区| 国产日本一区二区| 91麻豆精品视频| 日韩三级视频中文字幕| 国产成人精品在线看| 色94色欧美sute亚洲线路一久| 天堂va蜜桃一区二区三区漫画版| 黄色国产在线播放| 理论片日本一区| 日韩午夜在线观看视频| 激情av中文字幕| 一区二区三区久久久| 色婷婷av一区二区三区软件 | 精品国产网站在线观看| 在线免费观看污视频| 亚洲第一狼人社区| 欧美色爱综合网| 91麻豆.com| 亚洲精品网站在线观看| 一本久久精品一区二区| 成人蜜臀av电影| 欧美电视剧在线看免费| yy1111111| 亚洲午夜成aⅴ人片| 国产在线免费看| 日韩专区一卡二卡| 精品国产乱码久久久久久鸭王1| 国产九色sp调教91| 欧美激情一区在线观看| 色婷婷粉嫩av| 成人午夜看片网址| **欧美大码日韩| 91黄色免费看| 国产成人在线观看免费网站| 日韩精品一区二区三区中文精品| 亚洲AV无码国产精品| 亚洲激情av在线| 欧美色电影在线| 国产十八熟妇av成人一区| 首页国产欧美久久| 欧美午夜精品久久久久久超碰 | 丝袜美腿中文字幕| 麻豆国产精品官网| 久久久蜜桃精品| 在线日韩国产网站| 激情五月播播久久久精品| 久久九九全国免费| 欧美大片xxxx| 麻豆网站免费观看| 亚洲日本va在线观看| 欧美综合一区二区三区| 欧美成人精品一区二区综合免费| 亚洲欧美怡红院| av资源在线免费观看| 久久成人免费网站| 欧美激情中文字幕| 精品人妻中文无码av在线| 国产传媒欧美日韩成人| 久久久久9999亚洲精品| 国产在视频线精品视频| 激情成人综合网| 精品国产乱子伦一区| 久久国产精品无码一级毛片| 激情文学综合网| 26uuuu精品一区二区| 国产激情无码一区二区三区| 91免费国产在线观看| 亚洲啪啪综合av一区二区三区| 欧美视频一区在线观看| 欧美熟妇精品黑人巨大一二三区| 亚洲va天堂va国产va久| 欧美人与性动xxxx| 亚洲一区二区自偷自拍| 成人18精品视频| 肉肉av福利一精品导航| 欧美一级二级在线观看| 欧洲一级黄色片| 免费成人av资源网| 国产精品美女久久久久久久久久久 | 国产精品美女www爽爽爽| 少妇高潮一区二区三区喷水| 韩国三级与黑人| 亚洲国产中文字幕| 欧美精品三级日韩久久| 91狠狠综合久久久久久| 制服下的诱惑暮生| 国精产品一区一区三区mba视频 | 欧美精品亚洲二区| 国产精品无码永久免费不卡| 国产成人日日夜夜| 亚洲va韩国va欧美va| 国产女人aaa级久久久级| 91麻豆精品成人一区二区| 国产一卡二卡三卡四卡| 蜜臀久久久99精品久久久久久| 欧美va在线播放| 又色又爽的视频| 成人黄色大片在线观看| 免费观看成人av| 国产亚洲女人久久久久毛片| 欧美日韩国产影片| 波多野结衣久久久久| 91色porny蝌蚪| 五月综合激情婷婷六月色窝| 国产精品网站在线| 精品国产自在久精品国产| 日本 欧美 国产|