閱讀686 返回首頁    go 技術社區[雲棲]


【探索新域,擁抱未來】MySQL專家肖鵬侃侃話開源

編輯手記嘉年華倒計時2天,今年的嘉年華特別設置了開源專場,為廣大MySQL技術愛好者提供分享和學習的平台。我們特別邀請新浪MySQL專家肖鵬老師談一談對開源世界的認識。肖鵬老師對開源數據庫特別是MySQL研究特別深入,今天我們一起來聽專家大話開源。


嘉賓介紹

640?wx_fmt=png&wxfrom=5&wx_lazy=1

肖鵬

微博研發中心數據庫技術負責人,主要負責微博數據庫(MySQL/Reids/HBase/Memcached)相關的業務保障,性能優化,架構設計以及周邊的自動化係統建設。專注於數據庫的高性能和高可用技術保障方向。


開源之路,我們一起走過640?wx_fmt=jpeg&wxfrom=5&wx_lazy=1

小編

1、很榮幸能采訪您,首先跟大家打個招唿吧,請您簡單介紹下您自己和您的職業生涯的發展

大家好,我是肖鵬,目前在新浪微博研發中心負責數據庫相關的技術工作,目前我們部門是對外提供消息隊列,緩存、數據存儲和數據分析服務的一個技術平台,我們提供的技術棧包括MCQ、Kafka、MC、Redis、MySQL、HBase、Hadoop、Spark等,目前在拓展新的技術服務。

說起來和數據庫結緣這個事情主要還是受到大學期間導師的影響,由於我的導師當時在從事Oracle相關的工作,於是從學生時代就對數據庫產生了比較濃厚的興趣。

至於說到技術成長,我個人的總結是業務驅動,雖然最開始入門的時候一定要通過書籍進行係統學習,但是如果要有長足的發展,還要依托於業務環境,在一個高速發展的業務環境下,個人成長的速度是完全不同的,很感謝微博提供了一個非常好的平台。

640?wx_fmt=jpeg&wxfrom=5&wx_lazy=1

小編

2、了解到您對各類的開源數據庫都比較有研究,現在開源越來越熱,您如何看待開源數據庫與傳統數據庫的未來發展趨勢呢?

近些年NoSQL發展迅速,在我們公司內已經可以同傳統的關係型數據庫分庭抗禮了,在這種情況下,貌似傳統數據庫的前景堪憂?但是,我其實不是這麼認為的,我個人認為數據庫的技術選型依賴於特定時間段內的特定場景,並沒有一種數據庫是“瑞士軍刀”可以解決所有問題的。舉例來說,對於一個創業公司來說,產品可以在市場上得到認可才是第一位的,在這種時候,更加簡單、通用的數據庫,比如MySQL就是更好的選擇,而不用去考慮HBase等。而如果公司已經發展的較大了,業務形態千奇百怪之後,那麼就需要針對不同的需求,進行不同的數據庫選型。總而言之,任何數據庫都有最適合的場景,並且這個場景還和發展階段強關聯。

640?wx_fmt=jpeg&wxfrom=5&wx_lazy=1

小編

3、在您十年的互聯網數據庫的管理中,您遇到過的最棘手的問題或者印象最深刻的案例可否跟大家分享一下呢?

我個人印象最深刻的案例就是微博的feed體係優化,由於微博最開始是標準的LAMP架構,服務的穩定性和可用性是重度依賴於DB的,但是MySQL在高並發的情況下,一旦前麵的Cache命中率有波動就會出現大麵積的slow query和延遲發生,當時苦不堪言,做了很多的數據庫自身層麵的優化和改造都沒有妥善的解決,最終還是同業務方共同在整體業務架構層麵通過多級Cache的思路最終解決的。自此之後,我就堅信數據庫最極致的優化方法就是不讀數據庫。說笑了,其實是業務邏輯的優化,建議廣大DBA同學在遇到性能問題的時候不要光埋頭優化,也要抬頭看看整體的業務架構是否存在優化的空間。

640?wx_fmt=jpeg&wxfrom=5&wx_lazy=1

小編

4、任何一門技術,之所以能廣受歡迎,肯定技術本身和時代的發展、需求有一定的契合度,現在開源數據庫發展快速,越來越受到廣大技術者的喜愛,您覺得在雲時代,開源數據庫有哪些明顯的優勢呢?

我個人認為開源數據庫最大的優勢不在於開源數據庫自身提供的各種功能,而是在開源社區的支持下,所有使用者都可以參與討論,可以找到誌同道合的夥伴,這種安全感是促使廣大公司選擇開源數據庫的最重要原因之一。

其次,就是開源數據庫的源碼是可以直接閱讀的,甚至可以直接在上麵path自己的解決方案,在這一點上傳統數據庫的節奏是完全跟不上的,因為每家公司的業務場景都是非常特殊的,即使同一個行業也可能由於關注方向不一樣,導致各個公司對開源數據庫的使用“姿勢”千奇百怪,這種百變的使用方式也是大家選擇開源數據庫的一個重要原因。

640?wx_fmt=jpeg&wxfrom=5&wx_lazy=1

小編

5、作為最受歡迎的開源數據庫,MySQL發展快速,今年已經發布了8.0版本,當然每一個版本都會帶有很多方麵的新特性,那您覺得MySQL在不同版本的更新中,最有價值的改進和更新都有哪些呢?

