opencode-workflow/skills/storage-knowledge/README.zh-TW.md

31 lines
1.6 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 儲存知識 (Storage Knowledge) 知識合約指南
## 概述
`storage-knowledge` 是知識合約,用來提供儲存技術選擇的原則與框架。涵蓋關聯式、寬列式、文件式與鍵值式儲存,並提供 Use-When 與 Avoid-When 判斷標準。供 `design-architecture` 在做儲存決策時參考。
## 核心原則
儲存選擇必須由 PRD 中識別的查詢模式、寫入模式、一致性需求與規模預期驅動。不要因為熟悉、時尚或覺得可能需要就選擇儲存技術。
## 儲存選擇標準
選擇儲存前,必須先回答:
1. 主要查詢模式是什麼?(按鍵、按範圍、按複雜過濾、全文搜索)
2. 寫入模式是什麼?(寫入為主、更新為主、僅附加)
3. 需要什麼一致性Strong、Eventual、Tunable
4. 預期規模是多少?(每天列數、總列數、生長率)
5. 存取延遲需求是什麼?(毫秒、秒、最終一致)
6. 與其他實體的關係是什麼?(外鍵、嵌套文件、圖形遍歷)
## 儲存類型
- **Relational (PostgreSQL)**:強一致性、複雜 JOIN、交易完整性
- **Wide-Column (Cassandra)**:高寫入吞吐量、查詢優先建模、線性水平擴展
- **Document (MongoDB)**文件中心資料、Schema 彈性、豐富查詢能力
- **Key-Value (Redis)**快取、速率限制、Idempotency Keys、工作階段
## 知識合約職責
- 提供各儲存技術的比較與選擇框架
- 不替 PRD 做最終儲存選擇
## 不應做的事
- 不替系統選擇特定儲存技術
- 不基於時尚或流行選擇儲存
- 不假設某種儲存適合所有場景