現在新的工程師好像對於傳統 DB調教 的專業能力越來越少?
似乎跟後來好用的 nosql 或者 新型態的cloud db 有關
還是這是我的認知錯覺 沒有這回事?
你的觀察是有一定道理的,但也不能一概而論。確實,近年來許多工程師的傳統 DB 調優(Database Tuning)能力變弱,可能跟幾個趨勢有關:
1. NoSQL & Cloud DB 的普及
• NoSQL(如 MongoDB、Cassandra、Firebase) 強調「水平擴展(scale-out)」,工程師往往直接加機器來解決問題,而不是去調整索引、查詢計畫、記憶體分配等傳統 SQL 優化。
• 雲端 DB(如 AWS RDS、Google Cloud Spanner) 提供自動調校(Auto Tuning)與託管式(Managed)服務,讓工程師無需關心 shared_buffers、work_mem 這類低階參數,直接靠 Cloud Provider 的演算法優化。
🔹 影響:
傳統 RDBMS(如 PostgreSQL、MySQL、Oracle)的調校技能變得不再是必要條件,導致許多新進工程師缺乏這方面的經驗。
2. 「開發快、上線快」的現代開發模式
• 敏捷開發(Agile)、微服務(Microservices) 強調快速迭代,開發者更關注 API 設計、應用程式邏輯,而非底層 DB 調優。
• 以前的 DBA(Database Administrator) 負責 SQL 優化,現在很多公司不再專門配 DBA,而是讓全端工程師(Full Stack)自己負責,但這些工程師大多專注應用層,對底層 DB 優化不熟。
🔹 影響:
開發者習慣了「用更好的框架」來解決問題,而不是「優化 SQL」來提高效能。
3. 資料量爆炸,分散式架構成主流
• 以前的系統(傳統 OLTP 應用)通常依賴單一 DB(單機),所以工程師必須透過 SQL 調優來提升效能。
• 現在許多應用程式直接使用 分散式資料庫(如 CockroachDB、TiDB、Vitess),讓系統可以自動切分資料(Sharding),減少單機負載。
🔹 影響:
新一代工程師更關注「如何擴展系統」,而非「如何優化 SQL 查詢」。 他們可能更熟悉 分散式 Cache(Redis)、CQRS 設計模式,但不一定了解 EXPLAIN ANALYZE 怎麼看。
你的認知錯誤嗎?
🔹 不是錯覺,而是趨勢變了:
✅ 老一輩工程師熟悉 SQL 調優,因為當時硬體資源有限,優化 SQL 是必要技能。
✅ 新一代工程師更關注架構設計、NoSQL、Cloud,DB 優化的重要性被削弱了。
✅ DBA 這個角色變少,DB 調優變成「非必要技能」,很多工程師根本沒接觸過 PostgreSQL 深度調校。
但 傳統 SQL 調優還是很重要,尤其在企業級應用(如金融、電商、電信)這些仍然高度依賴 RDBMS 的領域,優化 SQL 查詢仍然能帶來巨大效能提升,只是這門技術變成小眾技能,而不是開發者的標配技能。
未來趨勢?
1. 雲端 AI 調優
• AWS Aurora、Google Cloud SQL 等已經提供 AI 自動調校,未來可能不再需要人工 DBA 來優化參數。
2. Hybrid 架構
• 企業級應用仍然會用傳統 RDBMS,但會搭配 NoSQL、分散式 Cache(如 Redis)。
3. DB Tuning 變成高端技能
• 會 SQL 調優的人變少,但這項技能在高端市場仍然值錢,懂得 PostgreSQL、Oracle、MySQL 深度優化的專家,薪資會更高!
結論
✔ 傳統 DB 調優確實在年輕工程師中變少了,因為現代架構更依賴 NoSQL、雲端服務、自動調優技術。
✔ 但 這並不代表 SQL 調優不重要,而是它成了一項小眾但有價值的專業技能,特別是在高效能系統(金融、電商、醫療、電信)中。
✔ 如果你有這方面的能力,那你在這個領域的價值會比一般開發者更高!