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

MySQL 到底怎么了?

原創(chuàng) 精選
數(shù)據(jù)庫 MySQL
過去的近 20 年,MySQL 成為構(gòu)建互聯(lián)網(wǎng)的基石之一,有無數(shù)的開發(fā)者為之夜以繼日,我們?yōu)橹x予應(yīng)有的榮光。如今,開發(fā)者不得不正視 MySQL 的問題:它早已過了體驗巔峰的時刻,而是面臨停滯甚至下墜感的來襲。

作者 | 云昭

審校 | 千山

近年來大家可能都有這樣一種感受:與編程語言市場不同,數(shù)據(jù)庫市場的競爭激烈異?!痪€的在停滯甚至下墜,二線的正在反超。有種種跡象表明:MySQL 這個流行榜上的榜一大哥,正在逐漸淡出專業(yè)開發(fā)者的視野。再見 MySQL,可能不再只是一個嘩眾取寵的梗了!

8 月,StackOverflow 發(fā)布的 2022 開發(fā)者調(diào)查報告中,有這么一組數(shù)字:

在專業(yè)開發(fā)者群體受歡迎排行榜中,PostgreSQL(46.48%)首次超越 MySQL(45.68%)拔得頭籌。專業(yè)開發(fā)者與初學(xué)者的不同之處在于,他們更傾向于選擇 Redis、PostgreSQL、Microsoft SQL Server 和 Elasticsearch。

初學(xué)者群體當(dāng)中,MySQL 也并不樂觀,緊隨其后的 MongoDB 位居第二,占比近1/3?!斑@很合理,因為它支持大量的語言和應(yīng)用開發(fā)平臺。”

值得一提的是,正在使用 MySQL 的開發(fā)者同樣也在考慮、希望或想要使用別的數(shù)據(jù)庫工作,下圖展示了調(diào)查結(jié)果。

圖片

圖源:StackOverflow

有 11185 名 MySQL 開發(fā)者想使用 PostgreSQL 工作,以及 9520 名 MySQL 開發(fā)者想使用 MongoDB 工作。

不止 StackOverflow 的報告,根據(jù)最新的 10 月 DB-Engines 流行趨勢上看,也可以看見 MySQL 的受歡迎程度已經(jīng)連續(xù)幾年呈現(xiàn)下滑趨勢。

圖片

圖源:DB-Engines

可以判斷,如果不出意外,同樣在開源關(guān)系型數(shù)據(jù)庫之列的 PostgreSQL ,超越 MySQL 只是時間的問題。

1.MySQL 在停滯

作為“王者”,MySQL 的榮耀之冠是在互聯(lián)網(wǎng)爆發(fā)的年代加冕的。在過去的 20 年間,規(guī)模和效率成為了互聯(lián)網(wǎng)擴張的不宣的“要義”。

經(jīng)過發(fā)展與迭代,將數(shù)據(jù)庫單純作為存儲,把計算任務(wù)交給業(yè)務(wù)服務(wù)器,這種邏輯部署實施起來更為便捷。企業(yè)和工程師們紛紛認(rèn)可了“Linux+Apache+MySQL+PHP”,“LAMP”順理成章地成為了互聯(lián)網(wǎng)開發(fā)的標(biāo)桿模式。

彼時剛剛誕生不久的 MySQL,面向“簡單派”互聯(lián)網(wǎng)而生的簡約風(fēng)格,正逢其時。雖然從功能上看,MySQL 并不如其他數(shù)據(jù)庫占優(yōu)勢,但反而因為沒有提供很多高級功能,使得簡單易用、開源免費的 MySQL,一舉博得了國內(nèi)包括騰訊、阿里巴巴這些后來成為巨頭的互聯(lián)網(wǎng)公司的好感,成為了早期互聯(lián)網(wǎng) OLTP 領(lǐng)域事實上的標(biāo)準(zhǔn)。而相較之下,一直走“學(xué)術(shù)派”路線的 PostgreSQL 一直不溫不火。

2009 年,是 MySQL 迎來命運轉(zhuǎn)折點的一年,甲骨文對剛剛買下 MySQL 的 SUN 出手了。甲骨文面對 MySQL 的興起,不得不說此舉意在采取收購的策略來守好 Oracle 這個大型商業(yè)數(shù)據(jù)庫的護城河。隨后,甲骨文就開始了漲價的套路:大幅抬高了 MySQL 的商業(yè)版價格。

