FSTS 邏輯資料模型(新系統)

V1.0 呈核版。定義新一代複委託系統資料模型基線,作為資料庫設計、程式開發、介接欄位定義、資料移轉與稽核追蹤之共同依據。1

與既有 FSTS DB Schema 的區別

  • FSTS DB Schema(PDM_FSTS)現況:基於 COBOL FD 轉檔的 14 個 MSSQL 表(FSIOFHIOCUST 等)
  • 本頁未來目標:新系統 8 大資料域、17 個主幹表的邏輯模型TRD_ORDERTRD_EXECUTIONAST_POSITION 等)

兩者在資料移轉(資料移轉計畫)時對映,詳見 §九 資料移轉欄位要求。回到 Planning 總覽

文件目的

1

本文件重點不在列舉所有最終欄位,而在先建立:

  • 正確的資料主體
  • 主外鍵關係
  • 欄位命名規範
  • 核心索引策略
  • 稽核追蹤欄位標準

平台前提:MSSQL / .NET Core / UNIX(Linux)。編製單位:凌群電腦/專案規劃團隊。

五條設計原則

2

  1. 以「客戶-帳戶-商品-市場-委託-成交-交割-資產-會計」為主幹,不以舊系統畫面欄位直接決定資料結構
  2. 主檔與交易檔分離、即時資料與歷史資料分離、業務表與稽核/介接表分離
  3. 所有關鍵交易表均需具備不可變主鍵、業務版本號、稽核欄位與來源追蹤欄位
  4. 多市場、多幣別、多時區為預設不可把 TW/US 單一市場規則硬寫進欄位
  5. 資料模型需支援平行測試、重跑、重算與切換回復,因此事件表與快照表要並存

8 大邏輯資料域

34

邏輯資料域主要資料表與其他資料域之關係重要性
MasterCUS_CUSTOMERCUS_ACCOUNTPRD_SECURITYMKT_MARKET作為所有交易、交割、報表共用主體最高
Order MgmtTRD_ORDERTRD_ORDER_EVENT承接前台、FIX、風控與稽核最高
ExecutionTRD_EXECUTIONTRD_ALLOCATION承上啟下連到清算與費用最高
Position & CashAST_CASH_BALANCEAST_POSITIONAST_BUYING_POWER下單前風控與客戶資產查詢最高
SettlementSTL_TRADE_SETTLEMENTSTL_CASH_FLOWFEE_CHARGE形成應收應付與會計基礎最高
Corp ActionCA_EVENTCA_ALLOCATION影響客戶權益與庫存
IntegrationINT_MESSAGE_LOGINT_FIX_SESSION支撐多上手多介接治理最高
Audit & ComplianceSEC_AUDIT_LOGSEC_APPROVAL_TASK法遵、遮罩、四眼原則最高

17 個核心資料表

56

主資料(Master)

表名中文名稱主鍵重要 FK優先級備註
MKT_MARKET市場主檔market_idP0市場、時區、預設幣別、交易日
MKT_EXCHANGE交易所主檔P0交易所與市場關聯(僅 12 列出;13 未展開)
PRD_SECURITY商品主檔security_idmarket_idP0股票/ETF/ADR/債券/基金
CUS_CUSTOMER客戶主檔customer_idP0KYC/QI 法遵屬性
CUS_ACCOUNT客戶帳戶主檔account_idcustomer_idP0一客多帳、交割屬性、通路權限
ORG_BRANCH分公司主檔P1分公司/營業員歸屬(僅 12 列出)

交易(Order / Execution)

表名中文名稱主鍵重要 FK優先級備註
TRD_ORDER委託主檔order_idaccount_idsecurity_idP0OMS 核心;新單/改單/刪單
TRD_ORDER_EVENT委託事件檔order_event_idorder_idP0狀態流轉與稽核留痕
TRD_EXECUTION成交檔exec_idorder_idP0FIX/執行回報
TRD_ALLOCATION成交分配檔P1母子單、客戶分配、均價分攤(僅 12 列出)

風控資產

表名中文名稱主鍵重要 FK優先級備註
AST_CASH_BALANCE現金餘額cash_balance_idaccount_idP0多幣別、圈存、未交割
AST_POSITION庫存檔position_idaccount_idsecurity_idP0持股、可賣、成本
AST_BUYING_POWER可交易額度快照P0下單前風控/授信試算(僅 12 列出)

清算帳務

表名中文名稱主鍵重要 FK優先級備註
STL_TRADE_SETTLEMENT清算檔settlement_idexec_idP0成交轉交割;應收應付
STL_CASH_FLOW現金流水P0入出金、款、退款(僅 12 列出)
FEE_CHARGE費用檔charge_idexec_idP0手續費、上手費、稅費;費率引擎

企業行動

