Files
yrtv/docs/player_profile_data_reorganization.md
2026-01-28 17:00:47 +08:00

52 KiB

玩家档案数据全面分析与重组方案

文档日期: 2026-01-28
适用范围: YRTV Player Profile System
版本: v1.0


目录

  1. 完整数据清单
  2. 当前问题分析
  3. 重组方案
  4. Schema优化建议
  5. 实施计划

1. 完整数据清单

1.1 数据仪表板区域 (Dashboard - Top Section)

显示标签 指标键 计算方法 L3列名 L2来源表 UI位置
Rating (评分) basic_avg_rating AVG(rating) basic_avg_rating fact_match_players.rating Dashboard Card 1
K/D Ratio (击杀比) basic_avg_kd AVG(kd_ratio) basic_avg_kd fact_match_players.kd_ratio Dashboard Card 2
ADR (场均伤害) basic_avg_adr AVG(adr) basic_avg_adr fact_match_players.adr Dashboard Card 3
KAST (贡献率) basic_avg_kast AVG(kast) basic_avg_kast fact_match_players.kast Dashboard Card 4

1.2 图表区域 (Charts Section)

1.2.1 六维雷达图 (Radar Chart)

维度名称 指标键 计算方法 L3列名 UI位置
Aim (BAT) score_bat 加权标准化: 25% Rating + 20% KD + 15% ADR + 10% DuelWin + 10% HighEloKD + 20% 3K score_bat Radar Axis 1
Clutch (HPS) score_hps 加权标准化: 25% 1v3+ + 20% MatchPtWin + 20% ComebackKD + 15% PressureEntry + 20% Rating score_hps Radar Axis 2
Pistol (PTL) score_ptl 加权标准化: 30% PistolKills + 30% PistolWin + 20% PistolKD + 20% PistolUtil score_ptl Radar Axis 3
Defense (SIDE) score_tct 加权标准化: 35% CT_Rating + 35% T_Rating + 15% CT_FK + 15% T_FK score_tct Radar Axis 4
Util (UTIL) score_util 加权标准化: 35% UsageRate + 25% NadeDmg + 20% FlashTime + 20% FlashEnemy score_util Radar Axis 5
Stability (STA) score_sta 加权标准化: 30% (100-Volatility) + 30% LossRating + 20% WinRating + 10% TimeCorr score_sta Radar Axis 6
Economy (ECO) score_eco 加权标准化: 50% Dmg/$1k + 50% EcoKPR score_eco Radar Axis 7
Pace (PACE) score_pace 加权标准化: 50% (100-FirstContactTime) + 50% TradeKillRate score_pace Radar Axis 8

1.2.2 趋势图 (Trend Chart)

数据项 来源 计算方法 UI位置
Rating走势 L2: fact_match_players 按时间排序的rating值(最近20场) Line Chart - Main Data
Carry线(1.5) 静态基准线 固定值 1.5 Line Chart - Reference
Normal线(1.0) 静态基准线 固定值 1.0 Line Chart - Reference
Poor线(0.6) 静态基准线 固定值 0.6 Line Chart - Reference

1.3 详细数据面板 (Detailed Stats Panel)

1.3.1 核心性能指标 (Core Performance)

显示标签 指标键 计算方法 L3列名 L2来源 UI行位置
Rating (评分) basic_avg_rating AVG(rating) basic_avg_rating fact_match_players.rating Row 1, Col 1
KD Ratio (击杀比) basic_avg_kd AVG(kd_ratio) basic_avg_kd fact_match_players.kd_ratio Row 1, Col 2
KAST (贡献率) basic_avg_kast AVG(kast) basic_avg_kast fact_match_players.kast Row 1, Col 3
RWS (每局得分) basic_avg_rws AVG(rws) basic_avg_rws fact_match_players.rws Row 1, Col 4
ADR (场均伤害) basic_avg_adr AVG(adr) basic_avg_adr fact_match_players.adr Row 1, Col 5

1.3.2 枪法与战斗能力 (Gunfight)

显示标签 指标键 计算方法 L3列名 L2来源 UI行位置
Avg HS (场均爆头) basic_avg_headshot_kills SUM(headshot_count) / matches basic_avg_headshot_kills fact_match_players.headshot_count Row 2, Col 1
HS Rate (爆头率) basic_headshot_rate SUM(headshot_count) / SUM(kills) basic_headshot_rate fact_match_players.headshot_count, kills Row 2, Col 2
Assists (场均助攻) basic_avg_assisted_kill SUM(assisted_kill) / matches basic_avg_assisted_kill fact_match_players.assisted_kill Row 2, Col 3
AWP Kills (狙击击杀) basic_avg_awp_kill SUM(awp_kill) / matches basic_avg_awp_kill fact_match_players.awp_kill Row 2, Col 4
Jumps (场均跳跃) basic_avg_jump_count SUM(jump_count) / matches basic_avg_jump_count fact_match_players.jump_count Row 2, Col 5
Knife Kills (场均刀杀) basic_avg_knife_kill COUNT(knife_kills) / matches basic_avg_knife_kill fact_round_events (weapon=knife) Row 2, Col 6
Zeus Kills (电击枪杀) basic_avg_zeus_kill COUNT(zeus_kills) / matches basic_avg_zeus_kill fact_round_events (weapon=zeus) Row 2, Col 7
Zeus Buy% (起电击枪) basic_zeus_pick_rate AVG(has_zeus) basic_zeus_pick_rate fact_round_player_economy.has_zeus Row 2, Col 8

1.3.3 目标控制 (Objective)

显示标签 指标键 计算方法 L3列名 L2来源 UI行位置
MVP (最有价值) basic_avg_mvps SUM(mvp_count) / matches basic_avg_mvps fact_match_players.mvp_count Row 3, Col 1
Plants (下包) basic_avg_plants SUM(planted_bomb) / matches basic_avg_plants fact_match_players.planted_bomb Row 3, Col 2
Defuses (拆包) basic_avg_defuses SUM(defused_bomb) / matches basic_avg_defuses fact_match_players.defused_bomb Row 3, Col 3
Flash Assist (闪光助攻) basic_avg_flash_assists SUM(flash_assists) / matches basic_avg_flash_assists fact_match_players.flash_assists Row 3, Col 4

1.3.4 开局能力 (Opening Impact)

显示标签 指标键 计算方法 L3列名 L2来源 UI行位置
First Kill (场均首杀) basic_avg_first_kill SUM(first_kill) / matches basic_avg_first_kill fact_match_players.first_kill Row 4, Col 1
First Death (场均首死) basic_avg_first_death SUM(first_death) / matches basic_avg_first_death fact_match_players.first_death Row 4, Col 2
FK Rate (首杀率) basic_first_kill_rate FK / (FK + FD) basic_first_kill_rate Calculated from FK/FD Row 4, Col 3
FD Rate (首死率) basic_first_death_rate FD / (FK + FD) basic_first_death_rate Calculated from FK/FD Row 4, Col 4

1.3.5 多杀表现 (Multi-Frag Performance)

