那曲檬骨新材料有限公司

您好,歡迎來電子發燒友網! ,新用戶?[免費注冊]

您的位置:電子發燒友網>源碼下載>數值算法/人工智能>

HBase分布式事務與SQL實現

大小:0.5 MB 人氣: 2017-10-13 需要積分:1
目前主流的數據庫或者NoSQL要么在CAP里面選擇AP,比較典型的例子是Cassandra,要么選擇CP比如HBase,這兩個是目前用得非常多的NoSQL的實現。我們的價值觀一定認為未來是分布式的,一定是盡量傾向于全部都擁有,大部分情況下取舍都是HA,主流的比較頂級的數據庫都會選擇C,分布式系統一定逃不過P,所以A就只能選擇HA。現在主要領域是數據庫的開發,完全分布式,主要方向和谷歌的F1方向非常類似。
  目前看NewSQL代表未來(Google Spanner、F1、FoundationDB),HBase在國內有六個Committer,在目前主流的開源數據庫里面幾乎是最強的陣容。大家選型的時候會有一個猶豫,到底應該選擇HBase還是選Cassandra。根據應用場景,如果需要一致性,HBase一定是你最好的選擇,我推薦HBase。它始終保持強一致,我們非常喜歡一致性,喪失一致性的時候有些錯誤會特別詭異,很難查。對于Push-down特性的設計其實比較好,全局上是一個巨大的分布式數據庫,但是邏輯上是分成了一個個Region,Region在哪臺機器上是明確的。
  比如要統計記錄的條數,假設數據分布在整個系統里面,對數十億記錄做一個求和操作,就是說不同的機器上都要做一個sum,把條件告訴他要完成哪些任務,他給你任務你再匯總,這是典型的分布式的 MPP,做加速的時候是非常有效的。
  2015年HBaseConf 上面有一句總結: “Nothing is hotter than SQL-on-Hadoop, and now SQL-on- HBase is fast approaching equal hotness status”, 實際上SQL-on-HBase 也是非常火。因為 Schema Less 沒有約束其實是很嚇人的一件事情,當然沒有約束也比較爽,就是后期維護十分痛苦,規模進一步擴大了之后又需要遷移到 SQL。
  現在無論從品質還是速度上要求已經越來越高,擁有SQL的同時還希望有ACID的東西(OLAP一般不追求一致性)。所以TiDB在設計時就強調這樣的特點:始終保持分布式事務的支持,兼容MySQL協議。無數公司在SQL遇到Scale問題的時候很痛苦地做出了選擇,比如遷移到HBase,Cassandra MongoDB已經看過太多的公司做這種無比痛苦的事情,現在不用痛苦了,直接遷過來,直接把數據導進來就OK了。TiDB最重要的是關注OLTP,對于互聯網業務來說通常是在毫秒級內就需要返回一個結果。
  我們到目前為止開發了六個月,開源了兩個月。昨天晚上TiDB達到了第一個Alpha的階段,現在可以擁有一個強大的數據庫:支持分布式事務,始終保持同步的復制,強大的按需Scale能力,無阻塞的Schema變更。發布第一個Alpha版本的時候以前的質疑都會淡定下來,因為你可以閱讀每一行代碼,體驗每個功能。選擇這個領域也是非常艱難的決定,實在太Hardcore了,當初Google Spanner也做了5年。不過我們是真愛,我們就是技術狂,就是要解決問題,就是要挑大家最頭痛的問題去解決。好在目前阿里的OceanBase給我們服了顆定心丸,大家也不會質疑分布式關系型數據庫是否可行。
  TiDB名字由來
  為什么叫TiDB?大家起名字的時候特別喜歡用希臘神話里面的人物,但幾乎所有的希臘神話人物的名字都被別的項目使用了,后來我們就找了化學元素周期表(理工科男與生俱來的特征),化學元素周期表里找到一個不俗且又能代表我們數據庫特性的元素-Ti 。Ti是航空航天及航海里面很重要的設備都會用到的,特別穩定,也比較貴。
  HBase分布式事務與SQL實現
  TiDB的系統架構圖
  TiDB怎么支持MySQL這個協議?這里會有一個協議解析層,它的作用就是去分析MySQL協議,轉成內部可以識別的分發給自己的SQL Layer。當SQL Layer 拿到這個語句之后會把它拆成對應的分布式KV操作,所以這里會有一個Transactional KV Storage。接下來是在KV基礎上增加事務的支持,再往上是普通的KV操作,理論上KV選什么都可以,如果選的是HBase有一個好處,它本身就是分布式,省掉分布式的工作。目前我們在小米的Themis基礎上做了些優化和改進,和我們TiDB做了一個很好的結合。后期我們有一個計劃,準備自己重寫一套底層的分布式KV,把HBase換掉。因為HBase對于Container不友好,加上GC也是讓人比較討厭的問題,壓力比較大的時候GC延遲會加長。

非常好我支持^.^

(0) 0%

不好我反對

(0) 0%

      發表評論

      用戶評論
      評價:好評中評差評

      發表評論,獲取積分! 請遵守相關規定!

      ?
      百家乐系列抢庄龙| 百家乐网站程序| 澳门百家乐官网才能| 太阳城亚洲| 乐博娱乐城| 博彩网百家乐全讯网| 香港百家乐官网的玩法技巧和规则| 百家乐官网起步多少| 利博百家乐的玩法技巧和规则| 百家乐官网破解软件真的有用吗| bet365主页器| 百家乐必赢法冯耘| 百家乐视频计牌器| 三公百家乐官网玩法| 现金百家乐官网技巧| 海口市| 大发888游戏备用网址| 财神百家乐的玩法技巧和规则| 百家乐网络赌场| 百家乐真人百家乐赌博| 百家乐大转轮真人视讯| 百家乐园小区户型图| 联众百家乐官网的玩法技巧和规则 | 走地皇娱乐城| 现金网| 现金网注册送彩金| 百樂坊百家乐的玩法技巧和规则| 钱隆百家乐智能| 百家乐几点不用补牌| 大发888网站大全| 青鹏棋牌游戏下载| 易发娱乐场| 百家乐官网节目视频| 联兴棋牌| 博九网| 百家乐官网免费是玩| 真钱棋牌导航网| 波克棋牌下载| 乐百家国际娱乐城| 百家乐官网十佳投庄闲法| 永利高百家乐官网现金网|