1. 程式人生 > >微博mysql表設計思路

微博mysql表設計思路

版權宣告: https://blog.csdn.net/qq_26877377/article/details/80942866

login_info:
   該表主要管理微博賬號和密碼
            
id:主鍵,自增長,不用使用者管理
name:登陸賬號
password:登陸密碼  
enable:賬號是否有效,1表示有效,0表示無效,在程式執行的時候,如果賬號被封,該欄位會被程式置為0,如果賬號密碼不對,那麼程式會把該欄位設定為2

建立語句:
CREATE TABLE `login_info` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `name` varchar(100) DEFAULT NULL,
  `password` varchar(200) DEFAULT NULL,
  `enable` int(11) DEFAULT '1',
  PRIMARY KEY (`id`),
  UNIQUE KEY `name` (`name`)
) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8;


keywords:
   該表主要是配合做微博話題搜尋使用,請在搜尋話題之前向該表中插入關鍵詞
id:主鍵,自增長,不用使用者管理
keyword:搜尋關鍵詞
enable:關鍵詞是否有效,1表示有效,0表示無效

建立語句:
CREATE TABLE `keywords` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `keyword` varchar(200) DEFAULT NULL,
  `enable` int(11) DEFAULT '1',
  PRIMARY KEY (`id`),
  UNIQUE KEY `keyword` (`keyword`)
) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8;



weibo_data:
該表主要儲存微博資訊,目前微博資訊有兩個來源:1.通過抓取種子使用者主頁所有原創微博獲取 2.通過搜尋指定話題獲取