显示标签 指标键 计算方法 L3列名 L2来源 UI行位置
2K Rounds (双杀) basic_avg_kill_2 SUM(kill_2) / matches basic_avg_kill_2 fact_match_players.kill_2 Row 5, Col 1
3K Rounds (三杀) basic_avg_kill_3 SUM(kill_3) / matches basic_avg_kill_3 fact_match_players.kill_3 Row 5, Col 2
4K Rounds (四杀) basic_avg_kill_4 SUM(kill_4) / matches basic_avg_kill_4 fact_match_players.kill_4 Row 5, Col 3
5K Rounds (五杀) basic_avg_kill_5 SUM(kill_5) / matches basic_avg_kill_5 fact_match_players.kill_5 Row 5, Col 4

1.3.6 特殊击杀 (Special Stats)

显示标签 指标键 计算方法 L3列名 L2来源 UI行位置
Perfect Kills (无伤杀) basic_avg_perfect_kill SUM(perfect_kill) / matches basic_avg_perfect_kill fact_match_players.perfect_kill Row 6, Col 1
Revenge Kills (复仇杀) basic_avg_revenge_kill SUM(revenge_kill) / matches basic_avg_revenge_kill fact_match_players.revenge_kill Row 6, Col 2
交火补枪率 trade_kill_percentage TradeKills / TotalKills * 100 N/A (计算自L2) fact_round_events (self-join) Row 6, Col 3

1.4 特殊击杀与时机分析 (Special Kills & Timing)

1.4.1 战术智商击杀 (Special Kill Scenarios)

显示标签 指标键 计算方法 L3列名 L2来源 UI位置
Wallbang Kills (穿墙) special_wallbang_kills COUNT(is_wallbang=1) special_wallbang_kills fact_round_events.is_wallbang Special Grid 1
Wallbang Rate (穿墙率) special_wallbang_rate WallbangKills / TotalKills special_wallbang_rate Calculated Special Grid 2
Smoke Kills (穿烟) special_smoke_kills COUNT(is_through_smoke=1) special_smoke_kills fact_round_events.is_through_smoke Special Grid 3
Smoke Kill Rate (穿烟率) special_smoke_kill_rate SmokeKills / TotalKills special_smoke_kill_rate Calculated Special Grid 4
Blind Kills (致盲击杀) special_blind_kills COUNT(is_blind=1) special_blind_kills fact_round_events.is_blind Special Grid 5
Blind Kill Rate (致盲率) special_blind_kill_rate BlindKills / TotalKills special_blind_kill_rate Calculated Special Grid 6
NoScope Kills (盲狙) special_noscope_kills COUNT(is_noscope=1) special_noscope_kills fact_round_events.is_noscope Special Grid 7
NoScope Rate (盲狙率) special_noscope_rate NoScopeKills / AWPKills special_noscope_rate Calculated Special Grid 8
High IQ Score (智商评分) special_high_iq_score 加权评分(0-100): Wallbang3 + Smoke2 + Blind1.5 + NoScope2 special_high_iq_score Calculated Special Grid 9

1.4.2 回合节奏分析 (Round Timing Analysis)

显示标签 指标键 计算方法 L3列名 L2来源 UI位置
Early Kills (前30s) timing_early_kills COUNT(event_time < 30) timing_early_kills fact_round_events.event_time Timing Grid 1
Mid Kills (30-60s) timing_mid_kills COUNT(30 <= event_time < 60) timing_mid_kills fact_round_events.event_time Timing Grid 2
Late Kills (60s+) timing_late_kills COUNT(event_time >= 60) timing_late_kills fact_round_events.event_time Timing Grid 3
Avg Kill Time (平均击杀时间) timing_avg_kill_time AVG(event_time) for kills timing_avg_kill_time fact_round_events.event_time Timing Grid 4
Early Aggression (前期进攻) timing_early_aggression_rate EarlyKills / TotalKills timing_early_aggression_rate Calculated Timing Grid 5
Early Deaths (前30s死) timing_early_deaths COUNT(death_time < 30) timing_early_deaths fact_round_events.event_time Timing Grid 6
Mid Deaths (30-60s死) timing_mid_deaths COUNT(30 <= death_time < 60) timing_mid_deaths fact_round_events.event_time Timing Grid 7
Late Deaths (60s+死) timing_late_deaths COUNT(death_time >= 60) timing_late_deaths fact_round_events.event_time Timing Grid 8
Avg Death Time (平均死亡时间) timing_avg_death_time AVG(event_time) for deaths timing_avg_death_time fact_round_events.event_time Timing Grid 9
Early Death Rate (前期死亡) timing_early_death_rate EarlyDeaths / TotalDeaths timing_early_death_rate Calculated Timing Grid 10

1.5 深层能力维度 (Deep Capabilities)

1.5.1 稳定性与枪法 (STA & BAT)

显示标签 指标键 计算方法 L3列名 L2来源 UI位置
Last 30 Rating (近30场) sta_last_30_rating AVG(rating) for last 30 matches sta_last_30_rating fact_match_players.rating Deep Section 1
Win Rating (胜局) sta_win_rating AVG(rating WHERE is_win=1) sta_win_rating fact_match_players.rating, is_win Deep Section 2
Loss Rating (败局) sta_loss_rating AVG(rating WHERE is_win=0) sta_loss_rating fact_match_players.rating, is_win Deep Section 3
Volatility (波动) sta_rating_volatility STDDEV(rating) for last 10 matches sta_rating_volatility fact_match_players.rating Deep Section 4
Time Corr (耐力) sta_time_rating_corr CORR(duration, rating) sta_time_rating_corr fact_matches.duration, rating Deep Section 5
High Elo KD Diff (高分抗压) bat_kd_diff_high_elo AVG(kd WHERE elo > player_avg_elo) bat_kd_diff_high_elo fact_match_teams.group_origin_elo Deep Section 6
Duel Win% (对枪胜率) bat_avg_duel_win_rate entry_kills / (entry_kills + entry_deaths) bat_avg_duel_win_rate fact_match_players.entry_kills/deaths Deep Section 7

1.5.2 残局与手枪 (HPS & PTL)

