TDengine · 数据库、超级表与字段
版本 3.3.8.4。共 30 个数据库、31 个表结构、319 个字段与标签、4,651 个子表。子表继承超级表字段;不列逐设备子表名和标签值。
数据库与表清单
| 数据库 | 表 | 用途 | 子表数 | 字段与标签 |
|---|---|---|---|---|
| app_activity_day | app_activity_detail | 应用周期活跃 | 161 | 查看 |
| app_activity_month | app_activity_detail | 应用周期活跃 | 38 | 查看 |
| app_activity_year | app_activity_detail | 应用周期活跃 | 12 | 查看 |
| app_runtime_archive | flow_app_runtime | 应用运行明细 | 261 | 查看 |
| blacklisted | app_kill_record | 黑名单执行反馈 | 46 | 查看 |
| device_activity_day | device_activity_detail | 设备周期活跃 | 365 | 查看 |
| device_activity_day_uota2 | device_activity_detail | 设备周期活跃 | 80 | 查看 |
| device_activity_day_uota_new | device_activity_detail | 设备周期活跃 | 3 | 查看 |
| device_activity_day_uota_old | device_activity_detail | 设备周期活跃 | 27 | 查看 |
| device_activity_month | device_activity_detail | 设备周期活跃 | 39 | 查看 |
| device_activity_month_uota2 | device_activity_detail | 设备周期活跃 | 8 | 查看 |
| device_activity_month_uota_new | device_activity_detail | 设备周期活跃 | 1 | 查看 |
| device_activity_month_uota_old | device_activity_detail | 设备周期活跃 | 2 | 查看 |
| device_activity_year | device_activity_detail | 设备周期活跃 | 8 | 查看 |
| device_activity_year_uota2 | device_activity_detail | 设备周期活跃 | 3 | 查看 |
| device_activity_year_uota_new | device_activity_detail | 设备周期活跃 | 1 | 查看 |
| device_activity_year_uota_old | device_activity_detail | 设备周期活跃 | 1 | 查看 |
| device_runtime | device_runtime_detail | 设备运行区间 | 87 | 查看 |
| device_runtime | device_runtime | 设备运行区间 | 70 | 查看 |
| device_runtime_count_day | device_runtime_count | 设备运行统计 | 0 | 查看 |
| device_runtime_count_day_shadow | device_runtime_count | 设备运行统计 | 343 | 查看 |
| device_runtime_count_month | device_runtime_count | 设备运行统计 | 4 | 查看 |
| device_runtime_count_year | device_runtime_count | 设备运行统计 | 0 | 查看 |
| launcher_ad_play | launcher_ad_play_detail | 广告播放明细 | 74 | 查看 |
| launcher_ad_play_device_count_day | launcher_ad_play_device_count | 广告播放周期统计 | 307 | 查看 |
| launcher_ad_play_device_count_month | launcher_ad_play_device_count | 广告播放周期统计 | 76 | 查看 |
| launcher_ad_play_device_count_year | launcher_ad_play_device_count | 广告播放周期统计 | 58 | 查看 |
| launcher_exec | launcher_exec_record | 广告执行反馈 | 981 | 查看 |
| monitor | visit_minute | 访问监控 | 20 | 查看 |
| nebula_ids | flow_app_runtime | 应用运行明细 | 1567 | 查看 |
| server_monitor | server_monitor | 服务器监控 | 8 | 查看 |
每个表分别列出必填时间戳、普通字段和 TAG。TAG 描述子表所属设备、应用或周期;普通字段记录每次上报的数据。首列 TIMESTAMP 是时间主键,存在 data_key 复合主键列时,两列共同区分同一子表内的记录,data_key 仍属于普通字段,不是 TAG。详见 TDengine 超级表规则。
长度保留数据库定义值;编码、压缩和级别按列列出。tbname 是子表名称,不额外计入字段清单。子表数不是设备数、业务记录数或覆盖范围。时间的日期归一应与相应业务时区保持一致;同名的 record_time 在不同表中可能分别为时间列或 TAG。
app_activity_day
app_activity_detail
保存 SDK 应用的日活跃设备详情,包括版本、时长和 IP 地域信息。实时日志按接收日汇总、旧版直接上报和延迟补报均可产生记录;活跃记录与 APP 运行明细属于不同业务。
ts 表示日周期起点(当日零点);日数据按上报路径取服务端当日、补报日期或日志汇总日期,月、年数据转换为对应周期起点。record_time TAG 取该日期的 yyyyMMdd 整数;package_name TAG 保留应用包名原值。
子表名为 aad_{包名中的点替换为下划线}_{record_time},只有表名中的包名替换句点。data_key = MAC + CPU,直接拼接,无分隔符且保留 MAC 冒号;正常写入将空白 CPU 归为空串,MAC、CPU 仍分别保存在普通字段中。
必填时间戳
| 字段 | 类型 | 长度 | 列角色 | 业务释义 | 编码 / 压缩 / 级别 |
|---|---|---|---|---|---|
| ts | TIMESTAMP | 8 | 首时间列 | 日周期起点(当日零点) | delta-i / lz4 / medium |
普通字段(含复合键)
| 字段 | 类型 | 长度 | 列角色 | 业务释义 | 编码 / 压缩 / 级别 |
|---|---|---|---|---|---|
| data_key | VARCHAR | 64 | 复合主键列 | 设备组合键:MAC 与 CPU 直接拼接 | disabled / lz4 / medium |
| mac | VARCHAR | 32 | 数据列 | 设备 MAC | disabled / lz4 / medium |
| cpu | VARCHAR | 32 | 数据列 | 设备 CPU 标识 | disabled / lz4 / medium |
| version_code | INT | 4 | 数据列 | 应用版本号 | simple8b / lz4 / medium |
| duration | INT | 4 | 数据列 | 应用活跃时长(分钟) | simple8b / lz4 / medium |
| ip | VARCHAR | 64 | 数据列 | 上报 IP | disabled / lz4 / medium |
| country | VARCHAR | 64 | 数据列 | 上报 IP 解析出的国家 | disabled / lz4 / medium |
TAG 标签
| 字段 | 类型 | 长度 | 列角色 | 业务释义 | 编码 / 压缩 / 级别 |
|---|---|---|---|---|---|
| record_time | INT | 4 | 标签 TAG | 日周期日期,yyyyMMdd 整数 | disabled / disabled / disabled |
| package_name | VARCHAR | 255 | 标签 TAG | 应用包名原值 | disabled / disabled / disabled |
查询口径:按完整日周期限定 ts,同时指定 package_name 与 record_time。月首或年首早于查询起点时,该周期会被时间过滤排除。业务查询要求包名和日期范围,日窗口最多 30 天、月窗口最多 730 天、年窗口最多 3650 天;这些是业务限制。当前设备明细入口按周期 TAG 筛选,汇总入口同时使用 ts 范围,直接查询也应提供首时间列范围。
app_activity_month
app_activity_detail
保存 SDK 应用的月活跃设备详情,包括版本、时长和 IP 地域信息。实时日志按接收日汇总、旧版直接上报和延迟补报均可产生记录;活跃记录与 APP 运行明细属于不同业务。
ts 表示月周期起点(月首零点);日数据按上报路径取服务端当日、补报日期或日志汇总日期,月、年数据转换为对应周期起点。record_time TAG 取该日期的 yyyyMM01 整数;package_name TAG 保留应用包名原值。
子表名为 aad_{包名中的点替换为下划线}_{record_time},只有表名中的包名替换句点。data_key = MAC + CPU,直接拼接,无分隔符且保留 MAC 冒号;正常写入将空白 CPU 归为空串,MAC、CPU 仍分别保存在普通字段中。
必填时间戳
| 字段 | 类型 | 长度 | 列角色 | 业务释义 | 编码 / 压缩 / 级别 |
|---|---|---|---|---|---|
| ts | TIMESTAMP | 8 | 首时间列 | 月周期起点(月首零点) | delta-i / lz4 / medium |
普通字段(含复合键)
| 字段 | 类型 | 长度 | 列角色 | 业务释义 | 编码 / 压缩 / 级别 |
|---|---|---|---|---|---|
| data_key | VARCHAR | 64 | 复合主键列 | 设备组合键:MAC 与 CPU 直接拼接 | disabled / lz4 / medium |
| mac | VARCHAR | 32 | 数据列 | 设备 MAC | disabled / lz4 / medium |
| cpu | VARCHAR | 32 | 数据列 | 设备 CPU 标识 | disabled / lz4 / medium |
| version_code | INT | 4 | 数据列 | 应用版本号 | simple8b / lz4 / medium |
| duration | INT | 4 | 数据列 | 应用活跃时长(分钟) | simple8b / lz4 / medium |
| ip | VARCHAR | 64 | 数据列 | 上报 IP | disabled / lz4 / medium |
| country | VARCHAR | 64 | 数据列 | 上报 IP 解析出的国家 | disabled / lz4 / medium |
TAG 标签
| 字段 | 类型 | 长度 | 列角色 | 业务释义 | 编码 / 压缩 / 级别 |
|---|---|---|---|---|---|
| record_time | INT | 4 | 标签 TAG | 月周期日期,yyyyMM01 整数 | disabled / disabled / disabled |
| package_name | VARCHAR | 255 | 标签 TAG | 应用包名原值 | disabled / disabled / disabled |
查询口径:按完整月周期限定 ts,同时指定 package_name 与 record_time。月首或年首早于查询起点时,该周期会被时间过滤排除。业务查询要求包名和日期范围,日窗口最多 30 天、月窗口最多 730 天、年窗口最多 3650 天;这些是业务限制。当前设备明细入口按周期 TAG 筛选,汇总入口同时使用 ts 范围,直接查询也应提供首时间列范围。
app_activity_year
app_activity_detail
保存 SDK 应用的年活跃设备详情,包括版本、时长和 IP 地域信息。实时日志按接收日汇总、旧版直接上报和延迟补报均可产生记录;活跃记录与 APP 运行明细属于不同业务。
ts 表示年周期起点(年首零点);日数据按上报路径取服务端当日、补报日期或日志汇总日期,月、年数据转换为对应周期起点。record_time TAG 取该日期的 yyyy0101 整数;package_name TAG 保留应用包名原值。
子表名为 aad_{包名中的点替换为下划线}_{record_time},只有表名中的包名替换句点。data_key = MAC + CPU,直接拼接,无分隔符且保留 MAC 冒号;正常写入将空白 CPU 归为空串,MAC、CPU 仍分别保存在普通字段中。
必填时间戳
| 字段 | 类型 | 长度 | 列角色 | 业务释义 | 编码 / 压缩 / 级别 |
|---|---|---|---|---|---|
| ts | TIMESTAMP | 8 | 首时间列 | 年周期起点(年首零点) | delta-i / lz4 / medium |
普通字段(含复合键)
| 字段 | 类型 | 长度 | 列角色 | 业务释义 | 编码 / 压缩 / 级别 |
|---|---|---|---|---|---|
| data_key | VARCHAR | 64 | 复合主键列 | 设备组合键:MAC 与 CPU 直接拼接 | disabled / lz4 / medium |
| mac | VARCHAR | 32 | 数据列 | 设备 MAC | disabled / lz4 / medium |
| cpu | VARCHAR | 32 | 数据列 | 设备 CPU 标识 | disabled / lz4 / medium |
| version_code | INT | 4 | 数据列 | 应用版本号 | simple8b / lz4 / medium |
| duration | INT | 4 | 数据列 | 应用活跃时长(分钟) | simple8b / lz4 / medium |
| ip | VARCHAR | 64 | 数据列 | 上报 IP | disabled / lz4 / medium |
| country | VARCHAR | 64 | 数据列 | 上报 IP 解析出的国家 | disabled / lz4 / medium |
TAG 标签
| 字段 | 类型 | 长度 | 列角色 | 业务释义 | 编码 / 压缩 / 级别 |
|---|---|---|---|---|---|
| record_time | INT | 4 | 标签 TAG | 年周期日期,yyyy0101 整数 | disabled / disabled / disabled |
| package_name | VARCHAR | 255 | 标签 TAG | 应用包名原值 | disabled / disabled / disabled |
查询口径:按完整年周期限定 ts,同时指定 package_name 与 record_time。月首或年首早于查询起点时,该周期会被时间过滤排除。业务查询要求包名和日期范围,日窗口最多 30 天、月窗口最多 730 天、年窗口最多 3650 天;这些是业务限制。当前设备明细入口按周期 TAG 筛选,汇总入口同时使用 ts 范围,直接查询也应提供首时间列范围。
app_runtime_archive
flow_app_runtime
保存设备上报的应用运行时长、打开次数和应用版本。设备离线后补报仍按运行日期归属;运行日期与服务端接收时间需要分别使用。
record_time 为设备运行日期/时间,day TAG 取其日期部分的 yyyyMMdd 整数;业务按日上报,但不能把所有存量时间都视为强制零点。package_name TAG 保留包名原值。
子表名为 flow_app_runtime_{包名中的点替换为下划线}_{day},不是每台设备一表。data_key = 去掉全部冒号的 MAC + '_' + CPU,保留大小写与其他字符;空字符串和缺失设备标识不可视为同一种有效设备身份。
必填时间戳
| 字段 | 类型 | 长度 | 列角色 | 业务释义 | 编码 / 压缩 / 级别 |
|---|---|---|---|---|---|
| record_time | TIMESTAMP | 8 | 首时间列 | 设备上报的运行 日期/时间 | delta-i / lz4 / medium |
普通字段(含复合键)
| 字段 | 类型 | 长度 | 列角色 | 业务释义 | 编码 / 压缩 / 级别 |
|---|---|---|---|---|---|
| data_key | VARCHAR | 300 | 复合主键列 | 去冒号 MAC、下划线、CPU 拼接的设备组合键 | disabled / zstd / medium |
| mac | VARCHAR | 20 | 数据列 | 设备 MAC | disabled / zstd / medium |
| cpu_id | VARCHAR | 255 | 数据列 | 设备 CPU 标识 | disabled / zstd / medium |
| version_code | INT | 4 | 数据列 | 应用版本号 | simple8b / lz4 / high |
| duration | INT | 4 | 数据列 | 应用运行时长(分钟) | simple8b / lz4 / high |
| open_time | INT | 4 | 数据列 | 应用打开次数 | simple8b / lz4 / high |
| create_time | TIMESTAMP | 8 | 数据列 | 上报接收时间;缺失时使用消息处理时间 | delta-i / lz4 / high |
TAG 标签
| 字段 | 类型 | 长度 | 列角色 | 业务释义 | 编码 / 压缩 / 级别 |
|---|---|---|---|---|---|
| package_name | VARCHAR | 100 | 标签 TAG | 应用包名原值 | disabled / disabled / disabled |
| day | INT | 4 | 标签 TAG | 运行日期部分,yyyyMMdd 整数 | disabled / disabled / disabled |
查询口径:按 record_time 起止范围、package_name 和 day 查询,设备条件使用普通列 mac/cpu_id。当月和上月使用 TDengine nebula_ids,更早月份使用 app_runtime_archive;跨冷热边界需拆分请求。业务入口要求 MAC、CPU、包名至少提供一项,日期差不超过两个月。归档进度会影响历史数据完整性,查询路由本身不代表归档已完成。
blacklisted
app_kill_record
保存设备针对黑名单策略按日期上报的关闭应用次数。设备反馈经消息队列写入,frequency 保留该条上报值,写入服务不将它累加到已有次数;记录行数与次数合计是不同指标。
ts 必须来自可解析的上报 date,按 yyyy-MM-dd 转为服务端默认时区的日期零点;缺少可解析日期时不以当前时间补齐。create_time 则是处理本批消息的服务端时间。
唯一 TAG black_list_id 取上报的黑名单编号,逻辑关联 MySQL ik_apk.app_blacklisted.id;MySQL 编号为 BIGINT,本 TAG 为 INT,应注意值域差异。子表名为 app_kill_record_{blackListId},每条策略一个子表。data_key = MAC + CPU,MAC 在前、CPU 在后,直接拼接,不去冒号、不加分隔符。
必填时间戳
| 字段 | 类型 | 长度 | 列角色 | 业务释义 | 编码 / 压缩 / 级别 |
|---|---|---|---|---|---|
| ts | TIMESTAMP | 8 | 首时间列 | 设备上报的杀死日期(日期零点) | delta-i / lz4 / medium |
普通字段(含复合键)
| 字段 | 类型 | 长度 | 列角色 | 业务释义 | 编码 / 压缩 / 级别 |
|---|---|---|---|---|---|
| data_key | VARCHAR | 1000 | 复合主键列 | MAC 与 CPU 按顺序直接拼接的设备组合键 | disabled / lz4 / medium |
| mac | VARCHAR | 20 | 数据列 | 设备 MAC | disabled / lz4 / medium |
| cpu_id | VARCHAR | 255 | 数据列 | 设备 CPU 标识 | disabled / lz4 / medium |
| frequency | INT | 4 | 数据列 | 本条上报的杀死次数 | simple8b / lz4 / medium |
| create_time | TIMESTAMP | 8 | 数据列 | 处理本批上报的服务端时间 | delta-i / lz4 / medium |
TAG 标签
| 字段 | 类型 | 长度 | 列角色 | 业务释义 | 编码 / 压缩 / 级别 |
|---|---|---|---|---|---|
| black_list_id | INT | 4 | 标签 TAG | 上报的黑名单策略编号,逻辑关联 MySQL 主记录 | disabled / disabled / disabled |
查询口径:先限定 black_list_id 与 ts 日期范围,再按普通列 mac/cpu_id 查设备。create_time 用于接收时间窗口,不能代替杀死日期。后台异步导出必须选择 ts 范围,按天读取;列表数量统计是记录数,次数统计应使用 frequency。
device_activity_day
device_activity_detail
保存默认 UOTA(聚合新旧 UOTA)来源在日周期内的设备活跃记录。相应设备活动进入系统后,按设备身份与周期归并,并保留设备档案、SDK 版本和 IP 地区信息。同一设备可出现在不同来源库中,跨来源行数不能直接相加当作去重设备数。
ts 归一为当日零点,输入时间缺失时使用服务端当前时间;日期归一按服务端默认时区。TAG record_time 为 yyyyMMdd 整数,region_id 为本次活动归属地区编号,未提供时初始为 -1,写入分支可按 IP 补充。
子表名为 {record_time}_{region_id},没有超级表名前缀。data_key 先去掉 MAC 的全部冒号:CPU 为 null 时仅用该 MAC;CPU 非 null 时为 去冒号 MAC + '_' + CPU。空 CPU 字符串仍产生末尾下划线,不转大小写、不做哈希。
必填时间戳
| 字段 | 类型 | 长度 | 列角色 | 业务释义 | 编码 / 压缩 / 级别 |
|---|---|---|---|---|---|
| ts | TIMESTAMP | 8 | 首时间列 | 当日零点 | delta-i / lz4 / medium |
普通字段(含复合键)
| 字段 | 类型 | 长度 | 列角色 | 业务释义 | 编码 / 压缩 / 级别 |
|---|---|---|---|---|---|
| data_key | VARCHAR | 64 | 复合主键列 | 去冒号 MAC;非 null CPU 以一个下划线连接 | disabled / lz4 / medium |
| mac | VARCHAR | 17 | 数据列 | 设备 MAC | disabled / lz4 / medium |
| cpu | VARCHAR | 32 | 数据列 | 设备 CPU 标识 | disabled / lz4 / medium |
| ip | VARCHAR | 40 | 数据列 | 上报 IP | disabled / lz4 / medium |
| device_id | BIGINT | 8 | 数据列 | 设备档案编号,逻辑关联 | delta-i / lz4 / medium |
| sdk_version | VARCHAR | 64 | 数据列 | 上报 SDK 版本 | disabled / zstd / medium |
TAG 标签
| 字段 | 类型 | 长度 | 列角色 | 业务释义 | 编码 / 压缩 / 级别 |
|---|---|---|---|---|---|
| record_time | INT | 4 | 标签 TAG | 日周期标签,yyyyMMdd 整数 | disabled / disabled / disabled |
| region_id | INT | 4 | 标签 TAG | 活动归属地区编号;未提供时初始为 -1 | disabled / disabled / disabled |
查询口径:先选默认 UOTA(聚合新旧 UOTA)与日粒度,再限定 ts 周期起点范围和 record_time;按地区分析可同时指定 region_id。MAC、CPU、设备编号是普通列,不是设备 TAG。月、年查询应包含所需周期的起点。
device_activity_day_uota2
device_activity_detail
保存域名分发来源在日周期内的设备活跃记录。相应设备活动进入系统后,按设备身份与周期归并,并保留设备档案、SDK 版本和 IP 地区信息。同一设备可出现在不同来源库中,跨来源行数不能直接相加当作去重设备数。
ts 归一为当日零点,输入时间缺失时使用服务端当前时间;日期归一按服务端默认时区。TAG record_time 为 yyyyMMdd 整数,region_id 为本次活动归属地区编号,未提供时初始为 -1,写入分支可按 IP 补充。
子表名为 {record_time}_{region_id},没有超级表名前缀。data_key 先去掉 MAC 的全部冒号:CPU 为 null 时仅用该 MAC;CPU 非 null 时为 去冒号 MAC + '_' + CPU。空 CPU 字符串仍产生末尾下划线,不转大小写、不做哈希。
必填时间戳
| 字段 | 类型 | 长度 | 列角色 | 业务释义 | 编码 / 压缩 / 级别 |
|---|---|---|---|---|---|
| ts | TIMESTAMP | 8 | 首时间列 | 当日零点 | delta-i / lz4 / medium |
普通字段(含复合键)
| 字段 | 类型 | 长度 | 列角色 | 业务释义 | 编码 / 压缩 / 级别 |
|---|---|---|---|---|---|
| data_key | VARCHAR | 64 | 复合主键列 | 去冒号 MAC;非 null CPU 以一个下划线连接 | disabled / zstd / medium |
| mac | VARCHAR | 17 | 数据列 | 设备 MAC | disabled / zstd / medium |
| cpu | VARCHAR | 32 | 数据列 | 设备 CPU 标识 | disabled / zstd / medium |
| ip | VARCHAR | 15 | 数据列 | 上报 IP | disabled / zstd / medium |
| device_id | BIGINT | 8 | 数据列 | 设备档案编号,逻辑关联 | simple8b / lz4 / medium |
| sdk_version | VARCHAR | 64 | 数据列 | 上报 SDK 版本 | disabled / zstd / medium |
TAG 标签
| 字段 | 类型 | 长度 | 列角色 | 业务释义 | 编码 / 压缩 / 级别 |
|---|---|---|---|---|---|
| record_time | INT | 4 | 标签 TAG | 日周期标签,yyyyMMdd 整数 | disabled / disabled / disabled |
| region_id | INT | 4 | 标签 TAG | 活动归属地区编号;未提供时初始为 -1 | disabled / disabled / disabled |
查询口径:先选域名分发与日粒度,再限定 ts 周期起点范围和 record_time;按地区分析可同时指定 region_id。MAC、CPU、设备编号是普通列,不是设备 TAG。月、年查询应包含所需周期的起点。
device_activity_day_uota_new
device_activity_detail
保存新 UOTA(新包名 com.soft.update)来源 在日周期内的设备活跃记录。相应设备活动进入系统后,按设备身份与周期归并,并保留设备档案、SDK 版本和 IP 地区信息。同一设备可出现在不同来源库中,跨来源行数不能直接相加当作去重设备数。
ts 归一为当日零点,输入时间缺失时使用服务端当前时间;日期归一按服务端默认时区。TAG record_time 为 yyyyMMdd 整数,region_id 为本次活动归属地区编号,未提供时初始为 -1,写入分支可按 IP 补充。
子表名为 {record_time}_{region_id},没有超级表名前缀。data_key 先去掉 MAC 的全部冒号:CPU 为 null 时仅用该 MAC;CPU 非 null 时为 去冒号 MAC + '_' + CPU。空 CPU 字符串仍产生末尾下划线,不转大小写、不做哈希。
必填时间戳
| 字段 | 类型 | 长度 | 列角色 | 业务释义 | 编码 / 压缩 / 级别 |
|---|---|---|---|---|---|
| ts | TIMESTAMP | 8 | 首时间列 | 当日零点 | delta-i / lz4 / medium |
普通字段(含复合键)
| 字段 | 类型 | 长度 | 列角色 | 业务释义 | 编码 / 压缩 / 级别 |
|---|---|---|---|---|---|
| data_key | VARCHAR | 64 | 复合主键列 | 去冒号 MAC;非 null CPU 以一个下划 线连接 | disabled / zstd / medium |
| mac | VARCHAR | 17 | 数据列 | 设备 MAC | disabled / zstd / medium |
| cpu | VARCHAR | 32 | 数据列 | 设备 CPU 标识 | disabled / zstd / medium |
| ip | VARCHAR | 15 | 数据列 | 上报 IP | disabled / zstd / medium |
| device_id | BIGINT | 8 | 数据列 | 设备档案编号,逻辑关联 | simple8b / lz4 / medium |
| sdk_version | VARCHAR | 64 | 数据列 | 上报 SDK 版本 | disabled / zstd / medium |
TAG 标签
| 字段 | 类型 | 长度 | 列角色 | 业务释义 | 编码 / 压缩 / 级别 |
|---|---|---|---|---|---|
| record_time | INT | 4 | 标签 TAG | 日周期标签,yyyyMMdd 整数 | disabled / disabled / disabled |
| region_id | INT | 4 | 标签 TAG | 活动归属地区编号;未提供时初始为 -1 | disabled / disabled / disabled |
查询口径:先选新 UOTA(新包名 com.soft.update)与日粒度,再限定 ts 周期起点范围和 record_time;按地区分析可同时指定 region_id。MAC、CPU、设备编号是普通列,不是设备 TAG。月、年查询应包含所需周期的起点。
device_activity_day_uota_old
device_activity_detail
保存旧 UOTA(旧包名 com.android.netservice)来源在日周期内的设备活跃记录。相应设备活动进入系统后,按设备身份与周期归并,并保留设备档案、SDK 版本和 IP 地区信息。同一设备可出现在不同来源库中,跨来源行数不能直接相加当作去重设备数。
ts 归一为当日零点,输入时间缺失时使用服务端当前时间;日期归一按服务端默认时区。TAG record_time 为 yyyyMMdd 整数,region_id 为本次活动归属地区编号,未提供时初始为 -1,写入分支可按 IP 补充。
子表名为 {record_time}_{region_id},没有超级表名前缀。data_key 先去掉 MAC 的全部冒号:CPU 为 null 时仅用该 MAC;CPU 非 null 时为 去冒号 MAC + '_' + CPU。空 CPU 字符串仍产生末尾下划线,不转大小写、不做哈希。
必填时间戳
| 字段 | 类型 | 长度 | 列角色 | 业务释义 | 编码 / 压缩 / 级别 |
|---|---|---|---|---|---|
| ts | TIMESTAMP | 8 | 首时间列 | 当日零点 | delta-i / lz4 / medium |
普通字段(含复合键)
| 字段 | 类型 | 长度 | 列角色 | 业务释义 | 编码 / 压缩 / 级别 |
|---|---|---|---|---|---|
| data_key | VARCHAR | 64 | 复合主键列 | 去冒号 MAC;非 null CPU 以一个下划线连接 | disabled / zstd / medium |
| mac | VARCHAR | 17 | 数据列 | 设备 MAC | disabled / zstd / medium |
| cpu | VARCHAR | 32 | 数据列 | 设备 CPU 标识 | disabled / zstd / medium |
| ip | VARCHAR | 15 | 数据列 | 上报 IP | disabled / zstd / medium |
| device_id | BIGINT | 8 | 数据列 | 设备档案编号,逻辑关联 | simple8b / lz4 / medium |
| sdk_version | VARCHAR | 64 | 数据列 | 上报 SDK 版本 | disabled / zstd / medium |
TAG 标签
| 字段 | 类型 | 长度 | 列角色 | 业务释义 | 编码 / 压缩 / 级别 |
|---|---|---|---|---|---|
| record_time | INT | 4 | 标签 TAG | 日周期标签,yyyyMMdd 整数 | disabled / disabled / disabled |
| region_id | INT | 4 | 标签 TAG | 活动归属地区编号;未提供时初始为 -1 | disabled / disabled / disabled |
查询口径:先选旧 UOTA(旧包名 com.android.netservice)与日粒度,再限定 ts 周期起点范围和 record_time;按地区分析可同时指定 region_id