自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

【W(wǎng)OT2018】黃東旭:如何運用HTAP數(shù)據(jù)庫幫到你?來聽聽TiDB的故事

原創(chuàng)
大數(shù)據(jù)
PingCAP是國內(nèi)首家開源的新型分布式數(shù)據(jù)庫公司,其獨立研發(fā)的分布式數(shù)據(jù)庫產(chǎn)品TiDB是一款定位于HTAP(Hybrid Transactional/Analytical Processing)混合事務/分析處理數(shù)據(jù)庫的融合、創(chuàng)新型數(shù)據(jù)庫產(chǎn)品。為了實現(xiàn)這一目標,TiDB在架構上將計算和存儲層進行高度的抽象和分離,對混合負載的場景通過IO優(yōu)先級隊列,智能副本調度,行列混合存儲等技術使其變?yōu)榭赡堋?/div>

【51CTO.com原創(chuàng)稿件】七年一劍,華麗蛻變。自2012年起連續(xù)6年15場峰會,凝聚大量技術專家,博觀而約取,厚積而薄發(fā)。2018WOT全球軟件與運維技術峰會5月18日揚帆起航,圍繞12大核心熱點,匯聚海內(nèi)外60位一線專家,打造高端技術盛宴!

在5月18日下午的C會場“大數(shù)據(jù)處理技術”專場中,PingCAP聯(lián)合創(chuàng)始人兼CTO黃東旭將帶來精彩的分享。會前,51CTO記者有幸采訪到他,針對HTAP數(shù)據(jù)庫和TiDB進行了深入的交流。

PingCAP聯(lián)合創(chuàng)始人兼CTO 黃東旭

創(chuàng)立PingCAP的理由異常簡單

黃東旭提到,自己與朋友一同創(chuàng)業(yè),理由很簡單,源自一個需求。彼時,黃東旭與劉奇(現(xiàn)任PingCAP CEO)同屬豌豆莢的分布式存儲團隊,當時的他們開源了Codis,解決了豌豆莢內(nèi)部緩存的擴展性問題,數(shù)據(jù)庫問題成了硬骨頭。如何構建一個對業(yè)務端透明,兼具良好的擴展性和完整的分布式事務支持的數(shù)據(jù)庫,是構建新一代微服務架構的核心問題之一。當時,團隊在開源社區(qū)并沒有找到比較好的方案,分庫、分表、中間件,這些傳統(tǒng)做法在涉及到業(yè)務大的改動時會帶來很大的運維成本,如何徹底解決這個問題呢?

受當時Google發(fā)表的一系列在分布式數(shù)據(jù)庫方面的論文(Spanner/F1)啟發(fā),PingCAP的初創(chuàng)團隊打算從頭開始實現(xiàn)一個新一代的關系型數(shù)據(jù)庫,來解決關系型數(shù)據(jù)庫的擴展性問題。由此看來,PingCAP創(chuàng)立的初衷很簡單,就是幾個工程師想要解決一個很困難的技術問題,同時想通過開源的方式幫到大家。

TiDB研發(fā)早期經(jīng)歷的那些事兒

在TiDB研發(fā)早期,從SQL層開始,第一個開源的TiDB版本其實并沒有存儲引擎,后端存儲是HBase,為了加入存儲層,也為了驗證SQL的正確性,PingCAP團隊決定為HBase加入分布式事務的支持,直接對接在TiDB SQL層的后端,這種方法確實可行。但是考慮到性能和其他一些因素,PingCAP很快決定用Rust重新實現(xiàn)一個全新的分布式存儲層,也就是后來的TiKV。彼時Rust還是一門比較新的語言,且以學習曲線陡峭著稱,整個團隊成員都沒有相關經(jīng)驗,好在得到了Rust語言官方的諸多支持,PingCAP和Rust語言共同成長了起來,如今,TiKV已經(jīng)是Rust社區(qū)的明星項目,同時PingCAP也是多個知名項目(如gRPC 等)的Rust語言開源實現(xiàn)的主要維護者。黃東旭表示看到Rust語言越來越火,感到非常的高興和欣慰。

PingCAP是國內(nèi)首家開源的新型分布式數(shù)據(jù)庫公司,其獨立研發(fā)的分布式數(shù)據(jù)庫產(chǎn)品TiDB是一款定位于HTAP(Hybrid Transactional/Analytical Processing)混合事務/分析處理數(shù)據(jù)庫的融合、創(chuàng)新型數(shù)據(jù)庫產(chǎn)品。為了實現(xiàn)這一目標,TiDB在架構上將計算和存儲層進行高度的抽象和分離,對混合負載的場景通過IO優(yōu)先級隊列,智能副本調度,行列混合存儲等技術使其變?yōu)榭赡?。另外,在TiSpark項目中,將TiDB的存儲層和Spark的計算引擎高效地連接在一起,讓用戶也能夠在Spark生態(tài)系統(tǒng)下實時的對數(shù)據(jù)庫中的數(shù)據(jù)進行復雜分析。

