工程開發
database-patterns avatar

database-patterns

資料庫設計與交互工具集(SQL/NoSQL)。包含架構設計、Repository 模式實現、查詢優化、遷移管理及交易處理。

簡介

資料庫設計與交互模式技能提供了一個標準化的框架,用於設計、實現和維護穩健的資料訪問層。此技能專為需要構建可擴展持久化解決方案的軟體工程師和後端開發人員設計,同時遵循業界最佳實踐。透過將複雜的資料庫操作抽象化為可重複使用的模式,此技能確保了跨專案的規範性,並最大限度地減少了與資料完整性、競爭條件和效能瓶頸相關的常見問題。

主要功能與特性:

  • 涵蓋從 1NF 到 3NF 的規範化設計協助,以及針對高讀取量分析場景的去規範化策略。
  • 實現 Repository 模式,將業務邏輯與原始資料訪問分離,提高程式碼的可測試性與維護性。
  • 查詢效能優化,包含索引選擇(B-tree、GIN、GiST)、有效的 Join 策略以及 keyset 或基於游標的分頁技術。
  • 事務處理模式,處理 ACID 屬性、併發控制以及高吞吐量環境下的列級鎖定機制。
  • 自動化遷移與表結構指引,包含軟刪除(soft delete)、稽核日誌記錄以及關係映射(一對多、多對多、自參考)的標準模式。

實踐建議與使用說明:

  • 輸入:架構定義、原始 SQL 查詢或 Repository 介面需求。輸出:優化的 SQL 程式碼、TypeScript/Node.js Repository 實現及索引建議。
  • 優先為頻繁出現在 WHERE 子句中的欄位和外鍵建立索引,但應避免對低基數(cardinality)欄位或高寫入頻率的表進行索引。
  • 在執行多步驟操作時,請使用提供的事務處理模版,以確保原子性更新並防止競爭條件。
  • 在 OLTP 系統中,請務必衡量寫入一致性的規範化與讀取效能的去規範化之間的取捨。
  • 確保資料庫遷移指令碼的冪等性(idempotency),以保證跨開發、測試及生產環境部署的安全性。

倉庫統計

Star 數
255
Fork 數
31
Open Issue 數
7
主要語言
TypeScript
預設分支
main
同步狀態
閒置
最近同步時間
2026年4月29日 上午03:33
在 GitHub 查看