文章目錄
- 引言
- 一 淘寶技術的升級打怪之路
- 脫胎換骨的升級——從PHP到JAVA
- 資料庫的升級打怪之路
- 二 淘寶大資料的三駕馬車
- 淘寶檔案系統——TFS
- 淘寶KV快取系統——Tair
- 飛天大資料
- 三 淘寶的掃地僧們
- 正祥——淘寶高級研究員,OceanBase專案
- 云錚——資料平臺與產品部資深技術專家
- 總結
引言
大家好,我是ChinaManor,直譯過來就是中國碼農的意思,俺希望自己能成為國家復興道路的鋪路人,大資料領域的耕耘者,平凡但不甘于平庸的人,

淘寶技術這十年》是電子工業出版社2013年5月出版的圖書,由子柳編著,書從工程師的角度講述淘寶這個超大規模互聯網系統的成長歷程,及其所有主動和被動的技術變革的前因后果,
任何網站的發展都不是一蹴而就的,它在發展程序中會遇到各種各樣的問題和業務帶來的壓力,正是這些問題和壓力推動著技術的進步和發展,而技術的發展反過來又會促進業務的更大提升,如今淘寶網的流量排名已是全球前15名、國內前3名,其系統服務器也從一臺發展到萬臺以上,
近期差不多把==《淘寶技術這十年》讀完了==(小米手表yyds ),便想做個讀書筆記以便日后回顧,
從整體上說,這本書并不難讀,更多是作者子柳在阿里巴巴的親身經歷所寫成一篇篇故事,
所以從技術人的視角來說,讀完后會有一種從小網頁到大型網站的演變感,就好似大資料誕生的原因就是傳統的資料庫滿足不了了企業不斷增長的業務量,接下來我將從三個方面來記錄自己作為一個大資料專業的學生的讀書識訓:
一 淘寶技術的升級打怪之路
脫胎換骨的升級——從PHP到JAVA
淘寶的第一個網站系統是從一個美國人那里買來的
1.買一個網站顯然比做一個網站要省事,但是他們的夢想可不
是做一個小網站而已,要做大,就不是隨便買一個就行的,要有
比較低的維護成本,要能夠方便地擴展和二次開發,那么接下來
就是第二個問題:買一個什么樣的網站?答案是:輕量一點的,
簡單一點的,于是買了這樣一個架構的網站:LAMP(Linux+
Apache+MySQL+PHP),這個直到現在還是一個很常用的網站架
構模型,其優點是:無須編譯,發布快速,PHP語言功能強大,
能做從頁面渲染到資料訪問所有的事情,而且用到的技術都是開
源、免費的,
2.2004年初,SQL Relay的問題解決不了,資料庫必須要用Oracle,那么從哪里
動刀呢?只有換開發語言了,換什么語言好?用Java,Java是當時
最成熟的網站開發語言,它有比較良好的企業開發框架,被世界
上主流的大規模網站普遍采用,另外,有Java開發經驗的人才也比
較多,后續維護成本會比較低,
資料庫的升級打怪之路
1.從MySQL換為Oracle的原因除了它容量大、穩定、
安全、性能高之外,還有人才方面的原因,
2.MySQL撐不住之后換為Oracle,Oracle的存盤一開始在本機上,后來在NAS
上,NAS撐不住了用EMC的SAN存盤,再后來,Oracle的RAC撐不住了,資料的存盤方面就不得不考慮使用小型機,
3.然后Oracle就運行在了小型機上,存盤方面,從EMC低端CX存盤到Sun oem hds高端存盤,再到EMC dmx高端存盤,一級一級地往上跳,
二 淘寶大資料的三駕馬車
淘寶檔案系統——TFS
說到TFS的系統架構,首先要描述清楚業務需求,淘寶對圖片存盤的需求大概可以描述如下:
檔案比較小;并發量高;讀操作遠大于寫操作;訪問隨機;
沒有檔案修改的操作;要求存盤成本低;能容災,能備份,
顯然,應對這種需求時要用分布式存盤系統;由于檔案大小比較統一,可以采用專有檔案系統;
由于并發量高,讀寫隨機性強,需要更少的I/O操作;
考慮到成本和備份,需要用廉價的存盤設備;考慮到容災,需要能平滑擴容,

