【SDCC講師專訪】京東數據庫系統研發部負責人田琪的架構之路

2016年4月22日-23日,由CSDN重磅打造的數據庫核心技術與實戰應用峯會、互聯網應用架構實戰峯會將在深圳舉行。 這是繼3月中旬,SDCC之架構&數據庫峯會在上海圓滿收官後的再一次相聚。上海站上,18位技術講師給超過500名的現場參會者帶來了精彩分享,火爆程度超出主辦方想象。 即將到來的SDCC深圳技術峯會講師陣容強大,主辦方邀請了來自於百度、阿里、騰訊、滴滴出行、攜程、平安科技、AdMaster、華爲、京東、唯品會、一號店、中國電信、閱文集團等公司的技術骨幹、首席架構師來爲與會者分享演講和交流,必定是一場技術人的饕餮盛宴。【目前限時6折,點擊這裏搶票

CSDN架構領域編輯採訪了一些與會講師,談談他們將在會上分享的內容、相關技術和程序人生,帶你領略講師風采。

本期採訪到的峯會講師是來自京東數據庫系統研發部負責人田琪,目前負責京東分佈式數據庫系統研發及內部數據庫系統支撐。曾分別就職於騰訊,新浪微博,搜狐等互聯網公司,主要關注分佈式系統、容器技術、數據庫內核、Linux內核等系統技術。

圖片描述

京東數據庫系統研發部負責人 田琪

田琪將在SDCC 2016深圳站之架構技術峯會上帶來題爲《京東大規模高訪問量業務下的技術及架構支撐》的主題分享,全部架構技術峯會講師情況和議題可參見:SDCC 2016深圳站之架構技術峯會講師團亮相和議題大公開

CSDN:請簡單介紹下您和目前的工作,以及關注的技術領域。

田琪:我個人目前在京東負責數據庫系統研發部的團隊管理及相關項目的架構及研發工作。個人對基礎技術尤其是存儲,數據庫等方面尤爲關注。工作內容也涉及部分Linux內核及容器管理等方面的工作。

CSDN:您的職場之路比較豐富,目前是京東數據庫系統研發負責人,也曾在新浪負責微博平臺底層架構與研發工作,以及擔任過搜狐白社會實時遊戲平臺核心架構工作,能否簡要回顧下您的職場之路?在技術人員進行職業選擇時需要注意哪些?

田琪:個人從職業開始之初到現在一直都對技術非常熱愛,個人技術方面從最開始的業務系統到之後對支撐業務系統的基礎技術都有涉及。在此過程中也花了很多時間去補充自己在系統方面的深度以及在分佈式系統領域的知識。在職業經歷上經歷了新浪微博核心平臺及基礎架構幾乎從零開始搭建到穩定支撐全國TOP幾的業務訪問量和數據量,也經歷了騰訊TEG這樣異常成熟和規範的基礎技術部門。這些經歷對我的幫助都是巨大的。

在技術人員的職業選擇方面,個人建議初涉職場的年輕人應該將眼光放長遠,在每一個崗位上學到自己應該學到的知識,避免盲目的頻繁換工作,跟隨一家公司或一個部門的發展而發展自己可以學習到一件事情或者一個項目不同階段所需要的不同知識和技能。進行職業選擇時也應首先考慮是否能夠有更好的施展自己才華的平臺,是否能夠得到更多的實踐和機會。而不是單純的爲了薪水或只是覺得原有環境存在某些問題。

CSDN:您是如何走上技術這條路的?

田琪:個人在學生時代就對計算機非常感興趣,畢業後順理成章的找到了一份程序員的工作。並一路堅持了下來,雖然過程很辛苦,但是一直都覺得這是自己真正熱愛的事情。每天早上能夠懷着異常興奮的心情來到公司投入工作,這實際是一件很幸運的事情。

CSDN:不管在哪個職場階段,您所做的事情都與架構息息相關,能夠談下您對架構的理解?以及您對於架構師是如何定義的?

田琪:架構這個事情包含的信息很多,架構也分很多種,系統架構,業務架構,代碼架構等也有不同區分,相應架構師的定義也各有不同,但總體來說,我個人認爲架構設計涵蓋了開發活動的各個環節,從最初的業務梳理規劃,設計,到依賴的基礎系統的設計,再到具體某個服務本身代碼結構上的設計等。每一個環節的把握都是至關重要的,最後纔是在這些以及設計好的框框上面去填好應有的邏輯。

我個人覺得優秀的架構最顯著的特點是簡潔,能夠完成功能和必要的可用性需求基礎上越簡潔,系統出錯的可能性越小。簡潔也意味着服務拆分,大系統小做,系統間耦合簡單鬆散等特點。我經常跟團隊兄弟們講這樣的話,一個看上去就很複雜的系統通常是架構不合理的,也是問題滋生的溫牀。