以5.7來說,我個人最關心的是並行複製和Jason,這也是由於我們的業務環境決定的。而對於8.0來說,個人對group replication和官方的一攬子解決方案非常感興趣。眾所周知,如果要用好MySQL需要大家圍繞MySQL 在周邊建設一係列的自動化運維係統,這點上Oracle確實領先了很多。所以,我們看到官方也注意到這個方向,據我的了解,官方正在開發MySQL Router,並且會出官方的HA解決方案和監控方案,這是非常好的事情。舉例來說,如果我們需要一個proxy層來對MySQL 進行代理形成一個可以橫向擴展的cluster,那麼現在市麵上有很多的選擇,比如corba,mycat,atlas等等,但是大家在選擇的時候會有一個顧慮,那就是是否可以持續的開發和維護下去,如果有一天不在更新了怎麼辦? 在這個點上,我相信官方的背書能力是更有說服力的。


百變世界,遊刃有餘640?wx_fmt=jpeg&wxfrom=5&wx_lazy=1

小編

6、您在MySQL數據庫的優化方麵一直精心研究,專注於MySQL的高性能,那麼在這裏您願意跟大家分享下您的經驗嗎?您覺得相比較其他數據庫,MySQL的優化有哪些不同之處呢?

正好我本次OTN要分享的也是優化主題,我個人認為優化是係統的,分層次的。我們不能隻盯著MySQL自身,需要往下看硬件和係統層,也需要往上看應用和架構層。對於硬件、OS係統、MySQL參數等等我們有一些根據經驗來的“模版”,所以在這方麵各個公司的優化我認為基本處於同一個水平上,但是對於應用和架構的優化就因人而異了,需要根據各個公司的業務場景來指向性進行優化,總的原則就是“兵來將擋,水來土掩”,充分分析業務的真實需求來努力提高性能。在這方麵微博有一些的經驗,歡迎來我的分場聽我給大家聊一聊。

640?wx_fmt=jpeg&wxfrom=5&wx_lazy=1

小編

7、隨著雲時代的全麵到來,越來越多的企業正在考慮“上雲”,但是雲的安全性和QoS等問題同樣一直是大家所關注的焦點,對此您有何見解?

對於雲來說我認為是一個必然的趨勢,但是相對於前端機這種無狀態的模塊,數據庫上雲確實挑戰多多,在這方麵我們正在努力的嚐試,目前還沒有特別好的經驗分享給大家,但是我個人認為,隨著前端上雲的技術越來越成熟和便捷,後端資源會被倒逼著“適應”上雲,在這個過程中,目前還沒有一個統一的標準的解決方案,隻能靠大家摸著石頭過河了。

至於對於雲安全性的考慮和QoS問題,我認為安全性是不能假借他人之手的,務必要在自己的控製之下,所有數據全部在雲端其實是無法接受的,也許特殊時期可以妥協,但是最終來說數據是企業的根本,需要更加謹慎的對待。而QoS問題這是雲企業必然的管控,但是雲的高彈性也變相的解決了這個問題,所以我個人認為沒太大的關係。

640?wx_fmt=jpeg&wxfrom=5&wx_lazy=1

小編

8、您還有其他想要跟大家分享的嗎?或者對行業新人有沒有什麼建議和指導?

對於剛入門的新人來說,最好可以通過書籍來係統的學習數據庫的基礎,不要靠從網上東搜西搜來積攢知識,否則一定會遇到發展的瓶頸點。這裏推薦一本MySQL DBA都知道的書《High Performance MySQL》,強烈推薦通讀一邊。然後,就是最好可以找一個高速發展的平台,在這種環境下會得到一個比較高的加速度,再說的直白一點,在這種環境下,你會遇到各種故障和性能問題,而解決了這些問題自然而然的就有了豐富的經驗了,這是從任何其他地方都學不來的,一定要親身經曆。最後,要有一個開放的心態,積極的同同行進行交流,因為畢竟一個人所處的環境是有限的,很少有人有機會在不同的環境中跳來跳去,那麼就需要根據我們的古訓“三人行必有我師焉”來學習他人的經驗了。同時也不要敝帚自珍,隻有積極的思想碰撞才能產生火花,多分享和多聽分享絕對利大於弊。


最後,感謝OTN組委會邀請我來分享,在這裏我們可以遇到很多使用不同數據庫的同行,和這些人交流是一件非常愉快的事情,而且可以認識很多誌同道合的朋友,你會發現在數據庫海洋裏,你並不是一個人獨自遊蕩,你遇到的問題有很多其他朋友也遇到了,而他們的解決方案各有各的特色,這能極大的開闊我們自己的思路。


不止於分享,我們願與你一起成長!Oracle技術嘉年華,為你量身定製完美成長計劃!

今年是 Oracle 技術嘉年華的第六屆,圍繞“數據、平台與智能”主題,“Oracle 技術嘉年華、MySQL 技術嘉年華,運維嘉年華和實踐嘉年華”四大專場合而為一,在雲和開源技術迸發的舞台上,演繹一場空前的技術盛宴,精彩不斷!



本文出自數據和雲公眾號,原文鏈接


最後更新:2017-07-18 11:03:02

  上一篇:go  Oracle 12.2新特性掌上手冊 - 第三卷 Sharding 的增強
  下一篇:go  Oracle 12.2新特性掌上手冊 - 第五卷 RAC and Grid