ik_app_install · 设备应用安装
MySQL 8.0.35。共 5 张表/视图、45 个字段、0 条物理外键。
保存按月存储的设备安装快照,以及按月份、应用版本汇总的安装覆盖数量。设备按配置的采集周期或事件上报,按月存储不表示每月才上报一次;安装快照描述“装了什么”,不表示实际打开或运行过。
表清单
使用状态:已接入 1 张、动态使用 4 张。
| 表名 | 数据库表注释 | 字段数 | 使用状态 | 字段与索引 |
|---|---|---|---|---|
| app_install_count_package | 任务模块-设备APP安装列表详情 | 9 | 已接入 | 查看 |
| app_install_device202606 | 任务模块-设备APP安装列表 | 9 | 动态使用 | 查看 |
| app_install_device202607 | 任务模块-设备APP安装列表 | 9 | 动态使用 | 查看 |
| app_install_device202608 | 任务模块-设备APP安装列表 | 9 | 动态使用 | 查看 |
| app_install_device202609 | 任务模块-设备APP安装列表 | 9 | 动态使用 | 查看 |
数据 库注释保留原文,可能包含历史业务名称;用途与数据来源另行说明。默认值 NULL 表示元数据未返回显式默认值,可空性以“可空”列为准。未填写的注释不补造为数据库原注释。
app_install_count_package
BASE TABLE;引擎 InnoDB;表排序规则 utf8mb4_general_ci。
| 字段 | 类型 | 可空 | 默认值 | 数据库字段注释 | 附加属性 |
|---|---|---|---|---|---|
| id | int | 否 | NULL | 主键 | auto_increment |
| app_name | varchar(255) | 是 | NULL | APP名称 | — |
| class_name | varchar(255) | 是 | NULL | 启动类名 | — |
| package_name | varchar(255) | 是 | NULL | 包名 | — |
| month | bigint | 是 | NULL | 统计月份 | — |
| version_name | varchar(255) | 是 | NULL | 版本名称 | — |
| version_code | bigint | 是 | NULL | 版本号 | — |
| device_count | int | 是 | NULL | 设备数量 | — |
| create_time | datetime | 是 | NULL | 创建时间 | — |
索引(括号内数字为前缀长度,联合列严格按顺序列出)
| 索引名 | 性质 | 列顺序 | 方法 | 注释 |
|---|---|---|---|---|
| month_index | 普通 | month | BTREE | — |
| package_name_index | 普通 | package_name | BTREE | — |
| PRIMARY | 主键 | id | BTREE | — |
本表无物理外键。
业务与查询
使用情况:已接入。 保存按月份、包名和版本生成的安装覆盖统计,页面读取已有离线结果。统计由安装快照展开后汇总,不随每次上报立即变化;包名及应用说明来自应用基础资料。
month_index 与 package_name_index 是两个独立索引。
app_install_device202606
BASE TABLE;引擎 InnoDB;表排序规则 utf8mb4_general_ci。
| 字段 | 类型 | 可空 | 默认值 | 数据库字段注释 | 附加属性 |
|---|---|---|---|---|---|
| id | int | 否 | NULL | 主键 | auto_increment |
| mac | varchar(255) | 是 | NULL | mac地址 | — |
| cpu_id | varchar(255) | 是 | NULL | cpu标识 | — |
| last_undate_Time | datetime | 是 | NULL | 设备端采集时间 | — |
| app_count | int | 是 | NULL | APP数量 | — |
| create_time | datetime | 是 | NULL | 创建时间 | — |
| update_time | datetime | 是 | NULL | 更新时间 | — |
| apps | json | 是 | NULL | apps信息集合 | — |
| partition_index | int | 否 | NULL | 分区索 引 | — |
索引(括号内数字为前缀长度,联合列严格按顺序列出)
| 索引名 | 性质 | 列顺序 | 方法 | 注释 |
|---|---|---|---|---|
| app_count | 普通 | app_count | BTREE | — |
| mac_cpu | 唯一 | mac, cpu_id, partition_index | BTREE | — |
| PRIMARY | 主键 | id, partition_index | BTREE | — |
本表无物理外键。
业务与查询
使用情况:动态使用。 按服务器接收月份保存设备最近上报的安装清单,包含应用数量、采集时间和完整应用集合。启用安装入库后更新月快照,列表由同月ES检索副本提供,包详情由MySQL展开;一月一份最近快照不是完整变更历史。
按接收月份选择月表,再同时限定设备及 partition_index;每月表保存最近一次快照,不能还原任意历史时点。
app_install_device202607
BASE TABLE;引擎 InnoDB;表排序规则 utf8mb4_general_ci。
| 字段 | 类型 | 可空 | 默认值 | 数据库字段注释 | 附加属性 |
|---|---|---|---|---|---|
| id | int | 否 | NULL | 主键 | auto_increment |
| mac | varchar(255) | 是 | NULL | mac地址 | — |
| cpu_id | varchar(255) | 是 | NULL | cpu标识 | — |
| last_undate_Time | datetime | 是 | NULL | 设备端采集时间 | — |
| app_count | int | 是 | NULL | APP数量 | — |
| create_time | datetime | 是 | NULL | 创建时间 | — |
| update_time | datetime | 是 | NULL | 更新时间 | — |
| apps | json | 是 | NULL | apps信息集合 | — |
| partition_index | int | 否 | NULL | 分区索引 | — |
索引(括号内数字为前缀长度,联合列严格按顺序列出)
| 索引名 | 性质 | 列顺序 | 方法 | 注释 |
|---|---|---|---|---|
| app_count | 普通 | app_count | BTREE | — |
| mac_cpu | 唯一 | mac, cpu_id, partition_index | BTREE | — |
| PRIMARY | 主键 | id, partition_index | BTREE | — |
本表无物理外键。
业务与查询
使用情况:动态使用。 按服务器接收月份保存设备最近上报的安装清单,包含应用数量、采集时间和完整应用集合。启用安装入库后更新月快照,列表由同月ES检索副本提供,包详情由MySQL展开;一月一份最近快照不是完整变更历史。
按接收月份选择月表,再同时限定设备及 partition_index;每月表保存最近一次快照,不能还原任意历史时点。
app_install_device202608
BASE TABLE;引擎 InnoDB;表排序规则 utf8mb4_general_ci。
| 字段 | 类型 | 可空 | 默认值 | 数据库字段注释 | 附加属性 |
|---|---|---|---|---|---|
| id | int | 否 | NULL | 主键 | auto_increment |
| mac | varchar(255) | 是 | NULL | mac地址 | — |
| cpu_id | varchar(255) | 是 | NULL | cpu标识 | — |
| last_undate_Time | datetime | 是 | NULL | 设备端采集时间 | — |
| app_count | int | 是 | NULL | APP数量 | — |
| create_time | datetime | 是 | NULL | 创建时间 | — |
| update_time | datetime | 是 | NULL | 更新时间 | — |
| apps | json | 是 | NULL | apps信息集合 | — |
| partition_index | int | 否 | NULL | 分区索引 | — |
索引(括号内数字为前缀长度,联合列严格按顺序列出)
| 索引名 | 性质 | 列顺序 | 方法 | 注释 |
|---|---|---|---|---|
| app_count | 普通 | app_count | BTREE | — |
| mac_cpu | 唯一 | mac, cpu_id, partition_index | BTREE | — |
| PRIMARY | 主键 | id, partition_index | BTREE | — |
本表无物理外键。
业务与查询
使用情况:动态使用。 按服务器接收月份保存设备最近上报的安装清单,包含应用数量、采集时间和完整应用集合。启用安装入库后更新月快照,列表由同月ES检索副本提供,包详情由MySQL展开;一月一份最近快照不是完整变更历史。
按接收月份选择月表,再同时限定设备及 partition_index;每月表保存最近一次快照,不能还原任意历史时点。
app_install_device202609
BASE TABLE;引擎 InnoDB;表排序规则 utf8mb4_general_ci。
| 字段 | 类型 | 可空 | 默认值 | 数据库字段注释 | 附加属性 |
|---|---|---|---|---|---|
| id | int | 否 | NULL | 主键 | auto_increment |
| mac | varchar(255) | 是 | NULL | mac地址 | — |
| cpu_id | varchar(255) | 是 | NULL | cpu标识 | — |
| last_undate_Time | datetime | 是 | NULL | 设备端采集时间 | — |
| app_count | int | 是 | NULL | APP数量 | — |
| create_time | datetime | 是 | NULL | 创建时间 | — |
| update_time | datetime | 是 | NULL | 更新时间 | — |
| apps | json | 是 | NULL | apps信息集合 | — |
| partition_index | int | 否 | NULL | 分区索引 | — |
索引(括号内数字为前缀长度,联合列严格按顺序列出)
| 索引名 | 性质 | 列顺序 | 方法 | 注释 |
|---|---|---|---|---|
| app_count | 普通 | app_count | BTREE | — |
| mac_cpu | 唯一 | mac, cpu_id, partition_index | BTREE | — |
| PRIMARY | 主键 | id, partition_index | BTREE | — |
本表无物理外键。
业务与查询
使用情况:动态使用。 按服务器接收月份保存设备最近上报的安装清单,包含应用数量、采集时间和完整应用集合。启用安装入库后更新月快照,列表由同月ES检索副本提供,包详情由MySQL展开;一月一份最近快照不是完整变更历史。
按接收月份选择月表,再同时限定设备及 partition_index;每月表保存最近一次快照,不能还原任意历史时点。
分区设计
| 表 | 分区数 | 方法 | 分区表达式 | 分区名与取值范围 |
|---|---|---|---|---|
| app_install_device202606 | 150 | LIST | `partition_index` | pN VALUES IN (N),N=1..150;每段逐值连续,段间值不在此分区清单 |
| app_install_device202607 | 150 | LIST | `partition_index` | pN VALUES IN (N),N=1..150;每段逐值连续,段间值不在此分区清单 |
| app_install_device202608 | 150 | LIST | `partition_index` | pN VALUES IN (N),N=1..150;每段逐值连续,段间值不在此分区清单 |
| app_install_device202609 | 150 | LIST | `partition_index` | pN VALUES IN (N),N=1..150;每段逐值连续,段间值不在此分区清单 |
查询上述 LIST 分区表时,在业务条件之外同时传入按该表写入规则计算的 partition_index,以缩小需访问的分区范围。不同表族的计算规则不能互换;计算方法与 Java、Python 示例见分区规则。
本库查询要点
先选 app_install_deviceYYYYMM,再按 mac、cpu_id、partition_index 定位,唯一索引 mac_cpu(mac,cpu_id,partition_index);每表150个LIST分区,值1—150。先筛设备再展开apps。统计表只有 month_index(month) 与 package_name_index(package_name) 两个独立索引,不是月份+包名联合索引。