看板 PHP 關於我們 聯絡資訊
請問一下 假設每個使用者會有一組id, 我規劃將這個id的後兩碼分割成100組不同的資料庫 (database sharding)來應付龐大的資料,也就是資料庫名稱會有db_00 ~ db_99 但假設一段時間後, 100組資料庫不夠用,需要擴充成1000組資料庫, 變成 db_000 ~ db_999, 我這邊的想法是將原本db_00 ~ db_99重新分配到db_000 ~ db_099 除了這個方法還有其他的做法嗎?? 會這麼問主要是在想類似facebook這麼龐大的資料庫 架構會如何設計, 如果用database sharding方法, 可能一段時間就需要擴充了 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 111.248.239.12 ※ 文章網址: http://www.ptt.cc/bbs/PHP/M.1405327946.A.B84.html
alog:按照 user 共通有的特徵下去做歸類,純粹用 id 你分不完 07/14 19:39
tas72732002:我會分共用的和變動的, 我現在比較想了解的是 07/14 19:49
tas72732002:如何才能無限擴充 07/14 19:49
alog:facebook系統是自動化的 07/14 20:55
alog:伺服器架構也是特別設計過的 伺服器是每天都上百台在加 07/14 20:55
alog:這類議題我覺得你去追國外的conf or 簡報分享比較容易去了解 07/14 20:58
noxhsu:一個畫面的組成並不是由一台機器負責,不同的功能用不同的 07/14 23:25
noxhsu:的叢集更是理所當然,API不只是給別人用更是自己系統需求 07/14 23:26
noxhsu:所以在規劃大型資料時考量的不是只有單一資料庫承接,還有 07/14 23:27
noxhsu:如何分散(不過跟你的需求可能有異 07/14 23:28
noxhsu:不過考慮nosql如何?最近顛覆個人使用快10餘年的TSQL使用者 07/14 23:30
noxhsu:有興趣 07/14 23:30