資料表設計

2021-08-21 04:53:20 字數 3341 閱讀 1063

在進行完了資料調研、需求分析、技術實現方案,進行資料設計。

資料設計,往往包含兩個環節:

在本專案中,我們所有的資料設計環節,只會涉及第二個,不會涉及第乙個。因為我們為了突出課程重點,也就是spark。所以主要還是集中在spark上面,就不要花時間去做hive etl了。設計mysql中的業務表的結構。

create table `session_aggr_stat` (

`task_id` int(11) not null,

`session_count` int(11) default null,

`1s_3s` double default null,

`4s_6s` double default null,

`7s_9s` double default null,

`10s_30s` double default null,

`30s_60s` double default null,

`1m_3m` double default null,

`3m_10m` double default null,

`10m_30m` double default null,

`30m` double default null,

`1_3` double default null,

`4_6` double default null,

`7_9` double default null,

`10_30` double default null,

`30_60` double default null,

`60` double default null,

primary key (`task_id`)

) engine=innodb default charset=utf8

create table `session_random_extract` (

`task_id` int(11) not null,

`session_id` varchar(255) default null,

`start_time` varchar(50) default null,

`end_time` varchar(50) default null,

`search_keywords` varchar(255) default null,

primary key (`task_id`)

) engine=innodb default charset=utf8

create table `top10_category` (

`task_id` int(11) not null,

`category_id` int(11) default null,

`click_count` int(11) default null,

`order_count` int(11) default null,

`pay_count` int(11) default null,

primary key (`task_id`)

) engine=innodb default charset=utf8

create table `top10_category_session` (

`task_id` int(11) no null,

`category_id` int(11) default null,

`session_id` varchar(255) default null,

`click_count` int(11) default null,

primary key (`task_id`)

) engine=innodb default charset=utf8

create table `session_detail` (

`task_id` int(11) not null,

`user_id` int(11) default null,

`session_id` varchar(255) default null,

`page_id` int(11) default null,

`action_time` varchar(255) default null,

`search_keyword` varchar(255) default null,

`click_category_id` int(11) default null,

`click_product_id` int(11) default null,

`order_category_ids` varchar(255) default null,

`order_product_ids` varchar(255) default null,

`pay_category_ids` varchar(255) default null,

`pay_product_ids` varchar(255) default null,

primary key (`task_id`)

) engine=innodb default charset=utf8

create table `task` (

`task_id` int(11) not null auto_increment,

`task_name` varchar(255) default null,

`create_time` varchar(255) default null,

`start_time` varchar(255) default null,

`finish_time` varchar(255) default null,

`task_type` varchar(255) default null,

`task_status` varchar(255) default null,

`task_param` text,

primary key (`task_id`)

) engine=innodb auto_increment=0 default charset=utf8

在資料設計以後,就正式進入乙個漫長的環節,就是編碼實現階段,coding階段。在編碼實現階段,每開發完乙個功能,其實都會走後續的兩個環節,就是本地測試和生產環境測試。

大家需要在windows上面,自己安裝mysql資料庫。然後本地測試的時候,將資料插入本地的mysql中。

接下來,就是在完成了資料調研、需求分析、技術方案設計、資料設計以後,正式進入編碼實現和功能測試階段。最後才是效能調優階段。

資料表設計

資料表設計 三大正規化 第一正規化 列的原子性,每一列是不可再拆分的 若是還要查詢省份或地區,則該錶有誤,不滿足第一正規化,則應 第二正規化 表裡面的每一列都應與主鍵有關 範例 品種列亂入不和主鍵有關係,不滿足第二正規化 科考,人員代號和科目代號為聯合主鍵,姓名雖與人員代號有關,但在成績表出來前人的...

quartz設計資料表

qrtz calendars 以 blob 型別儲存 quartz 的 calendar 資訊 qrtz cron triggers 儲存 cron trigger,包括 cron 表示式和時區資訊 qrtz fired triggers 儲存與已觸發的 trigger 相關的狀態資訊,以及相聯 j...

設計資料表結構

需注意點 1,新建表時,記得在其它表新建 外來鍵 xx id,關聯新錶id 遇到的麻煩 1.1,專案中早期設計時候沒有建立外來鍵id,在新增的需求中,又需要該id去獲取關聯表的字段資料 之後,在entity裡新建變數,對映成欄位。再補了差不多一天的外來鍵資料,稍微慶幸資料不多 1.2,新開發乙個模組...