古雷-央視國際網(wǎng)絡(luò)有限公司-技術(shù)事業(yè)群DBA-MySQL5.7與8.0新特性管窺_第1頁
古雷-央視國際網(wǎng)絡(luò)有限公司-技術(shù)事業(yè)群DBA-MySQL5.7與8.0新特性管窺_第2頁
古雷-央視國際網(wǎng)絡(luò)有限公司-技術(shù)事業(yè)群DBA-MySQL5.7與8.0新特性管窺_第3頁
古雷-央視國際網(wǎng)絡(luò)有限公司-技術(shù)事業(yè)群DBA-MySQL5.7與8.0新特性管窺_第4頁
古雷-央視國際網(wǎng)絡(luò)有限公司-技術(shù)事業(yè)群DBA-MySQL5.7與8.0新特性管窺_第5頁
已閱讀5頁,還剩23頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

2016-11-20中國軟件開發(fā)者大賽演講主題演講央視網(wǎng)絡(luò)DBA古雷L感興趣的特性感興趣的特性?戲說Groupreplication(5.7)?快速增加列寬(5.7)?TheRewriterQueryRewritePlugin(5.7)?JSON(5.7和8.0)GroupGroupreplication?http://mysqlhighavaila/mysql-group-replication-transaction-life-cycle-explained/GroupGroupreplicationcertification?http://mysqlhighavaila/mysql-group-replication-transaction-life-cycle-explained/yQpyQp/gr/doc/technical.html?三家共同管理山頭田地?每家莊主都可以發(fā)號師令?犁地、播種、澆水、施肥磚磚飛鴿傳書飛鴿傳書順序問題與沖突問題順序問題與沖突問題?要是鴿子路上貪吃,犁地的命令比播種命令晚到了,種子都被翻出來咋辦??要是兩個莊主都發(fā)了澆水的命令,澆兩遍水,把種子淹死咋辦??天氣太干、太熱,一個莊主看到澆了一遍水以后,還需要澆。連續(xù)兩次澆水的命令常的聰明的通訊員(類paxos)最會放鴿子?我們需要把老板們的命令編號,產(chǎn)生統(tǒng)一的順序員:–收到消息后,按編號順序向上匯報,包括本地老板息–如果5到了,4沒到,不得向上匯報–接上句,如果發(fā)現(xiàn)4是我的編號序列,而我由于之前沒消息可發(fā),沒發(fā)過4,此時發(fā)出一個空閑命令編號為4秘書最懂老板的心秘書最懂老板的心?老板都是有秘書的?三個老板誰也得罪不起,有令必行?但是如果做了老板實際不想做的事,也會?老板依據(jù)他已知的發(fā)生情況,發(fā)號師令?通訊員已經(jīng)解決了順序問題秘書的高招秘書的高招?所有執(zhí)行過的命令都給一個編號,起名叫GTID?把自己老板的命令,加上當(dāng)前命令執(zhí)行的整體狀態(tài),一同交給通訊員;這個整體狀態(tài)起名叫g(shù)tidexecutedUUID,50-55)?秘書收到通訊員給的消息后,與之前收到的消含前者的gtid_executed–是,準(zhǔn)許執(zhí)行,分配GTID,修改此消息的gtid_executed–否,丟棄–秘書把這個過程叫作認(rèn)證(cetification)更復(fù)更復(fù)雜的情況頭有10塊地,按0到9編號?秘書做認(rèn)證工作的時候,把當(dāng)前收到的命令,只和之前收到的同一塊地的命令進(jìn)行?不同地的命令之間不會有沖突?后來秘書把一塊地稱為一行記錄,地的編鍵認(rèn)證的優(yōu)化認(rèn)證的優(yōu)化?認(rèn)證需要比較的命令越來越多,要與以前發(fā)生的都比較一下?定期把列表中已經(jīng)被所有山頭執(zhí)行完的命沖突發(fā)生的條件–(a)兩個山頭差不多同時發(fā)出同一塊地的命令–(b)兩個莊主都不知道對方發(fā)出的這條件命令?在所有山頭都執(zhí)行完成的命令,就不會滿GR數(shù)據(jù)庫狀態(tài)機(jī)要GR數(shù)據(jù)庫狀態(tài)機(jī)要點?每個事務(wù)發(fā)給所有節(jié)點?在每個節(jié)點,所有事務(wù)的認(rèn)證順序都是一樣的,認(rèn)是別的節(jié)點發(fā)過來的外來事務(wù)A證是否成功?外來事務(wù),在允許執(zhí)行前還不是事務(wù),因此需要與本地事務(wù)一起進(jìn)行沖突檢測,稱為認(rèn)證認(rèn)證認(rèn)證(Certification)的理解(主鍵相同)數(shù)據(jù)?假設(shè)Ta被排在Tb之前?Tb是在『看到』Ta執(zhí)行結(jié)果以后才發(fā)起的嗎?–是,允許Tb提交(本地事務(wù))或者執(zhí)行(外來事務(wù))–否,Tb回滾(本地事務(wù))或者丟棄?同一個事務(wù)在不同節(jié)點上的認(rèn)證結(jié)果是一樣的–都成功,或者都失敗–因為所有事務(wù)在各個節(jié)點上的認(rèn)證順序都是一樣的GroupGroupreplication其他關(guān)注點?所有節(jié)點的binlog順序完全一樣嗎?不會有自增列沖突嗎?GTID的順序是全局由小到大的嗎瞬間增加列寬的條件瞬間增加列寬的條件difyvarcharntovarcharnmm?charsetutf8(滿足以下任一)–0<n≤85and0<n+m≤85–n>85?charsetutf8mb4(滿足以下任一)–n>63TheTheRewriterQueryRewritePlugin?在server端改寫SELECT語句?為SELECT加hint(指定索引、Join順序等),甚至更徹底地改寫?在應(yīng)用端不能(或不方便)修改框架生成的SQL–時間緊急(比如故障處理)?性能損耗?MySQLMySQLShell&JSON?varmysqlx=require('mysqlx');?varmySession=mysqlx.getSession('wx:wx@localhost');?varmyDb=mySession.getSchema('world_x');?varmyDocs=myColl.find('_id=??{"GNP":828,?????????????????}"IndepYear":null,"Name":"Aruba","_id":"ABW","demographics":{"LifeExpectancy":78.4,"Population":103000"geography":{"Continent":"NorthAmerica","Region":"Caribbean","SurfaceArea":193"government":{"GovernmentForm":"NonmetropolitanTerritoryofThe"HeadOfState":"Beatrix"}Netherlands",?SELECTdocFROM`world_x`.`countryinfo`WHERE(`_id`='ABW’)?CREATETABLE`countryinfo`(?`doc`jsonDEFAULTNULL,?`_id`varchar(32)GENERATEDALWAYSAS(json_unquote(json_extract(`doc`,'$._id')))LL?`Continent`varchar(32)GENERATEDALWAYSAS(json_unquote(json_extract(`doc`,'$.geography.Continent')))STOREDNOTNULL,?PRIMARYKEY(`_id`),?KEY`i_Continent`(`Continent`)?)ENGINE=InnoDBDEFAULTCHARSET=utf8?varmyDocs=?SELECTdocFROM`world_x`.`countryinfo`EREt='Asia');?explain上面的SQL,使用了索引i_Continent?stored或者virtual的列,都能用上索引JSONJSONDatatype?有格式二進(jìn)制于以字符串保存JSON?正在做的改進(jìn)字段局部更新GeneratedGeneratedcolumns其他字段計算出來的字段?Vritual–不占存儲空間,每次查詢時重新計算?Stored–需要存儲,每當(dāng)插入、更新記錄時計算一次?可建索引–實現(xiàn)類似函數(shù)索引的功能–為JSON建立索引,類似于在JSON函數(shù)上建索引MySQL8MySQL8.0UUIDUUID慮作為InnoDB表主鍵了uuidswapflag?VARBINARY(16)DbinaryuuidswapflagUUIDversion1參考資料參考資料??http:///gr/doc/?http://?Th

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論