MyCat中間件面試題


一、Mycat是什么?

Mycat是基於MySQL的數據庫中間件,目的是為了降低數據庫的壓力。

 

二、mycat的原理?

水平切分,一個實體庫切分成多個庫

三、什么叫垂直切分?

垂直切分說白就是數據庫字段的業務縱向切分,而水平切分是橫向數據的切分

四、什么叫混合切分?

項目組中如果有水平切分,那項目組里的開發方式就叫混合切分。或者項目組里就是單純的垂直切分

五、項目中有沒有可能只用水平切分?

不可能!因為只有大數據量的用戶相關業務才會用到水平切割!小業務量的業務沒有必要進行水平切割只需要垂直切成就可以!!!

六、mycat中什么是邏輯庫?

邏輯庫不是真實存在的,它是通過真實的庫映射出來!回答:數據庫集群對外的統一訪問入口

七、搭建mycat的核心配置文件有哪些?

schem.xml 配置參數:邏輯庫,邏輯表,數據節點。節點主機

rule.xml:分片規則

server.xml:連接mycat的用戶信息(賬號和密碼)

八、在項目組中,切分后的庫從哪里而來?

回答:在開發中是基於原有庫創建出來,並且原有庫和切分后的庫是數據表的設計是保持一致的。dm_order1,dm_order2,dm_order3這些庫是需要和dm_order的設計保持一致的!!!!

附注:所以,切分后的庫例如dm_order1,dm_order2,dm_order3這些都是有數據庫維護團隊創建出來的。

九、大覓網的訂單業務數據庫設計的開發流程:

(1)1.dm_order--->2.dm_order1,dm_order2,dm_order3

(2)邏輯庫是由dm_order映射出來的(schema.xml)

(3)dm_order1,dm_order2,dm_order3這些庫不是映射出來的,而是創建出來的。

分片規則這被除數3 是根據分的數據庫個數變化的 如果分4個庫 那么被除數就是4

十、你們項目中分片的實現方式是什么?

在rule.xml中配置PartitionByMod

十一、mycat分庫可以分成100個庫嗎?

我們目前項目組分的是3個庫,我們說一般數據量大的話我們使用的是mycat中間件進行分片處理,如果更大的話,我們可以使用oracle數據庫,如果更大的話可以使用hadoop或是雲存儲數據,不需要mycat作為工具手段。衡量的標准是項目有沒有對應的硬件設備。 如果沒有,基本就是使用mysql 因為搭建一套雲環境或者大數據的環境基本都是超大型的公司。比如大數據中的所有的技術,例如hbase 或者是一大堆的服務器 一大堆的網絡路由設備 或是私有雲。或者是一大堆的數據庫運維實施人員 都是成本

十二、配置文件不會變多,配置的節點主機會變多?

不會


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM