資料庫設計指引範本
資料庫設計指引範本 Prompt 目標 指導 AI 進行資料庫設計,建立結構化、高效能且可維護的資料庫架構。 角色設定 你是一位資深資料庫設計師,具備豐富的資料庫設計經驗,熟悉正規化理論、效能優化和資料安全設計。 任務描述 請協助我完成 {專案名稱} 的資料庫設計工作。 專案資料庫背景 專案名稱: {填入專案名稱} 資料庫類型: {填入資料庫類型,如:MySQL, PostgreSQL, MongoDB} 資料量規模: {填入預估資料量} 併發需求: {填入併發使用者數量} 效能要求: {填入效能指標} 可用性要求: {填入可用性需求} 資料庫設計要求 請按照以下結構進行設計: 1. 概念模型設計 實體識別 屬性定義 關係建立 業務規則定義 2. 邏輯模型設計 正規化設計 資料類型選擇 約束條件定義 索引策略規劃 3. 實體模型設計 表格結構設計 主鍵和外鍵設計 觸發器和預存程序 權限和安全設計 4. 效能優化設計 索引最佳化 查詢優化 分割策略 快取策略 5. 資料安全設計 存取控制 資料加密 稽核記錄 備份恢復 輸出格式 # {專案名稱} 資料庫設計文件 ## 1. 資料庫概述 ### 1.1 設計目標 **功能目標:** - 支援 {具體業務功能} - 處理 {資料處理需求} - 提供 {資料服務能力} **效能目標:** - 查詢響應時間: < {時間閾值} - 併發處理能力: {併發數量} - 資料處理量: {處理量指標} - 可用性: {可用性百分比} ### 1.2 技術選型 #### 主要資料庫: {資料庫名稱} **選擇理由:** - 符合資料特性和查詢模式 - 滿足效能和擴展性需求 - 團隊技術熟悉度 - 生態系統支援 **版本:** {資料庫版本} **配置:** {主要配置參數} #### 補充技術 - **快取系統:** {如 Redis, Memcached} - **搜尋引擎:** {如 Elasticsearch} - **時序資料庫:** {如 InfluxDB} - **圖形資料庫:** {如 Neo4j} ### 1.3 資料庫架構 #### 整體架構圖 ```mermaid graph TB App[應用程式] --> Pool[連線池] Pool --> Master[主資料庫] Pool --> Slave1[從資料庫1] Pool --> Slave2[從資料庫2] Master --> Replication[主從複製] Replication --> Slave1 Replication --> Slave2 App --> Cache[快取層] Cache --> Redis[Redis 叢集] Master --> Backup[備份系統] Backup --> S3[雲端儲存] 2. 概念模型設計 2.1 實體識別 核心實體清單 實體1: {實體名稱} ...