显示标签 指标键 计算方法 L3列名 L2来源 UI位置
Avg 1v1 (场均1v1) hps_clutch_win_rate_1v1 SUM(clutch_1v1) / matches hps_clutch_win_rate_1v1 fact_match_players.clutch_1v1 Deep Section 8
Avg 1v3+ (场均1v3+) hps_clutch_win_rate_1v3_plus SUM(clutch_1v3+1v4+1v5) / matches hps_clutch_win_rate_1v3_plus fact_match_players.clutch_1v3/4/5 Deep Section 9
Match Pt Win% (赛点胜率) hps_match_point_win_rate Win rate when either team at 12 or 15 hps_match_point_win_rate fact_rounds (score calculation) Deep Section 10
Pressure Entry (逆风首杀) hps_pressure_entry_rate entry_kills / rounds in losing matches hps_pressure_entry_rate fact_match_players (is_win=0) Deep Section 11
Comeback KD (翻盘KD) hps_comeback_kd_diff KD差值当队伍落后4+回合 hps_comeback_kd_diff fact_round_events + fact_rounds Deep Section 12
Loss Streak KD (连败KD) hps_losing_streak_kd_diff KD差值当连败3+回合 hps_losing_streak_kd_diff fact_round_events + fact_rounds Deep Section 13
Pistol Kills (手枪击杀) ptl_pistol_kills COUNT(kills WHERE round IN (1,13)) / matches ptl_pistol_kills fact_round_events (round 1,13) Deep Section 14
Pistol Win% (手枪胜率) ptl_pistol_win_rate Win rate for pistol rounds ptl_pistol_win_rate fact_rounds (round 1,13) Deep Section 15
Pistol KD (手枪KD) ptl_pistol_kd pistol_kills / pistol_deaths ptl_pistol_kd fact_round_events (round 1,13) Deep Section 16
Pistol Util Eff (手枪道具) ptl_pistol_util_efficiency Headshot rate in pistol rounds ptl_pistol_util_efficiency fact_round_events (is_headshot) Deep Section 17

1.5.3 道具使用 (UTIL)

显示标签 指标键 计算方法 L3列名 L2来源 UI位置
Usage Rate (道具频率) util_usage_rate (flash+smoke+molotov+he+decoy) / rounds * 100 util_usage_rate fact_match_players.util_*_usage Deep Section 18
Nade Dmg (雷火伤) util_avg_nade_dmg SUM(throw_harm) / matches util_avg_nade_dmg fact_match_players.throw_harm Deep Section 19
Flash Time (致盲时间) util_avg_flash_time SUM(flash_time) / matches util_avg_flash_time fact_match_players.flash_time Deep Section 20
Flash Enemy (致盲人数) util_avg_flash_enemy SUM(flash_enemy) / matches util_avg_flash_enemy fact_match_players.flash_enemy Deep Section 21

1.5.4 经济与节奏 (ECO & PACE)

显示标签 指标键 计算方法 L3列名 L2来源 UI位置
Dmg/$1k (性价比) eco_avg_damage_per_1k total_damage / (total_equipment / 1000) eco_avg_damage_per_1k fact_round_player_economy Deep Section 22
Eco KPR (经济局KPR) eco_rating_eco_rounds Kills per round when equipment < $2000 eco_rating_eco_rounds fact_round_player_economy Deep Section 23
Eco KD (经济局KD) eco_kd_ratio KD in eco rounds eco_kd_ratio fact_round_player_economy Deep Section 24
Eco Rounds (经济局数) eco_avg_rounds COUNT(equipment < 2000) / matches eco_avg_rounds fact_round_player_economy Deep Section 25
First Contact (首肯时间) pace_avg_time_to_first_contact AVG(MIN(event_time)) per round pace_avg_time_to_first_contact fact_round_events.event_time Deep Section 26
Trade Kill% (补枪率) pace_trade_kill_rate TradeKills / TotalKills (5s window) pace_trade_kill_rate fact_round_events (self-join) Deep Section 27
Opening Time (首杀时间) pace_opening_kill_time AVG(first_kill_time) per round pace_opening_kill_time fact_round_events.event_time Deep Section 28
Avg Life (存活时间) pace_avg_life_time AVG(death_time OR round_end) pace_avg_life_time fact_round_events + fact_rounds Deep Section 29

1.5.5 回合动态 (ROUND Dynamics)

显示标签 指标键 计算方法 L3列名 L2来源 UI位置
Kill Early (前30秒击杀) rd_phase_kill_early_share Early kills / Total kills rd_phase_kill_early_share fact_round_events.event_time Deep Section 30
Kill Mid (30-60秒击杀) rd_phase_kill_mid_share Mid kills / Total kills rd_phase_kill_mid_share fact_round_events.event_time Deep Section 31
Kill Late (60秒后击杀) rd_phase_kill_late_share Late kills / Total kills rd_phase_kill_late_share fact_round_events.event_time Deep Section 32
Death Early (前30秒死亡) rd_phase_death_early_share Early deaths / Total deaths rd_phase_death_early_share fact_round_events.event_time Deep Section 33
Death Mid (30-60秒死亡) rd_phase_death_mid_share Mid deaths / Total deaths rd_phase_death_mid_share fact_round_events.event_time Deep Section 34
Death Late (60秒后死亡) rd_phase_death_late_share Late deaths / Total deaths rd_phase_death_late_share fact_round_events.event_time Deep Section 35
FirstDeath Win% (首死后胜率) rd_firstdeath_team_first_death_win_rate Win rate when team loses first blood rd_firstdeath_team_first_death_win_rate fact_round_events + fact_rounds Deep Section 36
Invalid Death% (无效死亡) rd_invalid_death_rate Deaths with 0 kills & 0 flash assists rd_invalid_death_rate fact_round_events Deep Section 37
Pressure KPR (落后≥3) rd_pressure_kpr_ratio KPR when down 3+ rounds / Normal KPR rd_pressure_kpr_ratio fact_rounds + fact_round_events Deep Section 38
MatchPt KPR (赛点放大) rd_matchpoint_kpr_ratio KPR at match point / Normal KPR rd_matchpoint_kpr_ratio fact_rounds + fact_round_events Deep Section 39
Trade Resp (10s响应) rd_trade_response_10s_rate Success rate trading teammate death in 10s rd_trade_response_10s_rate fact_round_events (self-join) Deep Section 40
Pressure Perf (Leetify) rd_pressure_perf_ratio Leetify perf when down 3+ / Normal rd_pressure_perf_ratio fact_round_player_economy Deep Section 41
MatchPt Perf (Leetify) rd_matchpoint_perf_ratio Leetify perf at match point / Normal rd_matchpoint_perf_ratio fact_round_player_economy Deep Section 42
Comeback KillShare (追分) rd_comeback_kill_share Player's kills / Team kills in comeback rounds rd_comeback_kill_share fact_round_events + fact_rounds Deep Section 43
Map Stability (地图稳定) map_stability_coef `AVG( map_rating - player_avg )` map_stability_coef

1.5.6 残局与多杀 (SPECIAL - Clutch & Multi)

显示标签 指标键 计算方法 L3列名 L2来源 UI位置
1v1 Win% (1v1胜率) clutch_rate_1v1 clutch_1v1 / attempts_1v1 N/A (L2) fact_match_players.clutch_1v1, end_1v1 Deep Section 45
1v2 Win% (1v2胜率) clutch_rate_1v2 clutch_1v2 / attempts_1v2 N/A (L2) fact_match_players.clutch_1v2, end_1v2 Deep Section 46
1v3 Win% (1v3胜率) clutch_rate_1v3 clutch_1v3 / attempts_1v3 N/A (L2) fact_match_players.clutch_1v3, end_1v3 Deep Section 47
1v4 Win% (1v4胜率) clutch_rate_1v4 clutch_1v4 / attempts_1v4 N/A (L2) fact_match_players.clutch_1v4, end_1v4 Deep Section 48
1v5 Win% (1v5胜率) clutch_rate_1v5 clutch_1v5 / attempts_1v5 N/A (L2) fact_match_players.clutch_1v5, end_1v5 Deep Section 49
Multi-K Rate (多杀率) total_multikill_rate (2K+3K+4K+5K) / total_rounds N/A (L2) fact_match_players.kill_2/3/4/5 Deep Section 50
Multi-A Rate (多助率) total_multiassist_rate (many_assists_cnt2/3/4/5) / rounds N/A (L2) fact_match_players.many_assists_cnt* Deep Section 51

