首頁
使用 Rust 建構 PostgreSQL 相容資料庫:用於準確選擇性估計的直方圖統計
Vaultgres 旅程第八部分:深入探討直方圖統計。建構等深直方圖、處理偏斜資料、多欄位統計,以及在基於成本的最佳化中使用直方圖進行準確的選擇性估計。
使用 Rust 建構 PostgreSQL 相容資料庫:帶統計資料的基於成本的查詢最佳化器
Vaultgres 旅程第七部分:建構基於成本的查詢最佳化器。深入探討統計資料收集、成本模型、帶動態規劃的連線順序,以及索引選擇。
使用 Rust 建構 PostgreSQL 相容資料庫:綜合 SQL 解析器(DDL、DML、查詢)
Vaultgres 旅程第六部分:從頭建構 SQL 解析器。深入探討詞法分析、遞歸下降解析、DDL/DML/查詢的 AST 設計,以及運算符優先級處理。
使用 Rust 建構 PostgreSQL 相容資料庫:通訊協定與結果集序列化
Vaultgres 旅程第五部分:實作 PostgreSQL 通訊協定。深入探討訊息框架、啟動握手、擴充查詢協定,以及序列化 psql 和驅動程式能理解的結果集。
使用 Rust 建構 PostgreSQL 相容資料庫:WAL 與 ARIES 崩潰恢復
Vaultgres 旅程第四部分:實作預寫日誌和 ARIES 恢復演算法。深入探討持久性、檢查點,以及讓資料庫從崩潰中恢復的三階段恢復。
使用 Rust 建構 PostgreSQL 相容資料庫:MVCC 與交易管理
Vaultgres 旅程第三部分:實作 MVCC 以實現非阻塞讀取和快照隔離。深入探討交易 ID、可見性規則、VACUUM,以及交易 ID 環繞的噩夢。
使用 Rust 建構 PostgreSQL 相容資料庫:頁面式儲存與緩衝池
為何我要用 Rust 建構 Vaultgres——一個 PostgreSQL 相容資料庫——來探索資料庫內部機制。深入探討頁面式儲存、緩衝池管理,以及在 AI 輔助開發下實作 WAL 相容儲存的挑戰。
按需環境(第三篇):替代生產力加速器
Environment on Demand 三部曲之最終篇。探討替代方案如 mock servers、feature flags、dev containers 和 CI/CD 優化。學習為你的團隊選擇正確的加速器。
按需環境(第一篇):架構與實現
Environment on Demand 三部曲之首篇。了解 EoD 是什麼、如何使用 GitOps 架構設計它,以及它的優勢與挑戰。另外探討:為什麼 AI 輔助編碼讓資源配置成為新的瓶頸。
深入瞭解 PostgreSQL 平行查詢執行:多核心效能
深入探討 PostgreSQL 平行查詢執行——Gather 節點、平行 worker 程序與多核心處理如何加速大型表掃描、雜湊連接與聚合運算。瞭解何時使用平行化能提升效能,何時會造成反效果,以及如何調整設定。
深入理解 PostgreSQL 的 Volcano 模型:迭代器執行架構
深入探討 Volcano 模型——PostgreSQL 的基礎執行架構。了解 Next()/GetNext() 如何驅動每個查詢、為什麼逐列處理很重要,以及向量化何時打破規則。
理解 RTGS:從批次作業噩夢到連續結算
在 RTGS 普及之前,我們基本上是靠著希望和夜間批次作業的勇氣來運行支付系統。想像一下:你是一名中型銀端的 on-call DevOps / 中介軟體工程師。