66 lines
3.5 KiB
SQL
66 lines
3.5 KiB
SQL
create database if not exists `intimate_extractor`;
|
|
use intimate_extractor;
|
|
|
|
CREATE TABLE IF NOT EXISTS `streamer` (
|
|
`uid` bigint AUTO_INCREMENT COMMENT '自增UID, 便于查询定位',
|
|
`platform` varchar(255) NOT NULL COMMENT '平台',
|
|
`user_id` varchar(255) NOT NULL COMMENT '用户唯一UID',
|
|
`user_name` varchar(255) DEFAULT NULL COMMENT '用户名字 区别于ID',
|
|
`live_url` text COMMENT '直播的url',
|
|
`channel` varchar(128) DEFAULT NULL COMMENT'所属 频道,分类 未必所有平台都有明确的标签',
|
|
`ext` json DEFAULT NULL COMMENT '扩展类型, 把一些可能需要但是没字段的数据放在json扩展',
|
|
|
|
`is_update_streamer` tinyint(1) DEFAULT 0 COMMENT '是否需要持续更新streamer的信息. 1为需要,0则否',
|
|
`is_update_url` tinyint(1) DEFAULT 0 COMMENT '是否需要持续更新update_url. 1为需要,0则否',
|
|
`update_url` json DEFAULT NULL COMMENT '更新数据的url, 如直播url, profile url等',
|
|
`update_interval` int DEFAULT 30 COMMENT '分钟单位, 默认30分钟, 下次更新的时间间隔',
|
|
`update_time` Timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
|
|
`latest_log_uid` bigint COMMENT '最新更新的日志表的uid, 方便关联',
|
|
|
|
`error_msg` text DEFAULT NULL COMMENT '错误信息',
|
|
`operator` int DEFAULT 0 COMMENT '操作标志位, 根据不同解析方法有不同标志',
|
|
|
|
PRIMARY KEY (`uid`),
|
|
UNIQUE KEY `platform_user_id_idx` (`platform`, `user_id`),
|
|
KEY `platform_idx` (`platform`),
|
|
KEY `user_id_idx` (`user_id`),
|
|
KEY `user_name_idx` (`user_name`),
|
|
KEY `channel_idx` (`channel`),
|
|
KEY `update_time_idx` (`update_time`),
|
|
KEY `operator_idx` (`operator`)
|
|
);
|
|
|
|
CREATE TABLE IF NOT EXISTS `collect_log` (
|
|
`log_uid` bigint AUTO_INCREMENT COMMENT '日志自增UID',
|
|
`streamer_uid` bigint COMMENT '对应streamer表的UID',
|
|
`platform` varchar(255) NOT NULL COMMENT '平台名称, 方便于搜索日志分类',
|
|
`user_id` varchar(255) NOT NULL COMMENT '用户UID',
|
|
|
|
`is_live_streaming` tinyint(1) DEFAULT 0 COMMENT '是否正在直播',
|
|
`is_error` tinyint(1) DEFAULT 0 COMMENT '是否采集数据的时候出错, 便于定位错误',
|
|
|
|
`followers` bigint(11) DEFAULT NULL COMMENT '关注数',
|
|
`views` bigint(11) DEFAULT NULL COMMENT '当前直播的观众',
|
|
`giver` json DEFAULT NULL COMMENT '打赏礼物者,和一些金额数据等, 数据类型异于平台',
|
|
`gratuity` bigint(11) DEFAULT NULL COMMENT '打赏值的总值, 数据类型异于平台',
|
|
|
|
`live_title` text DEFAULT NULL COMMENT '直播标题',
|
|
`live_start_time` Timestamp NULL DEFAULT NULL COMMENT '直播开始时间',
|
|
`live_end_time` Timestamp NULL DEFAULT NULL COMMENT '直播结束时间',
|
|
`update_time` Timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '数据日志更新时间',
|
|
`tags` json DEFAULT NULL COMMENT '主播直播的类型标签, 非永久固定',
|
|
`ext` json DEFAULT NULL COMMENT '扩展字段, 用于一些数据不存在的字段, 便于记录扩展',
|
|
|
|
`error_msg` text DEFAULT NULL COMMENT '错误信息',
|
|
|
|
PRIMARY KEY (`log_uid`),
|
|
KEY `streamer_uid_idx` (`streamer_uid`),
|
|
KEY `platform_idx` (`platform`),
|
|
KEY `user_id_idx` (`user_id`),
|
|
KEY `is_live_streaming_idx` (`is_live_streaming`),
|
|
KEY `is_error_idx` (`is_error`),
|
|
KEY `followers_idx` (`followers`),
|
|
KEY `views_idx` (`views`),
|
|
KEY `gratuity_idx` (`gratuity`),
|
|
KEY `update_time_idx` (`update_time`)
|
|
) |