id 主鍵
weibo_id   微博id
weibo_cont 微博內容
weibo_img  微博圖片url
weibo_img_path 微博圖片儲存路徑
weibo_vedio    微博視訊url
repost_num 轉發數
comment_num    評論數
praise_num    點贊數
uid    博主id
is_origin  是否是原創,1表示是,0表示否
device 釋出裝置
weibo_url  微博url
create_time    釋出時間
comment_crawled    該微博評論是否已經抓取,1表示已經抓取,0表示未抓取
repost_crawled 該微博的轉發是否已經抓取,1表示已經抓取,0表示未抓取
dialogue_crawled   該微博的評論是否已經抓取,1表示已經抓取,0表示未抓取
praise_crawled 該微博的點贊是否已經抓取,1表示已經抓取,0表示未抓取
建立語句:
CREATE TABLE `weibo_data` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `weibo_id` varchar(200) DEFAULT NULL,
  `weibo_cont` text,
  `weibo_img` varchar(1000) DEFAULT NULL,
  `weibo_img_path` varchar(1000) DEFAULT '',
  `weibo_video` varchar(1000) DEFAULT NULL,
  `repost_num` int(11) DEFAULT '0',
  `comment_num` int(11) DEFAULT '0',
  `praise_num` int(11) DEFAULT '0',
  `uid` varchar(20) DEFAULT NULL,
  `is_origin` int(11) DEFAULT '1',
  `device` varchar(200) DEFAULT '',
  `weibo_url` varchar(300) DEFAULT '',
  `create_time` varchar(200) DEFAULT NULL,
  `comment_crawled` int(11) DEFAULT '0',
  `repost_crawled` int(11) DEFAULT '0',
  `dialogue_crawled` int(11) DEFAULT '0',
  `praise_crawled` int(11) DEFAULT '0',
  PRIMARY KEY (`id`),
  UNIQUE KEY `weibo_id` (`weibo_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;


keywords_wbdata:
關鍵詞--微博中間表,通過聯結查詢獲取特定關鍵詞相關微博
id 主鍵    
keyword_id 關鍵詞主鍵
wb_id  微博id(不是微博主鍵)
建立語句:
CREATE TABLE `keywords_wbdata` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `keyword_id` int(11) DEFAULT NULL,
  `wb_id` varchar(200) DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

weibo_comment:
微博評論表,儲存微博id和其相關評論
id 主鍵
comment_id 評論id
comment_cont   評論內容
weibo_id   微博id
user_id    評論使用者id
create_time 評論時間
request_tiem 獲取資料時間
建立語句:
CREATE TABLE `weibo_comment` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `comment_id` varchar(50) DEFAULT NULL,
  `comment_cont` text,
  `comment_screen_name` text,
  `weibo_id` varchar(200) DEFAULT NULL,
  `user_id` varchar(20) DEFAULT NULL,
  `create_time` varchar(200) DEFAULT NULL,
  `request_time` varchar(200) DEFAULT NULL,
  PRIMARY KEY (`id`),
  UNIQUE KEY `comment_id` (`comment_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

weibo_repost:
微博轉發表,儲存轉發相關層級資訊
id 主鍵
user_id    當前轉發使用者id
user_name  使用者名稱
weibo_id   轉發微博id
parent_user_id 上層使用者id
repost_time    轉發時間
repost_cont    轉發內容
weibo_url  轉發微博url
parent_user_name      上層使用者名稱
root_weibo_id 源微博id
request_tiem 獲取資料時間
建立語句:
CREATE TABLE `weibo_repost` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `user_id` varchar(20) DEFAULT NULL,
  `user_name` varchar(200) DEFAULT NULL,
  `weibo_id` varchar(200) DEFAULT NULL,
  `parent_user_id` varchar(20) DEFAULT NULL,
  `repost_time` varchar(200) DEFAULT NULL,
  `repost_cont` text,
  `weibo_url` varchar(200) DEFAULT NULL,
  `parent_user_name` varchar(200) DEFAULT NULL,
  `root_weibo_id` varchar(200) DEFAULT NULL,
  `request_time` varchar(200) DEFAULT NULL,
  PRIMARY KEY (`id`),
  UNIQUE KEY `weibo_id` (`weibo_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;


weibo_praise
微博點贊表,儲存使用者和微博id
id 主鍵
user_id    點贊使用者id
weibo_id   微博id
crawl_time 抓取點贊時間

建立語句:
CREATE TABLE `weibo_praise` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `user_id` varchar(20) DEFAULT NULL,
  `weibo_id` varchar(200) DEFAULT NULL,
  `crawl_time` timestamp NULL DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

wbuser:
該表主要儲存使用者個人資訊
id 主鍵
uid    使用者id
name   暱稱
gender 性別,0表示未知,1表示男,2表示女
birthday   生日
location   位置
description    簡介
register_time  註冊時間
verify_type    認證型別,0表示未認證,1表示個人認證,2表示企業認證
verify_info    認證資訊
follows_num    關注數
fans_num   粉絲數
wb_num 微博數
level  等級
tags   標籤
work_info  工作資訊
contact_info   聯絡方式
education_info 教育資訊
head_img   頭像url
# isFan 預留 0/1 來表示某個狀態
建立語句:
CREATE TABLE `wbuser` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `uid` varchar(20) DEFAULT NULL,
  `name` varchar(200) DEFAULT '',
  `gender` int(11) DEFAULT '0',
  `birthday` varchar(200) DEFAULT '',
  `location` varchar(100) DEFAULT '',
  `description` varchar(500) DEFAULT '',
  `register_time` varchar(200) DEFAULT '',
  `verify_type` int(11) DEFAULT '0',
  `verify_info` varchar(2500) DEFAULT '',
  `follows_num` int(11) DEFAULT '0',
  `fans_num` int(11) DEFAULT '0',
  `wb_num` int(11) DEFAULT '0',
  `level` int(11) DEFAULT '0',
  `tags` varchar(500) DEFAULT '',
  `work_info` varchar(500) DEFAULT '',
  `contact_info` varchar(300) DEFAULT '',
  `education_info` varchar(300) DEFAULT '',
  `head_img` varchar(500) DEFAULT '',
  PRIMARY KEY (`id`),
  UNIQUE KEY `uid` (`uid`)
) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8;

--------------------- 作者:半吊子Py全棧工程師 來源:CSDN 原文:https://blog.csdn.net/qq_26877377/article/details/80942866?utm_source=copy 版權宣告:本文為博主原創文章,轉載請附上博文連結!