Skip to content

Commit 86676cb

Browse files
committed
Convert Score ['High', 'Medium', 'Low'] to [3, 2, 1]
1 parent da86725 commit 86676cb

2 files changed

Lines changed: 18 additions & 14 deletions

File tree

collector/spot-dataset/azure/lambda/current_collector/load_sps.py

Lines changed: 18 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -213,9 +213,9 @@ def execute_spot_placement_score_task_by_parameter_pool_df(api_calls_df, desired
213213
score.get("sku", ""), {}).get("InstanceTier"),
214214
"InstanceType": SS_Resources.region_map_and_instance_map_tmp['instance_map'].get(
215215
score.get("sku", ""), {}).get("InstanceTypeOld"),
216-
"Score": score.get("score"),
217-
"T3": desired_count if score.get("score") == 3 else 0,
218-
"T2": desired_count if score.get("score") == 2 else 0
216+
"Score": map_score_to_int(score.get("score")),
217+
"T3": desired_count if map_score_to_int(score.get("score")) == 3 else 0,
218+
"T2": desired_count if map_score_to_int(score.get("score")) >= 2 else 0
219219
}
220220
if availability_zones is True:
221221
score_data["AvailabilityZone"] = score.get("availabilityZone", "Single")
@@ -259,6 +259,21 @@ def execute_spot_placement_score_task_by_parameter_pool_df(api_calls_df, desired
259259
return sps_res_df
260260

261261

262+
return sps_res_df
263+
264+
265+
def map_score_to_int(score_val):
266+
if isinstance(score_val, int):
267+
return score_val
268+
269+
score_map = {
270+
"High": 3,
271+
"Medium": 2,
272+
"Low": 1
273+
}
274+
return score_map.get(score_val, 0)
275+
276+
262277
def execute_spot_placement_score_api(region_chunk, instance_type_chunk, desired_count, max_retries=12):
263278
'''
264279
실제 SPS API호출 메서드.

collector/spot-dataset/azure/lambda/current_collector/utils/compare_data.py

Lines changed: 0 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -61,12 +61,6 @@ def compare_max_instance(previous_df, new_df, target_capacity):
6161
if col not in previous_df.columns:
6262
previous_df[col] = 0
6363

64-
print(f"[DEBUG] compare_max_instance - target_capacity: {target_capacity}")
65-
print(f"[DEBUG] new_df columns: {new_df.columns}")
66-
print(f"[DEBUG] new_df Score sample: {new_df['Score'].head(5).tolist()}")
67-
print(f"[DEBUG] previous_df columns: {previous_df.columns}")
68-
print(f"[DEBUG] previous_df Score sample: {previous_df['Score'].head(5).tolist() if 'Score' in previous_df else 'No Score col'}")
69-
7064
merged_df = pd.merge(
7165
new_df,
7266
previous_df[["InstanceType", "Region", "AvailabilityZone", "DesiredCount", "Score", "T3", "T2"]],
@@ -120,12 +114,7 @@ def compare_max_instance(previous_df, new_df, target_capacity):
120114
# AWS comment: "Fix SPS to Single node SPS" - this logic seems specific to assuming single node fallback.
121115
# But let's copy logic:
122116
# FIXED: Do not blindly overwrite if Score_prev is NaN (e.g. first run). Use combine_first or fillna.
123-
print(f"[DEBUG] Before assignment - Score sample: {merged_df['Score'].head(5).tolist()}")
124-
print(f"[DEBUG] Before assignment - Score_prev sample: {merged_df['Score_prev'].head(5).tolist()}")
125-
126117
merged_df["Score"] = merged_df["Score_prev"].fillna(merged_df["Score"])
127-
128-
print(f"[DEBUG] After assignment - Score sample: {merged_df['Score'].head(5).tolist()}")
129118

130119
# Convert to standard types to prevent '3' vs '3.0' change detection mismatch
131120
for col in ["T2", "T3"]:

0 commit comments

Comments
 (0)