針對SaaS多租戶(hù)模型,在實(shí)際運行過(guò)程中會(huì )發(fā)現不同的租戶(hù)需要保存不同的特殊字段,例如,就拿CRM系統而言,A租戶(hù)希望能保存客戶(hù)紀念日,來(lái)源等,而這些數據對應B租戶(hù)而言并不需要。這種系統實(shí)現過(guò)濾中并不存在,而用戶(hù)又需要被保存的數據,稱(chēng)為拓展數據。顯然,不同的客戶(hù)需要保存的拓展數據可能是完全不同的。
對拓展數據的處理,在傳統模式中是完全不存在問(wèn)題的,因為傳統軟件模式一個(gè)客戶(hù)對應一套軟件及數據庫實(shí)例,系統可是實(shí)現根據客戶(hù)的要求定制化數據庫實(shí)例。但在SaaS模式,多個(gè)客戶(hù)對應同一套實(shí)例,如依舊采用傳統定制化模式,數據庫必將產(chǎn)生大量多余的字段,進(jìn)而影響數據的性能。
針對SaaS多租戶(hù)模型,對于拓展數據,最常見(jiàn)的解決方案就是實(shí)現拓展數據的可配置,包含如下三種主流的解決方案。
1:定制字段
該解決方案更多還是在傳統軟件中被采用,根據用戶(hù)的實(shí)際需求,在數據表中增加相應的字段。 如系統只有一個(gè)用戶(hù),那么定制字段可以完美的滿(mǎn)足用戶(hù)及技術(shù)需要。
但針對SaaS對租戶(hù)模型,如還為每一個(gè)客戶(hù)都添加字段,那么勢必會(huì )使表中字段多如牛毛,而且隨著(zhù)定制字段的增多,將產(chǎn)生大量無(wú)意義字段,嚴重影響數據庫性能。
2:預分配字段
預分配的實(shí)現邏輯就是在設計數據表結構時(shí),預留設計多幾個(gè)無(wú)意義的字段,根據實(shí)際運行過(guò)程所需的業(yè)務(wù)要求,為對應的字段賦予實(shí)際的業(yè)務(wù)意義。
例如A客戶(hù)需要額外留存訂單號,那么預分配A字段的對于A(yíng)客戶(hù)而言保存的就是訂單號,B客戶(hù)需要額外需要座機號,那么預分配A字段對應B客戶(hù)而言就是座機號。
預分配字段在一定程度滿(mǎn)足租戶(hù)對于拓展數據的需求,但并不是完美的解決方案,依舊存在如下不足點(diǎn):
可拓展性差:預分配字段數無(wú)法實(shí)時(shí)把控,預分配字段解決模式需要在數據庫設計前期就設定好預留的字段個(gè)數,預留多了容易造成浪費,預留少,不夠拓展使用。 數據類(lèi)型難把控,對于預分配位置,可能需要存儲字符類(lèi)型,也可能需要存儲日期類(lèi)型,具體的類(lèi)型無(wú)法把控。當然,也可以統一存成字符類(lèi)型,在根據實(shí)際的業(yè)務(wù)要求,在代碼邏輯中實(shí)現類(lèi)型的轉化。
3:名稱(chēng)值對
引入配置元數據表的概率,數據庫表分為拓展數據表、業(yè)務(wù)數據表、配置元數據表。
業(yè)務(wù)數據表負責存儲統一 的業(yè)務(wù)邏輯數據,拓展數據表存儲根據租戶(hù)需求而新增的拓展數據,而拓展數據表與業(yè)務(wù)數據表通過(guò)元數據配置表關(guān)聯(lián)。引入元數據噢誒子表,實(shí)現拓展數據的橫向拓展,而且完全由租戶(hù)業(yè)務(wù)驅動(dòng),不造成數據的浪費及混亂。
誠然,不管是定制字段,預分配字段還是名稱(chēng)值對,所針對的都是數據庫的設計,本文主要還是介紹產(chǎn)品人員怎樣構建SaaS應用,對于涉及偏向技術(shù)性的問(wèn)題,這里只大致介紹一下,有興趣的小伙伴可以自行查找相關(guān)資料就行了解。
免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng )、來(lái)自本網(wǎng)站內容采集于網(wǎng)絡(luò )互聯(lián)網(wǎng)轉載等其它媒體和分享為主,內容觀(guān)點(diǎn)不代表本網(wǎng)站立場(chǎng),如侵犯了原作者的版權,請告知一經(jīng)查實(shí),將立刻刪除涉嫌侵權內容,聯(lián)系我們QQ:712375056,同時(shí)歡迎投稿傳遞力量。
Copyright ? 2009-2022 56dr.com. All Rights Reserved. 特網(wǎng)科技 特網(wǎng)云 版權所有 特網(wǎng)科技 粵ICP備16109289號
域名注冊服務(wù)機構:阿里云計算有限公司(萬(wàn)網(wǎng)) 域名服務(wù)機構:煙臺帝思普網(wǎng)絡(luò )科技有限公司(DNSPod) CDN服務(wù):阿里云計算有限公司 百度云 中國互聯(lián)網(wǎng)舉報中心 增值電信業(yè)務(wù)經(jīng)營(yíng)許可證B2
建議您使用Chrome、Firefox、Edge、IE10及以上版本和360等主流瀏覽器瀏覽本網(wǎng)站