• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      淺析基于SaaS架構的多租戶技術

      2013-08-20 04:58:44李森
      電子設計工程 2013年20期
      關鍵詞:主鍵租戶數(shù)據表

      李森

      (北京工業(yè)大學 北京 100124)

      長期以來,IT行業(yè)以降低企業(yè)信息化成本作為首要任務,尋求一種創(chuàng)新的軟件應用及服務模式。SaaS作為一種新興的軟件服務模式,為企業(yè)提供信息化所需要的網絡基礎設施及軟硬件運作平臺,并負責所有前期實施和后期的維護服務工作。實踐證明,SaaS模式軟件是一種按需使用,按需付費的創(chuàng)新商業(yè)模式,在大幅降低企業(yè)軟件構建成本的同時,更使得軟件使用者可以按需以租用方式進行軟件的個性化部署,進而幫助企業(yè)更好的迎接全球化時代在信息化建設方面所面臨的時間、效能與成本挑戰(zhàn)。

      1 Saas發(fā)展現(xiàn)狀

      SaaS模式,以Multi-Tenant模式提供軟件的租用服務,無需將軟件產品安裝部署在本地,而是按照某種服務水平協(xié)議直接通過網絡向專門的服務提供商獲取自己所需要的、帶有相應軟件功能的服務。對于最終用戶來說,和傳統(tǒng)軟件模式相比,SaaS具有更低的建設成本、更低的維護成本、更低的應用門檻,以及更低的應用風險等4大特點[1]。

      在國外,SaaS應用服務起步早,例如專注于CRM應用領域的salesforce公司,提供一系列在線的CRM應用軟件。Google公司則以其核心的搜索引擎業(yè)務為基礎,依靠個性搜索和Gmail等產品積累大量客戶,并推出了相關的在線辦公軟件。

      在國內,所以隨著國外SaaS軟件進軍中國市場,國內的很多軟件商也開始調整了自身戰(zhàn)略,投身其中;八百客的成立以及其隨后推出的SOOCRM則正式標志著SaaS軟件應用在中國的開始。Alisoft公司、Xtools公司等也相繼推出了SaaS應用軟件。

      2 SaaS服務模式及相關概念

      2.1 SaaS基本概念

      SaaS指由軟件服務提供商提供企業(yè)搭建信息化所需的網絡基礎設施以及軟硬件運作平臺,并負責所有前期的實施,以及租戶使用過程中軟件的升級與維護等一系列的服務,幫助租用服務的企業(yè)通過互聯(lián)網使用信息管理系統(tǒng),對企業(yè)日常事務進行有效地管理。在SaaS模式下,將應用軟件統(tǒng)一部署到自己的服務器上,租戶按需付費,獲得在線的服務。SaaS模式使軟件部署為全部托管,通過互聯(lián)網存取的模式,同時向眾多租戶提供服務。

      2.2 多租戶概念及模型

      多租戶是指多個企業(yè)租戶(Tenant)共享同一個應用實例[2]。以服務的形式將軟硬件資源,運營管理維護資源提供給多個企業(yè)租戶之間復用,從而有效降低SaaS應用的成本。

      根據SaaS服務應用模式是否具有可配置性、高性能以及可伸縮性的特性,SaaS成熟度模型被分成了4個等級,通常被稱為“成熟度”。其中,每一級都比前一級增加以上3種特性中的一種[3-4]。如圖所示。

      圖1 SaaS模式下的四級成熟對比Fig.1 List of level 1-4 SaaS mode

      圖2 SaaS四級成熟度模型Fig.2 SaaS maturity model

      第1級[5](Level_1)定制開發(fā)與傳統(tǒng)的項目型軟件開發(fā)或軟件外包沒有什么兩樣,即為每一個客戶進行單獨的開發(fā)和設計。第2級(Level_2)可配置指性是指針對不同客戶的需求,通過不同的配置來滿足,無需針對每個用戶進行單獨開發(fā)與設計,降低成本,一次開發(fā)多次部署。第3級(Level_3)高性能的多租戶架構指通過一定的策略來保證不同租戶間的數(shù)據隔離,確保不同租戶既能共享同一個應用的運行實例,又能為用戶提供獨立的應用體驗和數(shù)據空間,它的軟件部署是多個租戶共用一個運行實例,通過配置來滿足不同租戶間的個性化需求。第4級(Level_4)具備可伸縮的高性能多租戶架構指在用戶數(shù)量大量增加的情況下,無需更改應用架構,而僅需簡單增加應用設備的數(shù)量,就可以支撐應用規(guī)模的增長;通過增加一個中間調度層,將租戶分配到各個運行實例上,使用多個運行實例來分擔大量的租戶訪問。

      3 關鍵技術及實現(xiàn)

      3.1 多租戶技術

      多租戶是SaaS服務模式區(qū)別傳統(tǒng)軟件模式最本質的區(qū)別,而要達到SaaS成熟度模型的Level_3級要求,其核心需要解決的就是數(shù)據隔離的問題,即如何實現(xiàn)多租戶模式[6]。在傳統(tǒng)軟件開發(fā)模式中,只是針對于一個用戶的模式開發(fā),不會涉及到用戶間數(shù)據的混亂。在SaaS服務模式系統(tǒng)中建立多租戶模式時,必須要在每個業(yè)務表上增加TENANTID或者COMPANYNO字段,用來區(qū)分各租戶之間的數(shù)據信息,實現(xiàn)各個租戶之間的數(shù)據隔離,保證各租戶之間的隱私。

      圖3 多租戶表Fig.3 Multi-tenant table

      TENANTID字段是傳統(tǒng)軟件模式所沒有的字段,用來區(qū)分SaaS服務模式系統(tǒng)中其他租戶的數(shù)據信息。?當租戶需要對自己的業(yè)務數(shù)據進行操作的時候,通過TENANTID來搜索自己的業(yè)務數(shù)據,在使用SQL語句時,每條都要在條件語句中增加TENANTID=‘?’語句進行租戶數(shù)據區(qū)分,防止讀取到其他租戶的數(shù)據信息。

      3.2 數(shù)據擴展技術

      對于不同的租戶而言,每個租戶在使用系統(tǒng)時,信息的存儲名稱和信息包含的內容各不相同。傳統(tǒng)軟件模式下,通過直接擴展表、擴展字段來實現(xiàn)數(shù)據模型的擴展,而在多租戶模式下,不同租戶可能有不同的數(shù)據模型擴展需求,在同一個數(shù)據表結構中使用直接擴展表、擴展字段的方法簡單的合并不同租戶對于特定業(yè)務的數(shù)據需求,會造成資源浪費,甚至會嚴重破壞表的原有結構。

      所以在多租戶模式下對數(shù)據進行擴展時,需要在系統(tǒng)中單獨建立多租戶管理表、字段配置表以及數(shù)據業(yè)務擴展表,通過三表的有效結合降低因不同租戶間不同擴展需求造成的資源浪費以及業(yè)務表結構的破壞。

      當進行不同租戶間不同需求字段擴展時,在擴展數(shù)據表中將業(yè)務數(shù)據表的橫向擴展列轉化成縱向的數(shù)據集,將每一條原數(shù)據記錄的每一個擴展字段,都保存成一條擴展數(shù)據行。將數(shù)據表中的數(shù)據記錄與配置數(shù)據表中的配置記錄關聯(lián),構成擴展數(shù)據記錄。

      1)業(yè)務數(shù)據表中主要存儲的是租戶中相應的業(yè)務數(shù)據。

      2)數(shù)據擴展表中主要存儲了租戶的擴展數(shù)據對應值。TABLE:擴展數(shù)據所對應的業(yè)務表,DATA_NO:數(shù)據編號,CONF_NO:擴展編號,EXT_VALUE:租戶擴展數(shù)據值。

      3)配置表中主要存儲租戶需要擴展數(shù)據的字段名稱以及其存儲類型。CONF_NO:擴展編號,TENANTID:租戶編號,TABLE:擴展數(shù)據所對應的業(yè)務表,CONTENT:擴展數(shù)據的內容,TYPE:擴展數(shù)據的擴展類型。其中CONF_NO和TENANTID構成了配置表中的主鍵。在配置數(shù)據表中所配置的擴展數(shù)據與相應業(yè)務表中的租戶TENANTID是相互對應的。數(shù)據擴展表中的DATA_NO與其相應業(yè)務數(shù)據表中的ID主鍵是相對應的。

      數(shù)據擴展表的 CONF_NO與配置數(shù)據表中的擴展編號又是相對應的,并與租戶配置的擴展數(shù)據項個數(shù)相對應,租戶的每條業(yè)務擴展數(shù)據都會對應相應個數(shù)的擴展數(shù)據。

      3.3 配置性技術

      SaaS服務模式應用強調的“按需使用,按需付費”,就是多租戶SaaS服務模式應用要能夠支持讓租戶有選擇地購買自己需要的功能,不同的租戶可以同時使用不同的功能集合,來解決不同的租戶需求不完全重合的問題,?更大程度降低適應來自不同租戶間的功能需求差異。

      圖4 數(shù)據擴展圖Fig.4 Data extend table

      “按需使用,按需付費”的另一個含義是同一個租戶在不同時期,可能會有不同的需要,可以選擇不同的功能集合,并為之付費。

      實現(xiàn)功能可配置,需將整個系統(tǒng)的功能分解成一個個基本的、相對獨立、互不重疊的原子功能,當所有的原子功能疊加起來,就是整個應用所提供的全部功能。根據租戶的類型和系統(tǒng)的業(yè)務邏輯,綜合考慮租戶的使用場景和使用習慣,再將原子功能進行組合,劃分成不同的功能模式,用戶根據需要進行相應功能模式的選擇。

      1)租戶表中主要存儲租戶的相關信息。CO_NO:租戶所屬于的行業(yè)編號,?TENANTID:租戶編號,USER_ID:租戶的系統(tǒng)登錄賬號,USER_NAME:租戶名,PSSWORD:租戶系統(tǒng)登錄密碼,PATTERN_NO:租戶使用系統(tǒng)包括的功能模式編號,PATTERN_TYPE:租戶所屬于系統(tǒng)使用范疇。其中CO_NO、TENANTID構成租戶表的主鍵。租戶表是用來對租戶登錄信息的檢索驗證,并檢索租戶所使用的功能模式。?

      2)功能表中主要存儲將系統(tǒng)拆分都的原子功能的相關信息。MENU_NO:原子功能編號,MENU_TYPE:原子功能分類,MENU_NAME:原子功能詳細描述標簽名。

      其中MENUNO是表的主鍵。功能表保證了功能編號的唯一性,并作為系統(tǒng)內使用該功能的唯一標識。

      圖5 配置圖Fig.5 Configuration table

      3)模式表中主要存儲了相關功能模式信息。PATTER_NO:系統(tǒng)包含的所有功能模式編號,MENU_NO:功能模式所包括的原子功能編號。其中PATTERN_NO、?MENU_NO構成模式表的主鍵。模式表定義了所有功能模式所包括的全部原子功能保證了整個系統(tǒng)的功能完整性。在租戶初次使用時可以起到功能選擇的向導作用。

      4)租戶模式功能表中主要存儲了租戶功能的相關信息。TENANTID:租戶編號,MENU_NO:租戶使用系統(tǒng)中所包含的原子功能編號。其中TENANTID、MENU_NO構成了租戶模式功能表的主鍵。租戶模式功能表定義并存儲了各個租戶對系統(tǒng)功能的配置信息。在租戶初次使用以后直接通過租戶模式功能表進行租戶所有功能的查詢。在租戶使用時,根據功能模式進行租戶功能劃分,在功能配置后則根據租戶功能進行系統(tǒng)顯示。同時,將配置表分成四級結構,有效的減少了表之間的關聯(lián),?可根據不同的內容進行單表查詢,同時也并未降低各表間的關聯(lián)度。

      4 結束語

      本文從軟件發(fā)展的角度出發(fā),描述了SaaS的由來和發(fā)展歷史,對比分析了同傳統(tǒng)的軟件模式的區(qū)別。同時提出了基于SaaS的第三級成熟度模型的數(shù)據庫設計思想和實現(xiàn)方法。并對SaaS模式下的多租戶技術,數(shù)據擴展技術和數(shù)據配置技術進行了分析和闡述。

      [1]方東.SaaS與中國小企業(yè)信息化[J].科技信息:科學教研,2007,14(1):15-18.

      FANG Dong.Saas and medium-sized enterprise informatization in China[J].Science and Technology Information:Scientific Research,2007,14(1):15-18.

      [2]Chong F,Carraro G.Arehiteeture strategies for catehingthelong tail[R].USA,MierosoftCorPoration,2006.

      [3]葉偉.互聯(lián)網時代的軟件革命SaaS架構設計 [M].北京:電子工業(yè)出版社,2009.

      [4]李鵬.基于SaaS模式的客戶管理系統(tǒng)的研究[D].山東:山東大學,2009.

      [5]趙倪光.基于SaaS模式的數(shù)字版權交易網站的設計與實現(xiàn)[D].南京:南京理工大學,2011.

      [6]昌中作.基于SaaS模式的公共物流服務平臺關鍵技術的研究[D].北京:北京交通大學,2007.

      猜你喜歡
      主鍵租戶數(shù)據表
      基于Go 實現(xiàn)的分布式主鍵系統(tǒng)研究
      湖北省新冠肺炎疫情數(shù)據表
      黨員生活(2020年2期)2020-04-17 09:56:30
      基于外鍵的E-R圖繪制方法研究
      基于列控工程數(shù)據表建立線路拓撲關系的研究
      基于MVC模式的多租戶portlet應用研究*
      圖表
      租戶是大爺
      特別文摘(2014年17期)2014-09-18 01:31:21
      企業(yè)多租戶云存儲平臺的設計與實現(xiàn)
      基于VSL的動態(tài)數(shù)據表應用研究
      河南科技(2014年24期)2014-02-27 14:19:25
      SaaS模式下多租戶數(shù)據比較存儲模式研究
      紫阳县| 黔西县| 黄梅县| 青海省| 万州区| 同德县| 阿克陶县| 永春县| 贵定县| 外汇| 崇阳县| 额敏县| 安国市| 微博| 根河市| 崇州市| 黄龙县| 固阳县| 镇江市| 桦南县| 普兰店市| 梅河口市| 运城市| 荆门市| 霍林郭勒市| 新平| 隆昌县| 绥滨县| 涟源市| 宜阳县| 平乐县| 巴彦淖尔市| 太仆寺旗| 武平县| 凤阳县| 临邑县| 贺州市| 巴林右旗| 沧州市| 虎林市| 金秀|