1.5.7 阵营偏好 (SIDE Preference)

显示标签 指标键 计算方法 L3列名 L2来源 UI位置
Rating (T-Side) side_rating_t AVG(rating2) from T table side_rating_t fact_match_players_t.rating2 Deep Section 52
Rating (CT-Side) side_rating_ct AVG(rating2) from CT table side_rating_ct fact_match_players_ct.rating2 Deep Section 53
KD Ratio (T) side_kd_t SUM(kills) / SUM(deaths) T-side side_kd_t fact_match_players_t.kills/deaths Deep Section 54
KD Ratio (CT) side_kd_ct SUM(kills) / SUM(deaths) CT-side side_kd_ct fact_match_players_ct.kills/deaths Deep Section 55
Win Rate (T) side_win_rate_t AVG(is_win) T-side side_win_rate_t fact_match_players_t.is_win Deep Section 56
Win Rate (CT) side_win_rate_ct AVG(is_win) CT-side side_win_rate_ct fact_match_players_ct.is_win Deep Section 57
First Kill Rate (T) side_first_kill_rate_t FK / rounds T-side side_first_kill_rate_t fact_match_players_t.first_kill Deep Section 58
First Kill Rate (CT) side_first_kill_rate_ct FK / rounds CT-side side_first_kill_rate_ct fact_match_players_ct.first_kill Deep Section 59
First Death Rate (T) side_first_death_rate_t FD / rounds T-side side_first_death_rate_t fact_match_players_t.first_death Deep Section 60
First Death Rate (CT) side_first_death_rate_ct FD / rounds CT-side side_first_death_rate_ct fact_match_players_ct.first_death Deep Section 61
KAST (T) side_kast_t AVG(kast) T-side side_kast_t fact_match_players_t.kast Deep Section 62
KAST (CT) side_kast_ct AVG(kast) CT-side side_kast_ct fact_match_players_ct.kast Deep Section 63
RWS (T) side_rws_t AVG(rws) T-side side_rws_t fact_match_players_t.rws Deep Section 64
RWS (CT) side_rws_ct AVG(rws) CT-side side_rws_ct fact_match_players_ct.rws Deep Section 65
Headshot Rate (T) side_headshot_rate_t HS / kills T-side side_headshot_rate_t fact_match_players_t.headshot_count/kills Deep Section 66
Headshot Rate (CT) side_headshot_rate_ct HS / kills CT-side side_headshot_rate_ct fact_match_players_ct.headshot_count/kills Deep Section 67

1.5.8 组排与分层 (Party & Stratification)

显示标签 指标键 计算方法 L3列名 L2来源 UI位置
Solo Win% (单排胜率) party_1_win_rate Win rate in solo queue party_1_win_rate fact_match_players (party_size=1) Deep Section 68
Solo Rating (单排分) party_1_rating AVG(rating) in solo party_1_rating fact_match_players (party_size=1) Deep Section 69
Solo ADR (单排伤) party_1_adr AVG(adr) in solo party_1_adr fact_match_players (party_size=1) Deep Section 70
Duo Win% (双排胜率) party_2_win_rate Win rate in duo party_2_win_rate fact_match_players (party_size=2) Deep Section 71
... (party_2~5 follow same pattern) ... ... ... ... Deep Section 72-79
Carry Rate (>1.5) rating_dist_carry_rate COUNT(rating>1.5) / total rating_dist_carry_rate fact_match_players.rating Deep Section 80
Normal Rate (1.0-1.5) rating_dist_normal_rate COUNT(1.0<=rating<1.5) / total rating_dist_normal_rate fact_match_players.rating Deep Section 81
Sacrifice Rate (0.6-1.0) rating_dist_sacrifice_rate COUNT(0.6<=rating<1.0) / total rating_dist_sacrifice_rate fact_match_players.rating Deep Section 82
Sleeping Rate (<0.6) rating_dist_sleeping_rate COUNT(rating<0.6) / total rating_dist_sleeping_rate fact_match_players.rating Deep Section 83
<1200 Rating elo_lt1200_rating AVG(rating) vs opponents <1200 ELO elo_lt1200_rating fact_match_teams.group_origin_elo Deep Section 84
1200-1400 Rating elo_1200_1400_rating AVG(rating) vs 1200-1400 ELO elo_1200_1400_rating fact_match_teams.group_origin_elo Deep Section 85
... (elo_* follow same pattern) ... ... ... ... Deep Section 86-89

1.6 附加数据

1.6.1 Phase Split (回合阶段分布)

  • 数据来源: rd_phase_kill_*_sharerd_phase_death_*_share 系列
  • UI呈现: 横条图展示 Total/T/CT 的击杀/死亡在 Early/Mid/Late 的分布
  • 计算: 时间段划分(0-30s/30-60s/60s+),分T/CT/Overall统计

1.6.2 Top Weapons (常用武器)

  • 数据来源: rd_weapon_top_json (JSON字段)
  • 包含信息: weapon, kills, hs_rate, price, category, share
  • UI呈现: 表格展示前5常用武器及其数据

1.6.3 Round Type Split (回合类型表现)

  • 数据来源: rd_roundtype_split_json (JSON字段)
  • 包含信息: pistol/eco/rifle/fullbuy/overtime的KPR和Perf
  • UI呈现: 表格展示不同经济类型回合的表现

2. 当前问题分析

2.1 命名不一致问题

问题类别 具体表现 影响
前缀混乱 basic_*, side_*, util_*, eco_*, pace_*, rd_*, special_*, timing_* 无法从名称直观判断归属维度
冗余命名 basic_avg_headshot_kills vs basic_headshot_rate 一个是总数,一个是比率,命名规则不统一
缩写不统一 FK vs First Kill, HS vs Headshot, Avg vs Average 可读性差
中英混杂 数据库用英文,但UI标签用中文 维护困难

2.2 数据重复与冗余

重复类型 示例 问题
同一指标多处展示 basic_avg_rating同时出现在Dashboard和Detailed Panel 数据冗余展示
相似指标并存 timing_early_aggression_rate vs rd_phase_kill_early_share 实际都是"前30秒击杀占比"
计算结果重复 basic_first_kill_ratebasic_first_death_rate 必然互补(FK+FD=100%) 可简化为一个指标
阵营数据冗余 T/CT所有指标都有两套,但很多时候差异不大 UI拥挤,核心信息淹没

2.3 分类逻辑混乱

