schema.sql 4.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105
  1. CREATE TABLE IF NOT EXISTS realtime_control_daily_state (
  2. control_date DATE NOT NULL PRIMARY KEY,
  3. morning_recovery_done BOOLEAN NOT NULL DEFAULT FALSE,
  4. cutoff_done BOOLEAN NOT NULL DEFAULT FALSE,
  5. last_observed_partition VARCHAR(20) DEFAULT NULL,
  6. last_observed_cpm DECIMAL(12, 4) DEFAULT NULL,
  7. last_decision VARCHAR(32) DEFAULT NULL,
  8. last_inventory_refresh_at DATETIME DEFAULT NULL,
  9. last_evaluated_at DATETIME DEFAULT NULL,
  10. created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
  11. updated_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
  12. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='实时CPM调控每日状态';
  13. CREATE TABLE IF NOT EXISTS realtime_control_ad_state (
  14. account_id BIGINT NOT NULL,
  15. adgroup_id BIGINT NOT NULL,
  16. adgroup_name VARCHAR(255) DEFAULT NULL,
  17. bid_field VARCHAR(32) NOT NULL,
  18. base_bid_fen INT NOT NULL,
  19. boosted_date DATE DEFAULT NULL,
  20. paused_by_strategy BOOLEAN NOT NULL DEFAULT FALSE,
  21. pause_reason VARCHAR(32) DEFAULT NULL,
  22. operator_pause_mode VARCHAR(32) DEFAULT NULL,
  23. operator_resume_at DATETIME DEFAULT NULL,
  24. operator_command_id VARCHAR(64) DEFAULT NULL,
  25. operator_paused_from_status VARCHAR(50) DEFAULT NULL,
  26. operator_paused_at DATETIME DEFAULT NULL,
  27. last_action VARCHAR(32) DEFAULT NULL,
  28. last_action_at DATETIME DEFAULT NULL,
  29. last_seen_at DATETIME DEFAULT NULL,
  30. created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
  31. updated_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  32. PRIMARY KEY (account_id, adgroup_id),
  33. KEY idx_strategy_pause (paused_by_strategy),
  34. KEY idx_operator_pause (operator_pause_mode, operator_resume_at),
  35. KEY idx_boosted_date (boosted_date),
  36. KEY idx_last_seen (last_seen_at)
  37. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='实时CPM调控广告基准与状态';
  38. CREATE TABLE IF NOT EXISTS realtime_control_action_log (
  39. id BIGINT NOT NULL AUTO_INCREMENT PRIMARY KEY,
  40. run_id VARCHAR(36) NOT NULL,
  41. control_date DATE NOT NULL,
  42. observed_partition VARCHAR(20) DEFAULT NULL,
  43. observed_cpm DECIMAL(12, 4) DEFAULT NULL,
  44. decision VARCHAR(32) NOT NULL,
  45. account_id BIGINT NOT NULL,
  46. adgroup_id BIGINT NOT NULL,
  47. adgroup_name VARCHAR(255) DEFAULT NULL,
  48. bid_field VARCHAR(32) DEFAULT NULL,
  49. base_bid_fen INT DEFAULT NULL,
  50. before_bid_fen INT DEFAULT NULL,
  51. target_bid_fen INT DEFAULT NULL,
  52. before_status VARCHAR(50) DEFAULT NULL,
  53. target_status VARCHAR(50) DEFAULT NULL,
  54. apply_mode BOOLEAN NOT NULL DEFAULT FALSE,
  55. execution_status VARCHAR(32) NOT NULL,
  56. error_message TEXT DEFAULT NULL,
  57. created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
  58. KEY idx_run_id (run_id),
  59. KEY idx_control_date (control_date),
  60. KEY idx_adgroup (account_id, adgroup_id),
  61. KEY idx_execution_status (execution_status)
  62. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='实时CPM调控动作审计';
  63. CREATE TABLE IF NOT EXISTS operator_command (
  64. command_id VARCHAR(64) NOT NULL PRIMARY KEY,
  65. source_message_id VARCHAR(128) NOT NULL,
  66. chat_id VARCHAR(128) NOT NULL,
  67. sender_open_id VARCHAR(128) NOT NULL,
  68. sender_name VARCHAR(255) DEFAULT NULL,
  69. action VARCHAR(32) NOT NULL,
  70. scope_type VARCHAR(32) NOT NULL,
  71. target_account_ids TEXT NOT NULL,
  72. status VARCHAR(32) NOT NULL,
  73. preview_account_count INT NOT NULL DEFAULT 0,
  74. preview_ad_count INT NOT NULL DEFAULT 0,
  75. expires_at DATETIME DEFAULT NULL,
  76. confirmed_at DATETIME DEFAULT NULL,
  77. executed_at DATETIME DEFAULT NULL,
  78. error_message TEXT DEFAULT NULL,
  79. created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
  80. updated_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  81. UNIQUE KEY uk_operator_source_message (source_message_id),
  82. KEY idx_operator_status_expiry (status, expires_at),
  83. KEY idx_operator_sender (sender_open_id, created_at)
  84. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='飞书运营控制命令';
  85. CREATE TABLE IF NOT EXISTS operator_command_item (
  86. id BIGINT NOT NULL AUTO_INCREMENT PRIMARY KEY,
  87. command_id VARCHAR(64) NOT NULL,
  88. account_id BIGINT NOT NULL,
  89. audience_name VARCHAR(200) DEFAULT NULL,
  90. adgroup_id BIGINT DEFAULT NULL,
  91. adgroup_name VARCHAR(255) DEFAULT NULL,
  92. before_status VARCHAR(50) DEFAULT NULL,
  93. target_status VARCHAR(50) DEFAULT NULL,
  94. readback_status VARCHAR(50) DEFAULT NULL,
  95. execution_status VARCHAR(32) NOT NULL,
  96. error_message TEXT DEFAULT NULL,
  97. created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
  98. KEY idx_operator_item_command (command_id),
  99. KEY idx_operator_item_ad (account_id, adgroup_id),
  100. KEY idx_operator_item_status (execution_status)
  101. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='飞书运营控制命令广告明细';