那麼優秀的架構師就是能夠屏蔽掉業務或系統的複雜性,能夠用最簡潔的技術解決問題的技術人員,而不是反過來,明明很簡單的系統,卻過度設計,過度封裝,爲了用某些時髦的組件或技術而去用這些技術,實際根本不需要。

CSDN:不管是您深耕的數據庫技術,或者現在火熱的容器技術,都有着很深的理解和一定的應用,對於新技術學習您有什麼心得和體會可分享?

田琪:我個人很關注技術發展的動態,但也不會盲目追新,這是一個信息爆炸的時代,每天都有新技術,新的開源項目出現,我們不可能每個都去學。因爲我技術方面專注基礎技術,所以我個人也比較關心本質上的東西。其實這時你會發現越是本質的東西,實際發展越不會那麼快,變化也是慢慢衍生和孵化的。所以有足夠時間去接受和關注新事物的發展。

比如容器技術發展本質原因也是由於硬件的發展,單機多實例成爲必然,之後內核操作系統層有了namespace和cgroup,此後LXC, docker等項目才如雨後春筍般涌現出來,這個過程可能從孕育到爆發持續了很長時間,我們有足夠的時間去學習和適應它的發展。

再比如NewSQL技術的發展:傳統數據庫從上世紀七,八時年代一直髮展了30多年,直到後來互聯網模式的發展,海量數據支撐的需求出現,NoSQL相關技術爲了解決這個問題而出現,本質上又是對業務需求的妥協而犧牲掉了分佈式事務,一致性等很多傳統數據庫的特性,直到後來Google發佈Spanner,相信保持傳統數據庫特性仍然具有很好的可擴展能力的NewSQL也即將如雨後春筍般涌現。這個過程也是慢慢衍生和孵化的,我們也有足夠時間去學習和跟進。

CSDN:京東現在是把交易分到不同的數據中心,涉及數據拆分等,這個點您也將在SDCC 2016(深圳站)架構峯會上作講解,但這裏是否能透露下其中的解決思路和思考?

田琪:多數據中心交易或者跨數據中心容災一直都是互聯網行業比較複雜的一個問題,這個事情實際不同業務都有各自的解決辦法,並沒有完善統一的一致標準或方案可以遵循。

我們數據庫部門正在積極研發能夠跨數據中心仍然保持數據強一致和高可擴展能力的數據庫產品,這個在本次大會上也會做簡單介紹。

CSDN:上面提到容器的火熱,您怎麼看到這個技術以及未來發展如何?

田琪:我個人認爲容器的發展是個必然趨勢,容器方案也是各公司私有云搭建的一個必然選擇,容器的本質技術決定了能夠給業務系統帶來計算的彈性伸縮能力,同時沒有任何的資源佔用和性能損耗。由於私有云環境對隔離性沒有過多要求,所以天然的規避了容器本身的技術缺陷,比如namespace種類不夠等問題。

關於容器未來發展,我個人覺得成爲大部分公司基礎技術系統的標配應該是問題不大的,至於容器技術本身的限制和突破取決於Linux內核社區對這個事情的態度和重視程度。毫無疑問6個namespace是遠遠不夠的。這個需要內核開發者的推動。

CSDN:作爲京東數據庫系統研發負責人,您如今是如何安排自己的新技術學習、研發團隊管理、編程、生活等時間的?

田琪:團隊人員多了之後,最明顯的變化是個人時間上需要被分割成很多小的時間片,去關注不同項目的進展和技術細節。我個人在每個項目的前期設計和研發階段仍然會全力投入,在項目穩步運行和發展一段時間後會去轉而關注其它事情或項目。相比於年輕時候幾乎從不休息,從不過週末,全部時間放在鑽研技術上,目前確實會花部分時間放在其它上,比如思考如何帶好團隊,如何培養年輕人等,也會花時間在運動和健康上。但是目前仍然能夠每週末至少花一天時間學習和研究技術。

CSDN:在本次SDCC 2016(深圳站)架構峯會上,您想分享的話題是?

田琪:本次SDCC我分享的話題是京東大規模高訪問量業務下的技術支撐,會簡單介紹京東整體的業務及系統架構,重點會介紹我們部門的一些數據庫產品,在這些業務支撐中發揮的重要作用。

CSDN:您最期待在SDCC 2016(深圳站)架構峯會上看到哪些內容?

田琪:我個人非常期待能夠在大會上認識更多的業界同仁,瞭解到各家公司目前正在做的事情和遇到的問題以及如何解決等內容。

本文責編:錢曙光,關注架構和算法領域,尋求報道或者投稿請發郵件[email protected],另有「CSDN 高級架構師羣」,內有諸多知名互聯網公司的大牛架構師,歡迎架構師加微信qshuguang2008入羣,備註姓名+公司+職位。