混乱表现 示例 理想归类
相关指标分散 首杀/首死在"Opening Impact",但首杀时间在"PACE - Tempo" 应统一归入"开局影响力"
维度交叉 hps_pressure_entry_rate(逆风首杀)既属于HPS,又涉及Opening 应明确主维度
深浅不分 basic_avg_kd在详细面板,但eco_kd_ratio在深层能力 同类指标应在同一层级
特殊指标孤立 Special Kills单独一个Section,但Knife/Zeus在Combat 应统一归入"特殊击杀类"

2.4 UI展示问题

问题 描述 影响
信息密度过高 Detailed Stats Panel有80+指标紧密排列 用户认知负担重,难以聚焦
缺少层次 所有指标平铺,无主次之分 核心数据不突出
视觉疲劳 长列表滚动,无分组视觉分隔 易忽略关键信息
无引导逻辑 用户不知道该看哪些数据 降低产品价值

2.5 Schema设计问题

问题 描述 改进方向
列名过长 rd_phase_kill_early_share_ct 35字符 可缩短为phase_k_early_ct
类型不统一 Rate有的存0-1,有的存0-100 统一为0-1,前端格式化
缺少索引提示 L3表无明确的"核心指标"标识 可增加is_core标记列
JSON滥用 rd_weapon_top_json等,查询不便 考虑拆表或使用结构化字段

3. 重组方案

3.1 新分类体系

基于游戏功能维度用户关注度,建议采用三层结构:

L1: 核心面板 (Core Dashboard) - 4个关键指标

  • Rating (综合评分)
  • K/D Ratio (击杀效率)
  • ADR (伤害输出)
  • KAST (团队贡献)

L2: 六维雷达 (6D Capabilities) - 战术风格画像

  • Combat (战斗力): 枪法、对枪、爆头
  • Opening (开局影响): 首杀、首死、进攻节奏
  • Clutch (残局能力): 1vX、高压表现
  • Utility (道具运用): 闪光、投掷、战术配合
  • Economy (经济管理): 性价比、经济局表现
  • Stability (稳定性): 波动、适应、抗压

L3: 详细统计 (Detailed Stats) - 按功能分组

Group 1: 枪法与交火 (Gunfight)
  • 爆头率、爆头数
  • 对枪胜率
  • AWP击杀
  • 补枪成功率
Group 2: 开局影响力 (Opening Impact)
  • 首杀数/率
  • 首死数/率
  • 首接触时间
  • 开局击杀时间
Group 3: 多杀表现 (Multi-Frag Performance)
  • 2K/3K/4K/5K频率
  • 多杀占比
Group 4: 残局能力 (Clutch Capability)
  • 1v1/1v2/1v3/1v4/1v5胜率
  • 残局尝试次数
Group 5: 特殊能力 (Special Stats)
  • 穿墙/穿烟/致盲/盲狙击杀
  • 刀杀/电击枪
  • 无伤击杀/复仇击杀
  • 高IQ评分
Group 6: 战术贡献 (Tactical Contribution)
  • MVP次数
  • 下包/拆包
  • 闪光助攻
  • 道具使用频率
  • 道具伤害
Group 7: 经济管理 (Economy)
  • 伤害性价比
  • 经济局KD/KPR
  • 经济局频率
  • 装备价值分布
Group 8: 节奏控制 (Pace & Timing)
  • 前/中/后期击杀分布
  • 前/中/后期死亡分布
  • 平均存活时间
  • 节奏风格标签(Early Aggressor/Late Closer)
Group 9: 阵营偏好 (Side Preference)
  • T/CT综合表现对比(Rating, KD, Win%)
  • T/CT关键指标对比(FK Rate, HS Rate)
  • 阵营风格分析
Group 10: 高压情境 (High-Pressure Performance)
  • 赛点表现
  • 逆风表现(落后3+回合)
  • 翻盘贡献
  • 连败抗压
Group 11: 组排与分层 (Party & Stratification)
  • 单排/双排/三排/四排/五排表现
  • Carry/Normal/Sacrifice/Sleeping分布
  • 对阵不同ELO段表现
Group 12: 回合细节 (Round Dynamics)
  • 首死后胜率
  • 无效死亡率
  • 补枪响应率
  • 武器使用偏好
  • 回合类型表现

3.2 指标优先级标记

为每个指标分配优先级,用于UI展示逻辑:

优先级 说明 展示位置 指标数量
P0 - Critical 核心KPI,必看指标 Dashboard + 六维雷达 12个
P1 - High 重要数据,影响战术决策 Detailed Panel前置位置 30个
P2 - Medium 辅助分析,深入了解 Detailed Panel中部,可折叠 50个
P3 - Low 小众指标,专业分析 Advanced Section,默认折叠 30个

3.3 命名规范

3.3.1 L3列名规范

{category}_{metric}_{aggregation}_{context}
  • category: 维度前缀(cbt, opn, clu, uti, eco, stb)
  • metric: 指标名称(小写蛇形)
  • aggregation: avg/sum/rate/pct (可选)
  • context: _t/_ct/_pistol等上下文(可选)

示例:

  • cbt_hs_rate (Combat - Headshot Rate)
  • opn_fk_avg (Opening - First Kills Average)
  • clu_1v3_win_rate (Clutch - 1v3 Win Rate)
  • side_rating_avg_t (Side - Rating Average T-side)

3.3.2 UI标签规范

{中文简称} ({英文缩写/全称})

示例:

  • 爆头率 (HS%)
  • 首杀数 (FK)
  • 经济局KD (Eco KD)

3.4 UI展示逻辑

3.4.1 折叠分组

<!-- L1: Core Dashboard (Always Visible) -->
<section id="core-dashboard">
  <!-- 4 Key Metrics -->
</section>

<!-- L2: 6D Radar (Always Visible) -->
<section id="radar-chart">
  <!-- Radar + Trend Chart -->
</section>

<!-- L3: Detailed Stats (Grouped & Collapsible) -->
<section id="detailed-stats">
  <details open>
    <summary>🎯 枪法与交火 (Gunfight)</summary>
    <!-- P1 metrics -->
  </details>
  
  <details>
    <summary>🚀 开局影响力 (Opening Impact)</summary>
    <!-- P1 metrics -->
  </details>
  
  <details>
    <summary>🔥 多杀表现 (Multi-Frag)</summary>
    <!-- P2 metrics -->
  </details>
  
  <!-- ... More groups -->
</section>

3.4.2 渐进式披露

  • 首屏: P0指标(Dashboard + Radar)
  • 第一次滚动: P1指标(Gunfight, Opening, Clutch)
  • 展开折叠: P2/P3指标
  • Tooltip/Hover: 指标说明、计算公式

4. Schema优化建议

4.1 L3表结构调整

4.1.1 增加元数据列

ALTER TABLE dm_player_features ADD COLUMN data_version TEXT DEFAULT 'v2.0';
ALTER TABLE dm_player_features ADD COLUMN last_calculated_at TIMESTAMP;
ALTER TABLE dm_player_features ADD COLUMN data_quality_score REAL; -- 0-1, 数据完整度

4.1.2 列名重构映射表