同使用 MySQL 免費版本的開發(fā)者們一樣,MySQL 創(chuàng)始人 Monty 對其前途感到憂心忡忡,他義憤填膺,卻又無可奈何。

即便時隔十?dāng)?shù)年,Monty 仍對此事掛懷,MariaDB 就是最好的證明。

回過頭來看,我們看 MySQL 的興起與流行,永遠(yuǎn)離不開時代語境。正如 Monty 所言:

MySQL 的成功是與時代背景分不開的。當(dāng)時互聯(lián)網(wǎng)已經(jīng)得到廣泛認(rèn)可,每個人都需要這樣的數(shù)據(jù)庫,用它創(chuàng)建互聯(lián)網(wǎng)所需要的數(shù)據(jù)。彼時的技術(shù)巨頭對于互聯(lián)網(wǎng)持觀望態(tài)度,所以這是個有待開發(fā)的藍(lán)海市場。

2.停滯的背后

當(dāng)藍(lán)海變紅,為互聯(lián)網(wǎng)而生的 MySQL 似乎也迎來了停滯時刻。雖說熱度不減,但與同時代關(guān)系型數(shù)據(jù)庫的競爭者 PostgreSQL 逆勢而上的受歡迎程度相比,難免不會讓人擔(dān)憂。

細(xì)究之下,大概有這么幾點原因:

首先,被收購之后,MySQL 的開源精神內(nèi)核被大打折扣。淪為被收購的“后兒子”,不可避免成為邊緣的角色。

據(jù) Monty 回憶,“在甲骨文宣布要收購 Sun 和 MySQL 的時候,我就不相信他們會真正發(fā)掘 MySQL 這份寶貴遺產(chǎn),所以不少優(yōu)秀的程序員與我們決定一起離開,延續(xù) MySQL 的精神?!?/span>

同時,因為 MySQL 而加入到甲骨文的優(yōu)秀員工,同樣得不到足夠的資源和重視。

去年 12 月,Oracle 公司前首席軟件工程師、MySQL 優(yōu)化器團隊成員 Steinar Gunderson 離職,他對自己付諸 5 年心血的 MySQL 來了一通回踩:“你能做的也只有這么多。我和團隊其他人所做的改變使得 MySQL 優(yōu)化器朝著21世紀(jì)初期設(shè)計的方向發(fā)展,并進行了一些不錯的調(diào)整,但這也是它的終點了。”無論公司內(nèi)部如何吹噓,Gunderson 都無法相信 MySQL 會變成一個有競爭力的產(chǎn)品。

可能于甲骨文 MySQL 優(yōu)化團隊成員而言,缺少了前進的想象空間,是難以言表的痛處。甲骨文當(dāng)然也有對 MySQL 花費了精力,但諸如微軟 Oracle 云,進行在線分析處理能力之類的縫縫補補的“操作”,離真正的開源數(shù)據(jù)庫貢獻者的理想有很大差距。

總之,甲骨文收購 MySQL 也許不會停止對于它的研發(fā),但卻已經(jīng)大大消磨了開發(fā)社區(qū)的熱情。

其次,數(shù)據(jù)庫發(fā)展的上下文已經(jīng)發(fā)生了改變,MySQL 的高光窗口期可能真的迎來了終章。如前文所說,MySQL 為當(dāng)時新的網(wǎng)絡(luò)而生,各大網(wǎng)站、移動端的發(fā)展也到了難以逾越的節(jié)點。如今,我們看到行業(yè)的發(fā)展開始向金融、電信、物聯(lián)網(wǎng)、零售、制造等傳統(tǒng)行業(yè)傾斜,這些行業(yè)與二十年前的互聯(lián)網(wǎng)相比,更加注重數(shù)據(jù)可靠性、安全性、規(guī)范性。這些都不是 MySQL 所擅長的。

還有一點,疫情以來,企業(yè)基礎(chǔ)設(shè)施的現(xiàn)代化要求加速提上議程,旨在讓企業(yè)更加靈活,并對快速變化的客戶需求做出反應(yīng)。而承擔(dān)這些項目的全球系統(tǒng)集成商們,往往選擇應(yīng)用最容易部署的技術(shù),從而為其服務(wù)帶來最佳利潤,而這顯然 MySQL 并不在列,原因很簡單,MySQL 是需要付費的,且 MySQL 對于多語言的支持明顯存在自身的瓶頸。

