作者:
DarkKiller (System hacked)
2020-03-23 12:01:38※ 引述《pracinverse (改)》之銘言:
: 什麼樣的資料適合放在MongoDB?? 甚麼樣的資料和放在傳統的RDB??
: 最近被問到這樣的問題有點答不出來
: Q1. scalability算不算是MongoDB勝過RDB的一個優點呢??
: 文獻上是說MongoDB在做scalability比較方便,
: 它可以自動地把data partition到所有的database servers上,
: 所以在application layer寫程式access database的時後,
: 可以不用關心底下有幾台database server
: 但是我記得在RDB也有partition的功能,
: RDB也可以把data partiton到不同的database server上面,
: 所以說scalability到底算不算MongoDB勝過RDB的一個優點呢??
: Q2. 如果說data之間有relation的話是不是用傳統的RDB會比較好??為什麼??
: 比方說 https://dhhmzgirqh63s.cloudfront.net/467.gif
: 像northwind database裡面這種shopping cart進出貨相關的資料
: 是不是放在RDB會比較好??
: Q3. 目前只有想到MongoDB勝過RDB一個明顯的優勢就是schemaless
: 因為不需要pre-define schema,
: 所以預期將來schema可能會有變動的話,選擇MongoDB會比較好。
: 有沒有什麼類型的data是放在RDB比放在MongoDB好的呢??
:
作者:
plsmaop (plsmaop)
2020-03-23 12:04:00spanner 呀哈哈
作者: musie (Sirius) 2020-03-23 12:50:00
對呀.那直接用spanner就好惹..
不管用RDB還是nosql 正規化跟ACID都是必要技能
作者: locklose (允) 2020-03-23 14:51:00
推
作者:
aphiya 2020-03-23 15:57:00很少聽見有公司使用CockroachDB 感覺還是太新?
請教一下,如果是物聯網資料,每秒收集的那種,才適合用mongo嗎, 還是要用rdbms? 謝謝
作者:
plsmaop (plsmaop)
2020-03-23 18:25:00需要 transaction,需要 join 再用 rdbms,單純大量寫入少讀就用 lsm-based 的資料庫
作者:
sxy67230 (charlesgg)
2020-03-23 19:08:00每秒收集每秒收集rdbms跟nosql都可以做,就看你有沒有分散式的需求或是需要做transation,原則上用rdbms就足夠應付了。如果你不想佔用mysql可以考慮spark streaming 讀取 mysql的binlog來達成監控資料庫的更新跟同步。還有其他也是類似的作法就不說了,本質上都是類似的。
作者:
drajan (EasoN)
2020-03-23 23:15:00這個抽象叫CDC...change data capture
我覺得如果你是決定要用哪個DB的人,你卻不知道該用哪個,就還是先用關聯式比較穩