黃東旭認為,HTAP給開發(fā)者提供了一個實時數(shù)據(jù)分析方面的新思路,不需要再去維護另一個離線的數(shù)據(jù)倉庫,既減輕了ETL的工作,又能節(jié)省很大一部分的建立數(shù)據(jù)倉庫所用到的存儲和計算成本,HTAP將是未來的重要趨勢。

HTAP數(shù)據(jù)庫的三類應用場景

一是大中臺的場景。例如,前臺的數(shù)據(jù)庫已經(jīng)分庫分表或已水平拆分,TiDB可以作為所有線上生產(chǎn)庫的從庫,實時將數(shù)據(jù)同步到一個大的TiDB集群上,在這一層將數(shù)據(jù)打通,可以直接進行復雜的跨庫、跨表、跨業(yè)務的實時SQL查詢,由于這是基于MySQL的協(xié)議和語法,對業(yè)務的侵入性很小,開發(fā)者無需再去學習新的查詢語法。

二是為微服務提供強一致的持久化數(shù)據(jù)層(the source of truth)。其實微服務乃至后來的Serverless架構,一個核心的問題就是持久化數(shù)據(jù)層,要將無狀態(tài)的業(yè)務邏輯容器化、服務化很方便,但是帶狀態(tài)的存儲層在滿足SQL和強一致甚至ACID的情況下實現(xiàn)彈性伸縮,在現(xiàn)有的方案下仍十分困難,而TiDB可以完美的在這類架構中填補這一空白。

三是MySQL分庫分表的完美替代品。TiDB與MySQL的語法、MySQL社區(qū)的工具(如Mydumper/PhpMyAdmin等)完美兼容,可讓MySQL應用無需修改便可直接運行。這讓很多用了MySQL的業(yè)務在遇到大數(shù)據(jù)量的場景時,能夠無縫的切換。

TiDB解決MySQL可擴展性的實現(xiàn)原理

TiDB產(chǎn)品的整體架構是分層的,由分布式SQL層(TiDB)、分布式KV存儲引擎(TiKV)以及管理整個集群的PD模塊組成。無限水平擴展是TiDB的一大特點,這里所說的水平擴展包括兩方面:計算能力和存儲能力。TiDB Server負責處理SQL請求,隨著業(yè)務的增長,可以通過簡單的添加TiDB Server節(jié)點,在提升整體處理能力的同時,提供更高的吞吐能力。TiKV負責存儲數(shù)據(jù),隨著數(shù)據(jù)量的增長,可以部署更多的TiKV Server節(jié)點,解決數(shù)據(jù)Scale的問題。PD會在TiKV節(jié)點之間以Region為單位進行調度,將部分數(shù)據(jù)遷移到新加的節(jié)點上。由此可見,企業(yè)在業(yè)務的早期可以只部署少量的服務實例,隨著業(yè)務量的增長,能夠便捷地按照需求添加TiKV或TiDB實例。

據(jù)介紹,目前,包括摩拜單車、同程旅游、餓了么、360金融、游族網(wǎng)絡、今日頭條、蓋婭互娛、猿輔導、易果集團、去哪兒網(wǎng)等200余家不同行業(yè)的領先企業(yè)已經(jīng)將TiDB應用在實際的生產(chǎn)環(huán)境中,涉及互聯(lián)網(wǎng)、游戲、金融、政府、電信、制造業(yè)等多個領域。

其中,今日頭條和易果集團都是比較典型的案例。

今日頭條:用TiDB替換原有的主從MySQL數(shù)據(jù)庫

以今日頭條為例,今日頭條APP的自研S3存儲系統(tǒng),數(shù)據(jù)量級已近上百億。在用TiDB前,今日頭條的元數(shù)據(jù)存在MySQL 2.8TB的磁盤里,因為數(shù)據(jù)量增長迅速,導致磁盤不夠用,只能用分庫分表的方案,當時的方案是MyCAT。但是分庫分表帶來一些問題,如:無法做OLAP分析;有丟數(shù)據(jù)的問題,數(shù)據(jù)雖然已經(jīng)commit,實際并沒有保存下來;還有連接的問題,有些業(yè)務沒有帶分片鍵的查詢,會消耗非常多的連接,造成沒有連接的情況。

