Database 板


LINE

各位大大好 最近設計資料庫時遇到一些問題 想請問前輩 假設一個網站上面有50個功能,每個功能結束時會call一個api去update 一張資料表的欄位 及 select 動作。 若同時間約有10萬人使用這50個功能,而且不用批次寫入資料庫的方式, 有比較好的設計方式? 我的想法是,將這一張資料表,在依功能拆成5~10張小表, 分散資料表被request的數量。 網路上有找到Partition Table的資訊,但無奈看不是很懂, 想請各位前輩有沒有好的方式,關鍵字也可以QQ --



※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 175.96.111.149
※ 文章網址: https://webptt.com/m.aspx?n=bbs/Database/M.1421334858.A.E4B.html
1F:推 iamnotfat: 用戶行為結束後, 為何還要select 給他? 這個overhead 01/16 10:44
2F:→ iamnotfat: 有點危險~ 01/16 10:44
3F:→ gname: 原po指的SELECT 應該是 UPDATE 完後使用者要看新的資料 01/16 13:23
4F:→ gname: 給原po: 你的系統可以同時間承載10萬人連上來用嗎? 01/16 13:25
5F:→ gname: 如果不行,那你何必去考量這個情況? 01/16 13:26
6F:→ konkonchou: 效能是個問題,deadlock也得考慮,AP加個排queue功能 01/16 15:36
7F:→ konkonchou: 或許犧牲一點點即時性但整體穩定會比較好一些 01/16 15:36
8F:推 wen001: 你的update與select可否再描述一下。例如是否update同一 01/17 21:51
9F:→ wen001: 筆row,還是有其他where條件值。 01/17 21:51
我有一個總表 去記錄每個client對於某項任務的值 有一個任務條件表 去記錄每個任務 達成的條件 例如 吃有一個任務是吃50碗飯 使用者吃完時 我會先去 更新總表內對於此任務的值 maybe 是 49 更新完後 我會去條件表抓此任務 完成的條件 在這個情況是50 若49 = 50 我就會通知使用者完成了 所以update的確是有where條件,條件是某個clientSn和任務Sn select也是有where值的 而以上所說的是 指是對於單一使用者而言 而我們公司 伺服器的數量 的確可以乘載10萬人以上 這是沒問題的 只是 因為要達到 任務完成 就要馬上通知使用者 該任務完成 我覺得這樣會對總表有大量的update 以及對任務條件表 大量的select 是有想過用index的方式 或者將總表拆成小表 不過還是想問問有沒有更好的方式 ※ 編輯: keke0421 (36.230.134.221), 01/17/2015 23:43:50
10F:推 wen001: 你有client sn與任務sn 所以就不會存在同一筆row update 01/18 00:14
11F:→ wen001: 問題,lock問題沒有程式干預就還好。你的問題在於可能會在 01/18 00:14
12F:→ wen001: 單一table的select產生大IO。 01/18 00:14
13F:推 wen001: 能盡量拆分table就儘量拆,wher 01/18 00:19
14F:→ wen001: e條件要考慮index,同一語句下若where條件太多先用子查詢縮 01/18 00:19
15F:→ wen001: 小範圍,記得同一sql語句 子查詢會先載入在記憶體。 01/18 00:19
16F:推 wen001: partition概念有點像是用月份拆分不同減少IO。建議用程式 01/18 00:23
17F:→ wen001: 解決,開發階段先別考慮partition。 01/18 00:23
18F:推 wen001: 加油,硬體上大陸有用一台AIX+夠強的Storage撐整個中國的 01/18 00:33
19F:→ wen001: 春運,沒理由臺灣不行。 01/18 00:33
20F:推 wen001: 你說的index是必須存在的,但是index也是一個table,假設Ro 01/18 00:45
21F:→ wen001: w過多也是要把Table用陳舊資料的方式區分,最簡單是用日 01/18 00:45
22F:→ wen001: 期月份年份區分。 01/18 00:45
23F:推 wen001: 看起你的問題瓶頸會在selectIO 01/18 00:55
24F:→ gname: 從你的敘述看起來任務條件表是拿來讀的? 那何不進 cache ? 01/23 11:00







like.gif 您可能會有興趣的文章
icon.png[問題/行為] 貓晚上進房間會不會有憋尿問題
icon.pngRe: [閒聊] 選了錯誤的女孩成為魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一張
icon.png[心得] EMS高領長版毛衣.墨小樓MC1002
icon.png[分享] 丹龍隔熱紙GE55+33+22
icon.png[問題] 清洗洗衣機
icon.png[尋物] 窗台下的空間
icon.png[閒聊] 双極の女神1 木魔爵
icon.png[售車] 新竹 1997 march 1297cc 白色 四門
icon.png[討論] 能從照片感受到攝影者心情嗎
icon.png[狂賀] 賀賀賀賀 賀!島村卯月!總選舉NO.1
icon.png[難過] 羨慕白皮膚的女生
icon.png閱讀文章
icon.png[黑特]
icon.png[問題] SBK S1安裝於安全帽位置
icon.png[分享] 舊woo100絕版開箱!!
icon.pngRe: [無言] 關於小包衛生紙
icon.png[開箱] E5-2683V3 RX480Strix 快睿C1 簡單測試
icon.png[心得] 蒼の海賊龍 地獄 執行者16PT
icon.png[售車] 1999年Virage iO 1.8EXi
icon.png[心得] 挑戰33 LV10 獅子座pt solo
icon.png[閒聊] 手把手教你不被桶之新手主購教學
icon.png[分享] Civic Type R 量產版官方照無預警流出
icon.png[售車] Golf 4 2.0 銀色 自排
icon.png[出售] Graco提籃汽座(有底座)2000元誠可議
icon.png[問題] 請問補牙材質掉了還能再補嗎?(台中半年內
icon.png[問題] 44th 單曲 生寫竟然都給重複的啊啊!
icon.png[心得] 華南紅卡/icash 核卡
icon.png[問題] 拔牙矯正這樣正常嗎
icon.png[贈送] 老莫高業 初業 102年版
icon.png[情報] 三大行動支付 本季掀戰火
icon.png[寶寶] 博客來Amos水蠟筆5/1特價五折
icon.pngRe: [心得] 新鮮人一些面試分享
icon.png[心得] 蒼の海賊龍 地獄 麒麟25PT
icon.pngRe: [閒聊] (君の名は。雷慎入) 君名二創漫畫翻譯
icon.pngRe: [閒聊] OGN中場影片:失蹤人口局 (英文字幕)
icon.png[問題] 台灣大哥大4G訊號差
icon.png[出售] [全國]全新千尋侘草LED燈, 水草

請輸入看板名稱,例如:e-shopping站內搜尋

TOP