最后,競品環(huán)伺,單就關(guān)系型數(shù)據(jù)庫而言,其市場也在發(fā)生明顯變化。2014 年起,PostgreSQL 迎來復(fù)興時刻,技術(shù)分析師將原因可以歸結(jié)為四點:豐富的功能集、極易擴展、開源、更好的開源許可證。筆者看來最后一點至關(guān)重要。更好的開源許可,背后的意義重大。開源合作的規(guī)模越大,每個人獲益就越多。這也是開源精神的核心所在。

PostgreSQL 采用類似 MIT 的許可協(xié)議,允許開發(fā)人員做任何事情,包括在開源或閉源產(chǎn)品中商用,而 MySQL 的客戶端遵循 GPL 許可協(xié)議,所以開發(fā)人員必須向 Oracle 付費或者將自己的應(yīng)用程序開源。從這個層面講,不管出于商用還是其他,PostgreSQL 都是最有利的選擇。

3.走學(xué)院派路線的 PostgreSQL

在下一個突破口來臨之前,MySQL 不會更加流行。然而在這之前,PostgreSQL 的二度崛起也只是時間問題。

就在 MySQL 發(fā)布不到 14 個月后,PostgreSQL 誕生了。它是由 PostgreSQL Global Development Group 開發(fā)的高級開源 RDBMS,它最初于 1996 年 7 月 8 日發(fā)布,于 1986 年作為 POSTGRES 項目的一部分在美國加州大學(xué)伯克利分校啟動。

PostgreSQL 誕生之初,就被開發(fā)者視為“設(shè)計理念嚴(yán)謹(jǐn)”的“學(xué)院派”。用現(xiàn)在流行的說法:MySQL 是為了解決某個業(yè)務(wù)問題的互聯(lián)網(wǎng)野路子,而 PostgreSQL 做的是“以一打十”的“全棧數(shù)據(jù)庫”。

天生就是一個超融合的系統(tǒng)、成熟、設(shè)計精良、專業(yè)而包容的社區(qū),PostgreSQL 非常有底氣地標(biāo)榜自己是“世界上最先進的開源關(guān)系型數(shù)據(jù)庫”,數(shù)據(jù)分析,時序插件,全文搜索,架構(gòu)和功能等等方面樣樣在行。

前面我們從開源熱情、行業(yè)發(fā)展、商用的角度分析了 MySQL 停滯的原因。這里我們以開發(fā)者的視角,具體列舉一些 PostgreSQL 的好處:

  • 支持多種可用于商業(yè)解決方案的性能優(yōu)化,包括地理空間數(shù)據(jù)支持、無讀鎖并發(fā)等,被廣泛應(yīng)用于大型系統(tǒng);
  • 對于需要執(zhí)行復(fù)雜查詢的系統(tǒng)最為有利;
  • 在商業(yè)智能應(yīng)用程序中表現(xiàn)良好,更適合需要快速讀/寫速度的數(shù)據(jù)分析和數(shù)據(jù)倉庫應(yīng)用程序,因此,它也適用于 OLTP/OLAP 系統(tǒng);
  • 可以在單個產(chǎn)品中存儲結(jié)構(gòu)化和非結(jié)構(gòu)化數(shù)據(jù)類型,它支持大多數(shù)數(shù)據(jù)類型,比如對 JSON 的支持。多年來 PostgreSQL 的最大創(chuàng)新之一是在其 PostgreSQL 9.2 中引入了生成 JSON 數(shù)據(jù)功能。

功能強大也許并不是流行的理由。但開發(fā)者的喜好發(fā)生了變化卻是真是的。

比如,專注軟件開發(fā)者的行業(yè)分析公司 Redmonk 分析師 James Governor 提到,“目前開發(fā)者們有一些 NoSQL 和大數(shù)據(jù)的疲勞”,因此,開發(fā)人員開始使用久經(jīng)考驗的 PostgreSQL 作為 MongoDB 和 Apache Cassandra 的可行替代方案,用于一些關(guān)鍵工作負(fù)載。

另外,云計算公司 Joyent 的解決方案工程總監(jiān) Elijah Zupancic 也提到了文檔的重要性,“PostgreSQL 也得到了開發(fā)者的認(rèn)可,從他們的角度來看,使用它是一種樂趣,其文檔很精彩,數(shù)據(jù)類型反映了開發(fā)人員的工作類型?!?/span>

PostgreSQL 不依賴任何單一供應(yīng)商。單一商業(yè)供應(yīng)商將永遠(yuǎn)無法跟上開源項目在文檔更新等層次上所能提供的變化速度。

