Skip to main content

Device Info Schema

Device Info

The device_info table contains device specifications and market information, derived from device model identifiers.

device_info

NameTypeDescriptionExample
sanitized_keystringnormalized device identifier used for joining with other tables (matches LOWER(device))iphone12,1
brandstringbrand name of the deviceApple
cpustringname of the CPU for the device modelApple A14
display_resolutionstringresolution of the device's display, in widthxheight format1170x2532
display_sizefloatdiagonal display size of the device's screen, measured in inches6.1
estimated_value_usdintegerestimated market value of the device model (in USD), considering its age and depreciation699
gpustringname of the GPU for the device modelApple A14
max_ram_mbintegermaximum RAM (in megabytes) available for this device model4096
max_storage_gbintegermaximum storage capacity (in gigabytes) available for this device model256
min_ram_mbintegerminimum RAM (in megabytes) available for this device model4096
min_storage_gbintegerminimum storage capacity (in gigabytes) available for this device model64
modelstringspecific device model nameiPhone12,1
release_datedateofficial public release date of the device model2020-09-15
info

The estimated_value_usd is a dynamic value calculated to reflect market depreciation. This value is derived from recent publicly available market data for the device model. If new pricing information has been gathered today and it has been less than one year since the model was first listed, the value will be updated to reflect the average price. Otherwise, the value is depreciated daily based on a fixed rate: 99.95% for Apple models and 99.975% for all other models.

Joining with Other Tables

The device_info table can be joined with other tables using the sanitized_key field, which matches the lowercase version of the device field. For example:

SELECT 
p.user_id,
p.player_id,
p.device,
d.brand,
d.cpu,
d.gpu,
d.estimated_value_usd,
d.display_size
FROM
`checkpoint.player_checkpoint` p
LEFT JOIN
`device_info.device_info` d
ON
LOWER(p.device) = d.sanitized_key
WHERE
p.checkpoint = CURRENT_DATE() - 1

This allows you to enrich player data with detailed device specifications for deeper analysis.