表名中文名稱主鍵重要 FK優先級備註
CA_EVENT公司行動主檔ca_event_idsecurity_idP1配息、拆股、合併、收購
CA_ALLOCATION公司行動分派ca_alloc_idca_event_idaccount_idP1客戶權益分派與通知

介接 / 稽核 / 會計報表

表名中文名稱主鍵重要 FK優先級備註
INT_MESSAGE_LOG介接訊息日誌message_log_idP0FIX/API/SFTP 收送追蹤
INT_FIX_SESSIONFIX Session 狀態fix_session_idP0序號、連線、健康狀態
SEC_AUDIT_LOG稽核紀錄audit_log_idP0誰在何時改了什麼;不可否認
SEC_APPROVAL_TASK覆核工作單P1四眼原則與簽核軌跡(僅 12 列出)
ACC_GL_ENTRY會計分錄檔gl_entry_idsource_txn_idP1來源交易轉分錄;總帳介接
RPT_STATEMENT_QUEUE報表製作佇列P2月結單/通知派送(僅 12 列出)

核心主外鍵關係定義

7

父鍵子鍵關係說明
CUS_CUSTOMER.customer_idCUS_ACCOUNT.customer_id1:N一位客戶可對應多個複委託帳戶
MKT_MARKET.market_idPRD_SECURITY.market_id1:N市場與商品關聯
CUS_ACCOUNT.account_idTRD_ORDER.account_id1:N帳戶提出多筆委託
TRD_ORDER.order_idTRD_ORDER_EVENT.order_id1:N委託狀態事件流
TRD_ORDER.order_idTRD_EXECUTION.order_id1:N委託對應多筆成交
TRD_EXECUTION.exec_idFEE_CHARGE.exec_id1:N成交衍生費用與稅費
TRD_EXECUTION.exec_idSTL_TRADE_SETTLEMENT.exec_id1:1/N成交轉清算,可拆多腿
CUS_ACCOUNT.account_idAST_CASH_BALANCE.account_id1:N帳戶別幣別餘額
CUS_ACCOUNT.account_idAST_POSITION.account_id1:N帳戶持股明細
CA_EVENT.ca_event_idCA_ALLOCATION.ca_event_id1:N公司行動對客戶分派

欄位命名規範與共通欄位

8

命名規則

  • 主鍵一律使用 *_id,採不可變 Surrogate Key;對外業務編號另設 *_no
  • 日期/時間*_dt(日期)、*_ts(時間戳);交易時間另保留來源時區
  • 狀態碼*_status_cd;理由/原因:*_reason_cd布林值:is_*has_*
  • 所有核心表均標準帶入稽核欄位create_tscreate_byupdate_tsupdate_bysource_systembatch_noversion_nois_deleted

共通欄位型別

8

欄位型別建議適用範圍用途
customer_idBIGINT主/交易客戶主鍵
account_idBIGINT主/交易帳戶主鍵
security_idBIGINT主/交易商品主鍵
market_idVARCHAR(20)市場代碼
order_noVARCHAR(40)交易業務委託編號
exec_noVARCHAR(40)交易業務成交編號
biz_dtDATE交易/報表業務日
trade_tsDATETIME2(3)交易交易時間戳
ccy_cdCHAR(3)主/帳務幣別 ISO Code
amount_amtDECIMAL(19,6)帳務金額欄位
qtyDECIMAL(19,6)交易/資產數量欄位
price_amtDECIMAL(19,8)交易價格欄位
version_noINT核心表樂觀鎖/版本控管

核心資料表欄位範本

9

TRD_ORDER

欄位型別說明
order_idBIGINT PK內部主鍵
order_noVARCHAR(40) UQ業務委託編號
account_idBIGINT FK客戶帳戶
security_idBIGINT FK商品主檔
side_cdCHAR(1)買/賣
order_type_cdVARCHAR(20)委託型態
limit_price_amtDECIMAL(19,8)委託價格
order_qtyDECIMAL(19,6)委託數量
order_status_cdVARCHAR(20)委託狀態
source_channel_cdVARCHAR(20)通路來源
route_broker_idVARCHAR(30)上手/路由
orig_order_idBIGINT改單原始主鍵
trade_tsDATETIME2(3)委託時間

TRD_EXECUTION

欄位型別說明
exec_idBIGINT PK成交主鍵
exec_noVARCHAR(40) UQ成交編號
order_idBIGINT FK來源委託
exec_qtyDECIMAL(19,6)成交數量
exec_price_amtDECIMAL(19,8)成交價格
exec_tsDATETIME2(3)成交時間
exec_status_cdVARCHAR(20)成交狀態
counterparty_cdVARCHAR(30)上手/執行來源

STL_TRADE_SETTLEMENT