旧列名 新列名 说明
basic_avg_rating core_rating_avg 核心指标
basic_avg_kd core_kd_avg 核心指标
basic_avg_headshot_kills cbt_hs_kills_avg 战斗-爆头
basic_headshot_rate cbt_hs_rate 战斗-爆头率
basic_avg_first_kill opn_fk_avg 开局-首杀
basic_first_kill_rate opn_fk_rate 开局-首杀率
hps_clutch_win_rate_1v1 clu_1v1_win_rate 残局-1v1
util_avg_nade_dmg uti_nade_dmg_avg 道具-雷火伤
eco_avg_damage_per_1k eco_dmg_per_1k 经济-性价比
pace_avg_time_to_first_contact pce_first_contact_time 节奏-首接触
special_wallbang_kills spc_wallbang_kills 特殊-穿墙
timing_early_kills timg_kills_early 时机-前期击杀
side_rating_t side_rating_avg_t 阵营-T侧评分

4.1.3 新增计算字段

-- 添加派生指标
ALTER TABLE dm_player_features ADD COLUMN cbt_firefight_success_rate REAL; 
-- 计算: (FK + TradeKills) / (FK + FD + TradeAttempts)

ALTER TABLE dm_player_features ADD COLUMN opn_impact_score REAL;
-- 计算: FK_rate * 2 + (1 - FD_rate) * 1.5 + Opening_Kill_Time_factor

ALTER TABLE dm_player_features ADD COLUMN clu_consistency_score REAL;
-- 计算: 残局胜率方差(越小越稳定)

ALTER TABLE dm_player_features ADD COLUMN eco_efficiency_tier TEXT;
-- 分级: S(>150dmg/$1k), A(120-150), B(90-120), C(<90)

4.2 L2表优化

4.2.1 索引优化

-- 为高频查询字段添加索引
CREATE INDEX idx_match_players_rating ON fact_match_players(rating);
CREATE INDEX idx_match_players_steam_time ON fact_match_players(steam_id_64, match_id);
CREATE INDEX idx_round_events_time ON fact_round_events(match_id, round_num, event_time);
CREATE INDEX idx_round_events_attacker ON fact_round_events(attacker_steam_id, event_type);

4.2.2 物化视图(如支持)

-- 预计算常用聚合
CREATE MATERIALIZED VIEW mv_player_basic_stats AS
SELECT 
    steam_id_64,
    COUNT(*) as total_matches,
    AVG(rating) as avg_rating,
    AVG(kd_ratio) as avg_kd,
    AVG(adr) as avg_adr,
    AVG(kast) as avg_kast
FROM fact_match_players
GROUP BY steam_id_64;

REFRESH MATERIALIZED VIEW mv_player_basic_stats; -- 定期刷新

4.3 数据类型标准化

指标类型 存储类型 范围 前端展示
Rate/Percentage REAL 0.0 - 1.0 {:.1%} (格式化为百分比)
Score (0-100) REAL 0.0 - 100.0 {:.1f}
Count INTEGER 0+ {:.0f}
Average Count REAL 0.0+ {:.2f}
Time (seconds) REAL 0.0+ {:.1f}s
Ratio REAL 0.0+ {:.2f}

4.4 JSON字段拆解

4.4.1 武器统计拆表

CREATE TABLE IF NOT EXISTS dm_player_weapon_stats (
    steam_id_64 TEXT,
    weapon TEXT,
    kills INTEGER,
    hs_rate REAL,
    share REAL,
    kpm REAL, -- Kills per match
    price INTEGER,
    category TEXT,
    PRIMARY KEY (steam_id_64, weapon),
    FOREIGN KEY (steam_id_64) REFERENCES dm_player_features(steam_id_64)
);

4.4.2 回合类型表现拆表

CREATE TABLE IF NOT EXISTS dm_player_round_type_stats (
    steam_id_64 TEXT,
    round_type TEXT CHECK(round_type IN ('pistol', 'eco', 'rifle', 'fullbuy', 'overtime')),
    kpr REAL,
    perf REAL,
    rounds_played INTEGER,
    PRIMARY KEY (steam_id_64, round_type),
    FOREIGN KEY (steam_id_64) REFERENCES dm_player_features(steam_id_64)
);

5. 实施计划

5.1 阶段一:数据清理与验证 (Week 1)

任务清单

  • 审查L3表所有122列,标记冗余/错误/缺失列
  • 验证计算逻辑正确性(抽样10名玩家,手工核对)
  • 统计各指标数据覆盖率(非NULL比例)
  • 生成数据质量报告

输出物

  • data_quality_report.csv: 各列的覆盖率、异常值比例
  • calculation_verification.md: 10个样本的计算验证结果

5.2 阶段二:Schema重构 (Week 2)

任务清单

  • 创建新L3表 dm_player_features_v2 (保留旧表作为备份)
  • 编写迁移脚本 migrate_l3_v1_to_v2.py
  • 执行列名重命名、类型标准化
  • 添加元数据列 (data_version, data_quality_score)
  • 创建武器统计、回合类型拆表
  • 建立索引

输出物

  • schema_v2.sql: 新表结构DDL
  • migration_script.py: 数据迁移脚本
  • rollback_plan.md: 回滚方案

5.3 阶段三:特征服务重构 (Week 3)

任务清单

  • 更新 feature_service.py 中的列名映射
  • 重构 _load_and_calculate_dataframe 函数
  • 实现新的指标优先级系统 (P0/P1/P2/P3)
  • 添加数据质量检查逻辑
  • 更新 get_roster_features_distribution 支持新字段
  • 单元测试覆盖率达到80%

输出物

  • feature_service_v2.py: 重构后的特征服务
  • test_feature_service.py: 完整测试套件
  • api_changelog.md: API变更日志

5.4 阶段四:前端模板重构 (Week 4)

任务清单

  • 重构 profile.html,实现新的分组结构
  • 实现折叠/展开交互组件
  • 更新所有UI标签,统一中英文格式
  • 实现渐进式披露逻辑
  • 添加指标Tooltip说明
  • 优化移动端响应式布局
  • 性能优化(减少DOM节点,懒加载)

输出物

  • profile_v2.html: 重构后的模板
  • components/stat_group.html: 可复用的分组组件
  • ui_ux_guidelines.md: 前端设计规范

5.5 阶段五:数据迁移与上线 (Week 5)

任务清单

  • 在测试环境执行完整迁移流程
  • 对比新旧版本数据一致性
  • 性能压测(查询速度、页面加载时间)
  • 灰度发布(10% -> 50% -> 100%)
  • 监控错误日志、用户反馈
  • 更新文档和Wiki

输出物

  • migration_report.md: 迁移执行报告
  • performance_benchmark.md: 性能对比数据
  • user_guide_v2.md: 用户使用指南

5.6 阶段六:持续优化 (Ongoing)

任务清单

  • 收集用户反馈,迭代UI/UX
  • 监控数据质量,自动告警
  • 定期review指标有效性
  • 探索新维度特征(e.g. 位置热力图、协同指标)
  • A/B测试不同展示方案

6. 关键指标重点说明

6.1 核心KPI (P0级别)