4.簡單、容易壓倒一切

回顧 MySQL 的發(fā)展,因互聯(lián)網(wǎng)而生,也成就了互聯(lián)網(wǎng)。那個年代,“簡單”、“容易”壓倒一切。技術(shù)日新月異,但這種背后的邏輯,放到現(xiàn)在依舊適用。

PostgreSQL 可能不是最佳的選擇,但對于企業(yè)決策者而言,它是最便捷容易的那個。企業(yè)內(nèi)部的種種已經(jīng)習(xí)慣了關(guān)系數(shù)據(jù)庫,如果想要放棄昂貴的商業(yè)數(shù)據(jù)庫的管理者而言,PostgreSQL 是一個“簡單的按鈕”。

正如 EDB 首席執(zhí)行官 Ed Boyajian 提到的,大多數(shù)公司都不想提升和改變,但他們正在使用 PostgreSQL 作為他們的綠地,因為他們已經(jīng)擁有內(nèi)部的 SQL/關(guān)系型技能,這些技能是在使用 Oracle、SQL Server 和 DB2 的幾十年中積累起來的。

5.再見,MySQL!

說到底,MySQL 已經(jīng)完成了構(gòu)建互聯(lián)網(wǎng)的使命,因為它的簡單上手;而隨著新的企業(yè)發(fā)展命題的提出:將傳統(tǒng)行業(yè)進行數(shù)字化轉(zhuǎn)型,這就包含“升級基礎(chǔ)設(shè)施”、“上云”、“上物聯(lián)網(wǎng)”等若干子命題,MySQL 的弊端凸顯,這就不是 MySQL 能輕松搞定的范疇了。不管是集成商還是開發(fā)者,選擇更為成熟嚴(yán)謹(jǐn)、設(shè)計精良、更容易成功的 PostgreSQL 也就不難理解了。

圖片

圖源:StackOverflow

過去的近 20 年,MySQL 成為構(gòu)建互聯(lián)網(wǎng)的基石之一,有無數(shù)的開發(fā)者為之夜以繼日,我們?yōu)橹x予應(yīng)有的榮光。如今,開發(fā)者不得不正視 MySQL 的問題:它早已過了體驗巔峰的時刻,而是面臨停滯甚至下墜感的來襲。

數(shù)據(jù)庫的未來是什么?更穩(wěn)定,也更動態(tài)。Monty 如是說。

向前看,企業(yè)和開發(fā)者們面臨著新的穩(wěn)定且動態(tài)的需求,就不得不擁抱未來,就不得不在某個時刻,喊出那句曾經(jīng)有些打趣,現(xiàn)在有些“讖語”味道的嘆息——再見,MySQL!

參考鏈接:

??https://www.infoworld.com/article/3677629/postgres-is-eating-relational.html??

??https://www.zhihu.com/question/20010554/answer/2280773945??

??https://www.36kr.com/p/1957205193170048??

??https://www.zhihu.com/question/31955622/answer/1625152059??

??https://baijiahao.baidu.com/s?id=1738296451765471179???

責(zé)任編輯:薛彥澤 來源: 51CTO
相關(guān)推薦

2019-12-09 11:11:52

LoRaWi-Fi頻段

2023-11-14 07:40:36

阿里云服務(wù)中斷事件

2012-06-08 09:57:25

2017-12-25 23:38:42

2018-02-24 23:19:31

iOSbug蘋果

2022-01-25 10:11:10

紅綠屏蘋果BUG

2011-12-07 10:16:45

Firefox新聞

2016-12-02 08:36:33

蘋果三星科技新聞早報

2020-04-22 15:00:03

iPhone蘋果劉海

2019-03-27 10:54:00

5G運營商設(shè)備制造商

2013-07-11 15:57:35

探路者太空船軟件軟件開發(fā)

2020-12-02 16:30:45

比特幣加密貨幣區(qū)塊鏈

2013-05-20 11:29:11

Windows 8

2016-01-27 17:07:52

VMware

2013-05-06 09:19:10

Firefox火狐瀏覽器

2022-04-12 13:30:56

云計算阿里互聯(lián)網(wǎng)行業(yè)

2010-08-27 10:43:39

馬云

2012-05-21 22:01:09

iOS

2021-02-08 21:19:06

MapstructTypeScriptJava

2009-09-27 10:59:23

UPS系統(tǒng)故障
點贊
收藏

51CTO技術(shù)棧公眾號