全局表數據庫
所謂全局表,就是有可能系統中全部模塊均可能會依賴到的一些表。比較相似咱們理解的「數據字典」。爲了不跨庫join查詢,咱們能夠將這類表在其餘每一個數據庫中均保存一份。同時,這類數據一般也不多發生修改(甚至幾乎不會),因此也不用太擔憂「一致性」問題。性能
字段冗餘設計
這是一種典型的反範式設計,在互聯網行業中比較常見,一般是爲了性能來避免join查詢。同步
舉個電商業務中很簡單的場景:電商
「訂單表」中保存「賣家Id」的同時,將賣家的「Name」字段也冗餘,這樣查詢訂單詳情的時候就不須要再去查詢「賣家用戶表」。互聯網
字段冗餘能帶來便利,是一種「空間換時間」的體現。但其適用場景也比較有限,比較適合依賴字段較少的狀況。最複雜的仍是數據一致性問題,這點很難保證,能夠藉助數據庫中的觸發器或者在業務代碼層面去保證。固然,也須要結合實際業務場景來看一致性的要求。就像上面例子,若是賣家修改了Name以後,是否須要在訂單信息中同步更新呢?數據