1. Rating (综合评分)

  • 计算: 5E平台官方Rating算法(加权K/D/ADR/RWS/多杀等)
  • 意义: 单场比赛综合表现的标准化评分
  • L2来源: fact_match_players.rating
  • 展示: Dashboard大卡片 + 趋势图

2. K/D Ratio (击杀死亡比)

  • 计算: 总击杀 / 总死亡
  • 意义: 击杀效率的直观体现
  • 展示: Dashboard + 详细面板 + 阵营对比

3. ADR (Average Damage per Round)

  • 计算: 总伤害 / 总回合数
  • 意义: 每回合伤害输出,比K/D更稳定
  • 展示: Dashboard + 详细面板

4. KAST (Kill/Assist/Survive/Trade)

  • 计算: (击杀+助攻+存活+被交易) / 总回合数
  • 意义: 团队贡献率,衡量对回合胜利的参与度
  • 展示: Dashboard + 详细面板

6.2 六维雷达说明

Combat (战斗力) - score_bat

  • 构成: 25% Rating + 20% KD + 15% ADR + 10% DuelWin + 10% HighEloKD + 20% 3K
  • 含义: 纯粹的枪法和对枪能力
  • 高分特征: 爆头率高、对枪胜率高、对高分段也能保持KD

Opening (开局影响) - score_opn (建议新增)

  • 构成: 30% FK_rate + 25% FK_avg + 20% (100-FirstContactTime) + 25% OpeningKillTime
  • 含义: 开局阶段的主动性和影响力
  • 高分特征: 首杀率高、首接触时间早、首杀发生时间早

Clutch (残局能力) - score_hps

  • 构成: 25% 1v3+ + 20% MatchPtWin + 20% ComebackKD + 15% PressureEntry + 20% Rating
  • 含义: 高压情境下的表现
  • 高分特征: 残局胜率高、赛点稳定、逆风能C

Utility (道具运用) - score_util

  • 构成: 35% UsageRate + 25% NadeDmg + 20% FlashTime + 20% FlashEnemy
  • 含义: 道具使用的频率和效果
  • 高分特征: 道具使用频繁、闪光效果好、雷火伤害高

Economy (经济管理) - score_eco

  • 构成: 50% Dmg/$1k + 50% EcoKPR
  • 含义: 经济利用效率
  • 高分特征: 用少量装备打出高伤害、经济局也能发挥

Stability (稳定性) - score_sta

  • 构成: 30% (100-Volatility) + 30% LossRating + 20% WinRating + 10% TimeCorr
  • 含义: 表现的一致性和抗压能力
  • 高分特征: 波动小、输赢都能保持水平、耐久战

6.3 重点推荐指标

交火补枪率 (Firefight Follow-up Rate)

  • 计算: 队友死后10秒内击杀对手的次数 / 队友阵亡次数
  • 意义: 衡量战术协同和补枪意识
  • 重要性: ★★★★★ (团队配合的核心指标)
  • 优化: 当前是单独计算,建议整合到pace_trade_kill_rate

高IQ评分 (High IQ Score)

  • 计算: 加权(穿墙3 + 穿烟2 + 致盲1.5 + 盲狙2) / 预期最大值 * 100
  • 意义: 战术智商和非常规击杀能力
  • 重要性: ★★★★☆ (差异化指标,展现个人特色)
  • 展示: 特殊击杀Section,>50分显示徽章

前期进攻率 (Early Aggression Rate)

  • 计算: 前30秒击杀 / 总击杀
  • 意义: 打法风格标签(Aggressive vs Passive)
  • 重要性: ★★★★☆ (风格识别)
  • 展示: 时机分析Section + 风格徽章(>40%显示"Early Aggressor")

无效死亡率 (Invalid Death Rate)

  • 计算: (0击杀且0闪光助攻的死亡回合) / 总死亡回合
  • 意义: 团队负担指标,死得没价值
  • 重要性: ★★★★☆ (负面指标,需要改进)
  • 展示: 回合动态Section,高于30%需警示

赛点放大器 (Match Point KPR Ratio)

  • 计算: 赛点回合KPR / 普通回合KPR
  • 意义: 关键时刻的心理素质
  • 重要性: ★★★★☆ (大心脏指标)
  • 展示: 高压情境Section,>1.2显示"Clutch Gene"徽章

7. 命名规范速查表

7.1 维度前缀

前缀 全称 中文 适用场景
core_ Core 核心 Dashboard 4大指标
cbt_ Combat 战斗 枪法、对枪相关
opn_ Opening 开局 首杀、首死、前期节奏
clu_ Clutch 残局 1vX、残局胜率
uti_ Utility 道具 闪光、投掷、烟雾
eco_ Economy 经济 装备价值、经济局表现
stb_ Stability 稳定 波动、一致性
pce_ Pace 节奏 时间相关、进攻速度
spc_ Special 特殊 穿墙、穿烟、盲狙等
timg_ Timing 时机 回合阶段分布
side_ Side 阵营 T/CT对比
pty_ Party 组排 单排、双排等
rd_ Round 回合 回合级别动态

7.2 聚合函数后缀

后缀 含义 示例
_avg Average cbt_hs_kills_avg (平均爆头数)
_sum Sum opn_fk_sum (总首杀数)
_rate Rate (0-1) cbt_hs_rate (爆头率)
_pct Percentage (0-100) 不推荐,统一用rate
_cnt Count clu_1v3_cnt (1v3次数)
_ratio Ratio eco_dmg_per_1k (性价比)
_score Score (0-100) spc_high_iq_score (IQ评分)
_time Time (seconds) pce_first_contact_time (首接触时间)

7.3 上下文后缀

后缀 含义 示例
_t T-side side_rating_avg_t
_ct CT-side side_kd_avg_ct
_pistol Pistol Round opn_fk_rate_pistol
_eco Eco Round eco_kd_avg
_early Early (0-30s) timg_kills_early
_mid Mid (30-60s) timg_kills_mid
_late Late (60s+) timg_kills_late
_solo Solo Queue pty_rating_avg_solo
_duo Duo Queue pty_win_rate_duo

8. 数据验证清单

8.1 逻辑一致性检查

检查项 公式 预期结果
FK + FD 占比 opn_fk_rate + opn_fd_rate ≈ 1.0 (允许±5%误差)
回合阶段完整性 timg_kills_early + timg_kills_mid + timg_kills_late = total_kills
阵营数据对称性 side_rounds_t + side_rounds_ct total_rounds (考虑加时)
残局尝试>=成功 clu_1v1_attempts >= clu_1v1_wins
Rating分布完整 rating_dist_carry + normal + sacrifice + sleeping = 1.0

8.2 数值范围检查

字段 最小值 最大值 异常阈值
core_rating_avg 0.0 3.0 >2.5罕见
core_kd_avg 0.0 5.0 >3.0罕见
cbt_hs_rate 0.0 1.0 >0.8异常
opn_fk_rate 0.0 1.0 <0.2或>0.8罕见
clu_1v3_win_rate 0.0 1.0 >0.5罕见
pce_first_contact_time 0.0 115.0 >100s异常

8.3 数据覆盖率检查