關于TFS,有時間我會在寫一篇博客介紹,
淘寶KV快取系統——Tair
Tair包括快取和持久化兩種存盤功能,Tair作為一個分布式系統,由一個中
心控制節點和一系列的服務節點組成,我們稱中心控制節點為
Config Server,服務節點是Data Server,Config Server 負責管理所
有的Data Server,維護Data Server的狀態資訊,Data Server 對外
提供各種資料服務,并以心跳的形式將自身的狀況匯報給Config
Server,Config Server是控制點,而且是單點,目前采用一主一備
的形式來保證其可靠性,所有的Data Server 地位都是等價的,


飛天大資料
三 淘寶的掃地僧們
正祥——淘寶高級研究員,OceanBase專案
負責人
子柳:競爭對手對OceanBase有以下看法,對此你怎么看?
有一個中心點,在資料量很大的情況下,單點有風險;
HBase開源,大公司主導,很多坑都走過了,
正祥:OceanBase最好的地方就是具備事務,資料一致性很
好,HBase在資料容量上會有優勢,幾千萬億位元組都有可能,但
它沒有解決事務的問題,從資料規模來看,雖然有個單點(有熱備
的),但OceanBase資料規模仍然可以達到關系資料庫幾十倍甚至
幾百倍的規模,
子柳:OceanBase推廣的成本高不高?
正祥:OceanBase的推廣應用得到了各個方面的配合,DBA團
隊已經跟OceanBase融合在一起了,OPS也是不遺余力,非常關鍵
的是,OceanBase得到了應用和業務團隊非常大的支持,資料庫的
遷移是有作業量的,而且還是有風險的,在應用部門的配合下,
OceanBase已經做到了從原來的關系資料庫平臺無縫遷移到新的平
臺上,并且不停止服務,在對OceanBase進行升級時也不停止服
務,到現在已經跑了半年,系統也比較穩定,且沒有停止過服務,
子柳:OceanBase應用之后,節約了多少成本?
正祥:還真沒細算過,首先Oracle的License就是很貴的,這個
是我們能省下來的,服務器的數量也能減少,例如,收藏夾,原
來每個機房有16臺機器,OceanBase剛上線的時候是一個機房14臺
機器,后來資料量和訪問量都已經翻倍了,還是14臺機器,現在
我們正在換成6臺SSD盤的機器,預計能提供更大的訪問量,
另外,成本最高的其實還不止是這些設備,而是網路帶寬和
機房機架等的成本,若減少機器的數量,會降低這方面的成本,
淘寶的業務在高速增長,資料量和訪問量在加速增長,但電力和
機房資源不可能同步高速增長,從現在起,我們就必須在提升服
務能力和性能的同時,降低服務器的使用量,否則不僅是成本令
我們無法承受,機房和機架也無法找到,此外,從節省能源的角
度來說,我們也必須要低碳環保,
云錚——資料平臺與產品部資深技術專家
子柳:我們的資料計算平臺與Google、Amazon有什么異同?
云錚:從相同點看,這個級別的公司做資料,從宏觀上看
都是分布式的,Google做得早一點,他們自己開發的Bigtable、
GFS,從分布式存盤到分布式計算開發了一系列的產品,用在自
己的搜索中,Amazon和Google又不太一樣,Amazon采用虛擬機的
方式,自己給別人搭OPS,用虛擬機租賃的方式做云計算,自己
也有一些業務資料放在上面,
淘寶采用在開源的分布式平臺上面用Patch的方式來做,從
“云梯”到“飛天”這樣的平臺,分布式的理念是相通的,我們
擁有全套“飛天”系統的自主知識產權,有不少精妙的設計,自
主設計的后勁很足,
另外一個很重要的不同點是里面的資料是不同的,資料的價
值也是不同的,淘寶把中國電子商務從零開始到現在,幾乎所有
的資料都包含了,有B2B、B2C和C2C的商品資料,以及交易資料
和支付資料,而Amazon只有B2C的資料,Google沒有商業資料,
都是搜索的資訊,淘寶的資料從量和質上面都非常高,而且更適
合中國的國情,這上面是中國人的消費資料,這些資料的價值需
要持續地創新和在更大的生態鏈中去尋找和挖掘,
子柳:我們的資料現在達到了一個什么樣的規模?
云錚:我們的資料每日新增長達到100TB左右,通過極限存
儲等創新的技術手段,控制凈增量快速增長的勢頭,
總結
以上便是《淘寶技術這十年》的讀書筆記,總的來說書寫的幽默有趣,建議有時間的話可以讀一讀,無論是程式員,產品經理,運維人員都會有自己的識訓,
這本書的pdf版可以私信我獲取
愿你讀過之后有自己的識訓,如果有識訓不妨一鍵三連一下~
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/287370.html
標籤:其他