如今,今日頭條使用TiDB替換了原有的主從MySQL數(shù)據(jù)庫,上線后效果非常明顯:

  • TiDB支撐著今日頭條OLTP系統(tǒng)里數(shù)據(jù)流量較大、QPS較高的場景。例如今日頭條、抖音;
  • QPS一直在上升,目前均值十幾萬;
  • 已經(jīng)穩(wěn)定運行近半年,做過一次擴容。

典型OLTP+OLAP混合場景案例

易果集團是一個典型的OLTP+OLAP混合場景的案例。在上線TiDB之前,易果集團的實時系統(tǒng)已經(jīng)遇到了瓶頸:

  • SQL Server當數(shù)據(jù)量到達一定階段,性能出現(xiàn)拐點,彈性擴展很難實現(xiàn);
  • HDFS+Hive+Spark+Presto+Kylin方案在數(shù)據(jù)量增大的情況下,ETL越來越慢,很難滿足更復雜的OLAP需求,與此同時,業(yè)務對實時或者準實時的需求越來越強烈。

通過對Greenplum、Kudu、TiDB等多個方案的選型評估,最終易果集團選擇了TiDB的方案:使用Flume、Syncer數(shù)據(jù)實時同步到TiDB,并使用TiSpark替換Hadoop進行實時數(shù)倉業(yè)務。目前,在TiDB的支持下,易果集團T+1數(shù)倉已升級為實時數(shù)倉,TiDB天然的滿足了數(shù)據(jù)量線性擴展的問題,同時還節(jié)省了大量的運維成本。TiDB作為一款HTAP數(shù)據(jù)庫,為易果集團創(chuàng)建實時、統(tǒng)一的混合數(shù)據(jù)庫提供了可能。

基礎軟件選擇開源社區(qū)戰(zhàn)略更加適宜

最后,黃東旭表示,開源是一種非常先進的軟件開發(fā)模式和推廣模式,對于基礎軟件來說,開源是一種很重要的手段。他引用了開源社區(qū)里流傳甚廣的一句話:只要眼睛足夠多,Bug無處藏。從這個邏輯的角度來看,對于基礎軟件來說,用戶越多,使用場景越多,見過的Workload越多,得到相應的反饋越多,這些來自一線的反饋能夠更好的讓你看清方向和產(chǎn)品存在的缺陷,更快的迭代以達到更加完美的狀態(tài),避免閉門造車;另外一方面,社區(qū)和生態(tài)會成為你最大的護城河,從而構建真正的商業(yè)壁壘。黃東旭總結,PingCAP這幾年發(fā)展的如此之快,與他選擇了開源的戰(zhàn)略密不可分。

5月18-19日,北京•粵財JW萬豪酒店,全球最值得關注的IT技術盛宴與您不見不散。2018WOT全球軟件與運維技術峰會一定是您發(fā)現(xiàn)全新思路、挖掘最新思想、拓展人脈的重要平臺。

目前我們的各項票種已全面發(fā)售。需要提醒您的是,購票越早,折扣越大!與KOL零距離交流,呈現(xiàn)不一樣的“英雄盛宴”!

點擊官網(wǎng)了解詳情:wot.51cto.com

9折預售中,搶票從速。

【51CTO原創(chuàng)稿件,合作站點轉載請注明原文作者和出處為51CTO.com】

責任編輯:查士加 來源: 51CTO
相關推薦

2018-06-25 14:52:26

TiDB數(shù)據(jù)庫CTO

2019-03-05 12:12:39

數(shù)據(jù)庫HTAPACID

2017-06-04 23:18:44

數(shù)據(jù)庫分布式

2015-08-20 09:19:04

用友NC6互聯(lián)網(wǎng)+

2019-01-03 14:31:40

NewSQL PingCAPTiDB

2018-05-31 16:13:12

大數(shù)據(jù)架構趨勢

2019-01-03 14:23:48

人工智能人機智能業(yè)務創(chuàng)新

2018-12-18 08:59:41

WOT2018

2018-12-18 11:17:14

人工智能WOT2018AI工具

2018-03-23 17:35:21

WOT2018董明鑫Docker

2020-11-30 09:53:30

PingCAP

2018-12-26 10:08:23

WOT AI峰會

2021-04-27 19:24:22

PingCAPHTAP數(shù)據(jù)庫

2018-12-24 11:13:32

WOT2018AI人工智能

2018-12-17 19:13:43

WOT人工智能數(shù)據(jù)處理

2018-05-18 22:07:27

WOT2018前端AIOps

2016-06-17 09:42:40

2018-05-16 15:57:40

OpenStack對象存儲WOT

2023-08-01 08:02:06

2018-05-19 15:04:11

WOT2018OpenStackAR
點贊
收藏

51CTO技術棧公眾號