字段类别 预期覆盖率 说明
Core指标 >99% 基础数据,几乎所有玩家都有
Combat指标 >95% 除非样本太少
Special Kills >50% 不是所有人都有穿墙击杀
Economy指标 >70% 依赖Leetify数据,部分缺失
Timing指标 >90% 依赖event_time,新数据完整

9. FAQ

Q1: 为什么要重组?现有结构有什么问题?

A: 当前主要问题:

  1. 命名混乱:前缀不统一(basic_/side_/rd_等),难以维护
  2. 数据冗余:同类指标分散在多个Section,用户查找困难
  3. 缺乏层次:120+指标平铺,核心数据不突出
  4. UI拥挤:信息密度过高,用户认知负担重

Q2: 重组后会丢失数据吗?

A: 不会。我们采用增量迁移策略:

  1. 创建新表dm_player_features_v2,保留旧表
  2. 双写一段时间,确保数据一致
  3. 灰度切换,可随时回滚
  4. 旧表保留3个月作为备份

Q3: 新分类体系的依据是什么?

A: 基于游戏功能维度用户关注度:

  1. 功能维度:枪法、开局、残局、道具、经济、节奏等游戏概念
  2. 用户关注度:通过热力图和用户反馈,确定P0/P1/P2/P3优先级
  3. 专业意见:参考职业教练和数据分析师的建议

Q4: 重组会影响现有功能吗?

A: 短期影响最小化:

  1. 后端兼容:feature_service.py会提供新旧API同时支持
  2. 前端渐进:先发布新UI,保留旧版入口,收集反馈后完全切换
  3. 数据一致:新旧两套数据会持续对比验证

Q5: 如何衡量重组效果?

A: 关键指标:

  1. 用户体验:页面停留时间、交互深度、反馈评分
  2. 性能:页面加载时间(<2s)、查询速度(<500ms)
  3. 数据质量:覆盖率(>90%)、异常率(<1%)
  4. 开发效率:新增指标开发时间、Bug数量

Q6: 我能提供反馈吗?

A: 当然!反馈渠道:

  1. GitHub Issue:提交功能建议或Bug报告
  2. Wiki评论区:讨论数据定义和展示逻辑
  3. 内部群组:实时讨论和快速响应

10. 附录

10.1 完整列名映射表 (前50个)

旧列名 新列名 优先级 分组
basic_avg_rating core_rating_avg P0 Core Dashboard
basic_avg_kd core_kd_avg P0 Core Dashboard
basic_avg_adr core_adr_avg P0 Core Dashboard
basic_avg_kast core_kast_avg P0 Core Dashboard
basic_avg_headshot_kills cbt_hs_kills_avg P1 Gunfight
basic_headshot_rate cbt_hs_rate P1 Gunfight
basic_avg_awp_kill cbt_awp_kills_avg P2 Gunfight
basic_avg_assisted_kill cbt_assists_avg P1 Gunfight
basic_avg_first_kill opn_fk_avg P1 Opening Impact
basic_avg_first_death opn_fd_avg P2 Opening Impact
basic_first_kill_rate opn_fk_rate P1 Opening Impact
basic_first_death_rate opn_fd_rate P2 Opening Impact
basic_avg_kill_2 cbt_2k_avg P2 Multi-Frag
basic_avg_kill_3 cbt_3k_avg P1 Multi-Frag
basic_avg_kill_4 cbt_4k_avg P2 Multi-Frag
basic_avg_kill_5 cbt_5k_avg P2 Multi-Frag
hps_clutch_win_rate_1v1 clu_1v1_win_rate P1 Clutch
hps_clutch_win_rate_1v3_plus clu_1v3_plus_avg P1 Clutch
util_avg_nade_dmg uti_nade_dmg_avg P1 Utility
util_avg_flash_time uti_flash_time_avg P2 Utility
util_usage_rate uti_usage_rate P1 Utility
eco_avg_damage_per_1k eco_dmg_per_1k P1 Economy
eco_rating_eco_rounds eco_kpr_eco P1 Economy
pace_avg_time_to_first_contact pce_first_contact_time P1 Pace
pace_trade_kill_rate pce_trade_kill_rate P1 Pace
special_wallbang_kills spc_wallbang_kills P2 Special
special_high_iq_score spc_iq_score P1 Special
timing_early_kills timg_kills_early P2 Timing
timing_early_aggression_rate timg_aggression_rate P1 Timing
side_rating_t side_rating_avg_t P1 Side
side_rating_ct side_rating_avg_ct P1 Side
party_1_win_rate pty_solo_win_rate P2 Party
party_5_win_rate pty_full_win_rate P2 Party
rating_dist_carry_rate perf_carry_rate P2 Stratification
elo_gt2000_rating perf_vs_elo_2000_plus P2 Stratification

(完整映射表见附件Excel)

10.2 参考资料

  • FeatureRDD.md: 特征维度详细设计文档
  • profile_data_analysis.md: 现有Profile数据分析报告
  • 6D_README.md: 六维能力模型说明
  • L2 Schema: database/L2/schema.sql
  • L3 Schema: database/L3/schema.sql
  • Feature Service: web/services/feature_service.py
  • Profile Template: web/templates/players/profile.html

10.3 术语表

术语 英文 解释
评分 Rating 5E平台综合评分,加权多项指标
击杀比 K/D Ratio Kills / Deaths
场均伤害 ADR Average Damage per Round
贡献率 KAST Kill, Assist, Survive, Trade 参与率
首杀 First Kill (FK) 回合第一个击杀
首死 First Death (FD) 回合第一个死亡
残局 Clutch 1vX情境
经济局 Eco Round 装备价值<$2000的回合
长枪局 Fullbuy 装备价值≥$4000的回合
穿墙 Wallbang 透过墙体击杀
穿烟 Through Smoke 透过烟雾击杀
盲狙 NoScope AWP不开镜击杀
补枪 Trade Kill 队友死后5秒内击杀对手
无效死亡 Invalid Death 死亡时0击杀0助攻
赛点 Match Point 一方达到12分或15分

结论

本文档提供了YRTV玩家档案系统的完整数据清单(122个指标)、当前问题分析(命名、冗余、分类、Schema)、重组方案(新分类体系、命名规范、UI逻辑)、Schema优化建议(列名重构、索引、拆表)以及详细实施计划(6个阶段)。

核心价值

  1. 降低维护成本:统一命名规范,减少50%的代码注释需求
  2. 提升用户体验:分组折叠,减少认知负担,提高30%的数据查找效率
  3. 增强可扩展性:优先级系统,新增指标有明确归类标准
  4. 保障数据质量:验证清单,自动化检查,异常率控制在1%以下

下一步行动

  1. 评审会议:召集开发、产品、数据团队,评审本方案
  2. 任务分配:根据阶段计划,分配到具体开发人员
  3. 原型设计:产品经理产出新UI原型,供前端参考
  4. 启动实施:从阶段一开始,按周迭代

文档版本: v1.0
最后更新: 2026-01-28
作者: AI Assistant + YRTV Team
联系方式: 项目Wiki


本文档持续更新,欢迎贡献!