欄位型別說明
settlement_idBIGINT PK清算主鍵
exec_idBIGINT FK來源成交
settle_dtDATE交割日
gross_amtDECIMAL(19,6)成交總額
fee_amtDECIMAL(19,6)手續費
tax_amtDECIMAL(19,6)稅費
net_amtDECIMAL(19,6)淨額
settlement_status_cdVARCHAR(20)交割狀態

必填核心欄位(來自 13 號工作簿)

10

表名欄位型別建議必填索引用途備註
TRD_ORDERorder_idBIGINTYPK內部主鍵不可變 ID
TRD_ORDERorder_noVARCHAR(40)YUQ業務委託編號對外追蹤
TRD_ORDERaccount_idBIGINTYIDX委託帳戶客戶主體
TRD_ORDERsecurity_idBIGINTYIDX商品主體商品關聯
TRD_ORDERorder_status_cdVARCHAR(20)YIDX委託狀態狀態機
TRD_ORDERtrade_tsDATETIME2(3)YIDX委託時間排序/查詢
TRD_EXECUTIONexec_idBIGINTYPK成交主鍵不可變 ID
TRD_EXECUTIONorder_idBIGINTYIDX來源委託關聯委託
TRD_EXECUTIONexec_qtyDECIMAL(19,6)Y成交數量可分筆
TRD_EXECUTIONexec_price_amtDECIMAL(19,8)Y成交價格多市場精度
AST_CASH_BALANCEccy_cdCHAR(3)YIDX幣別ISO 4217
AST_CASH_BALANCEavailable_amtDECIMAL(19,6)Y可用金額圈存後餘額
AST_POSITIONholding_qtyDECIMAL(19,6)Y持股數量庫存主體
STL_TRADE_SETTLEMENTsettle_dtDATEYIDX交割日T+N
SEC_AUDIT_LOGsource_systemVARCHAR(30)YIDX來源系統追溯
SEC_AUDIT_LOGversion_noINTY版本號樂觀鎖/重算

索引、分割與歷史資料策略

11

  • TRD_ORDERTRD_EXECUTIONSTL_TRADE_SETTLEMENT 建議以 biz_dttrade_ts 為主要分割依據,支援高筆數查詢與封存
  • 即時查詢索引優先配置:
    • account_id + biz_dt
    • order_no
    • exec_no
    • security_id + account_id
  • 大表歷史資料採熱/溫/冷分層
    • 近 12 個月在線
    • 13–36 個月近線
    • 36 個月以上封存倉
  • INT_MESSAGE_LOGSEC_AUDIT_LOG 不與核心交易表共用檔案群組,避免 IO 互相干擾

資料移轉與平行測試欄位要求

12

為支援舊系統轉換與雙軌平行,本專案建議所有核心表保留:

  • legacy_system_cd — 舊系統代號
  • legacy_key_1 / legacy_key_2 — 舊系統主鍵(複合主鍵可佔 2 欄)
  • migration_batch_no — 試轉批次號
  • recon_status_cd — 平行比對狀態

試轉、差異比對與切換回復使用。

另建議設置專用追蹤表

表名用途
RECON_DIFF_LOG記錄平行差異
MIGRATION_LOAD_LOG記錄試轉結果與錯誤明細

資料移轉計畫 §試轉/平行測試 相呼應;與 驗收矩陣 §D01 資料移轉(三輪試轉)為同一控制點。

Review 結論

13

資料模型是本案成敗真正的護城河。

若資料模型做對,FIX/API/報表/移轉都能在同一套語意上穩定演進;若資料模型做錯,後續只會以大量介面特例與補丁維持運作。

本文件已將主體模型、命名規範、主外鍵關係、核心欄位與分層策略拉到可審查層級。建議下一步由 SA/DBA 團隊接續產出實體資料表 DDL 草案、索引單與容量估算

相關頁面

補充資訊

2026-04-23 合併:無 prefix 版本 raw 同步

Source repo 新增無編號 prefix 的同主題 raw(資料字典 無 prefix 版content_hash: sha256:1a899ef8b3a3),與 12 號資料字典內容等價、排版略異(資料表欄位 table 格式差別)。已加入本頁 sources;事實陳述仍以 12 號版 heading anchor 為主。


參考資料

Footnotes

  1. 12 資料字典 §一 文件目的 2

  2. 12 資料字典 §二 設計原則

  3. 12 資料字典 §三 邏輯資料域

  4. 13 工作簿 §ERD_Domains

  5. 12 資料字典 §四 資料域與主要資料表

  6. 13 工作簿 §Table_List

  7. 12 資料字典 §五 主外鍵關係

  8. 12 資料字典 §六 命名規範 2

  9. 12 資料字典 §七 核心表範本

  10. 13 工作簿 §Core_Columns

  11. 12 資料字典 §八 索引與分割

  12. 12 資料字典 §九 資料移轉欄位

  13. 12 資料字典 §十 Review 結論