跳到主要内容

PostgreSQL:关系型核心 (Relational Core)

PostgreSQL 16 是 XBlade Studio 的核心账本系统,负责存储高价值、强一致性的业务数据。

1. 核心表结构

1.1 用户与认证 (User & Auth)

users

记录用户的基本信息及登录状态。

  • id: UUID (Primary Key)
  • address: VARCHAR(42) (钱包地址,全局唯一)
  • nonce: BIGINT (签名计数器,防止重放攻击)
  • referral_code: VARCHAR(16) (用户生成的唯一邀请码)

1.2 资产与资金 (Assets)

balances

存储用户各个币种的资产状况。

  • user_address: VARCHAR(42)
  • token: VARCHAR(42) (代币合约地址)
  • available: DECIMAL(36, 18) (前端显示的可操作余额)
  • frozen: DECIMAL(36, 18) (正在运行中的订单或持仓保证金占用的金额)

deposits & withdrawals

  • 分别记录充值的交易哈希 (tx_hash) 和提现的状态 (status)、后端授权签名 (backend_signature)。

2. 交易业务 (Trade Business)

orders

所有历史及活跃订单。

  • id: UUID
  • symbol: 交易对(如 BTCUSDT)
  • side: buy / sell
  • order_type: limit / market
  • status: pending, open, filled, cancelled, rejected
  • amount / price: 委托量与委托价

positions

用户的持仓明细。

  • symbol: 交易对
  • size: 持仓大小
  • entry_price: 入场均价
  • liquidation_price: 预计强平价
  • margin: 当前注入的保证金

3. 邀请与收益 (Referral)

  • referral_codes: 存储邀请码的统计信息。
  • referral_relations: 建立邀请人与被邀请人的二级关系网。
  • referral_earnings: 每一笔成交产生的手续费返佣流水,支持 claimed 状态查询。

4. 索引优化

系统在 user_addresssymbolstatus 等高频查询字段上均建立了索引,具体可参考 migrations/0007_performance_indexes.sql