Publications-Theses
Article View/Open
Publication Export
-
Google ScholarTM
NCCU Library
Citation Infomation
Related Publications in TAIR
題名 多租戶雲端應用程式之中介軟體框架
A Middleware Framework for Multi-tenant SaaS Applications作者 陳俊傑
Chen, Jiu Jye貢獻者 陳恭
Chen, Kung
陳俊傑
Chen, Jiu Jye關鍵詞 軟體即服務
多租戶
物件關聯對映
Bytecode轉換
SaaS
Multi-tenant
ORM
Bytecode Transformation日期 2012 上傳時間 1-Oct-2013 13:47:59 (UTC+8) 摘要 近年來,雲端運算中的軟體即服務(Software as Service,SaaS)穩健與快速地成長。SaaS服務提供者在建置服務的過程中,無不希望盡可能地讓租戶共享資源,避免租戶擁有特殊資源,需要獨立維護,以降低維護營運成本。另一方面,也要能讓租戶們擁有一定程度的客製化能力,以製做出屬於租戶私有之服務邏輯。因此如何讓租戶在共有一切資源的前提下,又能提供客製化能力,將是SaaS服務提供者的一大課題。本研究所提出的中介軟體框架將在共用硬體及資料庫與單一應用程式的共用架構下,採用Force.com Universal Table資料架構,並提供三大特色功能,Tenant Aware、Data Access以及Tenant Customizability,來解決隔離性、存取Force.com Universal Table資料架構以及提供租戶客製化能力三大議題。透過此中介軟體框架應可幫助SaaS提供者,建置出一個資源共享、租戶具有客製能力與維護性高的多租戶雲端軟體服務。
In recent years, Software as a service (SaaS), the service model of cloud computing, has been growing healthy and rapidly. When SaaS providers build service, they want tenants to share same resources, and not to have its own special resource which will cause providers to maintain it separately. SaaS providers want tenants sharing the same resources to reduce maintenance cost. But the current trend is to provide the customizability to tenants for customizing its own service. How to share resources under the premise of providing customizability to tenants will be the main challenge to SaaS providers. In this thesis, we propose a middleware framework based on shared hardware、database with a single application instance. Our framework will use the Force.com Universal Table schema as the foundation. The key features of our framework are Tenant Aware、Data Access and Tenant Customizability. These features will address the issues of isolating tenants, accessing the Force.com Universal Table schema and providing customizability to tenants. This middleware framework will help SaaS providers to build a resource-sharing, customizable multi-tenant SaaS with lower maintenance cost.參考文獻 【1】P. Mell and T. Grance, “The NIST Definition of Cloud Computing,” NIST Special Publication 800-145, 2011.【2】“Gartner Says Worldwide Software-as-a-Service Revenue to Reach $14.5 Billion in 2012,” available at http://www.gartner.com/newsroom/id/1963815【3】C. Ospiov, G. Goldszmidt, M. Ta ylor and I.Podar,” Develop and Deploy Multi-Tenant Web-delivered Solutions using IBM middleware :Part 2 : Approaches for enabling multi-tenancy,” available at http://www.ibm.com/developerworks/webservices/library/ws-multitenantpart2/index.html【4】F. Chong, G. Carraro, and R. Wolter, “Multi-Tenant Data Architecure,” available at http://msdn.microsoft.com/en-us/library/aa479086.aspx【5】S. Aulbach, T. Grust, D. Jacobs, A. Kemper and J. Rittinger, “Multi-Tenant Databases for Software as a Service: Schema-Mapping Techniques,” in Proc. ACM International Conference on Management of Data, 2008.【6】C. F. Liao, K. Chen and J. J. Chen, “Toward a Tenant-aware Query Rewriting Engine for Universal Table Schema-Mapping,” in Proc. IEEE International Conference on Cloud Computing Technology and Science, 2012.【7】G. P. Copeland, S. N. Khoshafian, “A decomposition storage model,” in Proc. ACM SIGMOD International Conference on Management of Data, 1985.【8】F. S. Foping, I. M. Dokas, J. Feehan, S. Imaran, “A New Hybrid Schema-Sharing Technique for Multitenant Applications,” in Proc. 4th International Conference on Digital Information of Management, 2009.【9】J. Du, H. Y. Wen, Z. J. Yang, “Research on Data Layer Structure of Multi-tenant E-commerce System,” in Proc. 17th International Conference on Industrial Engineering and Engineering Management, 2010.【10】D. Maier and J. D. Ullman, “Maximal objects and the semantics of universal relation databases,” in ACM Transactions on Database Systems, Vol. 8, No. 1, pp.1-14, 1983.【11】C. D. Weissman and S. Bobrowski, “The design of the Force.com multitenant internet application development platform,” in Proc. ACM SIGMOD International Conference on Management of Data, 2009.【12】T. Grust, M. V. Keulen, J. Teubner, “Accelerating XPath evaluation in any RDBMS, ” in ACM Transactions on Database Systems, Vol. 29, Issue. 1, pp.91-131, 2004.【13】J. L. Beckmann, A. Halverson, R.Krishnamurthy and J. F. Naughton, “Extending RDBMSs to Support Sparse Datasets Using An Interpreted Attribute Storage Format, ” in Proc. 22nd International Conference on Data Engineering ,2006..【14】“The Force.com Multitenant Architecure” available athttp://www.developerforce.com/media/ForcedotcomBookLibrary/Force.com_Multitenancy_WP_101508.pdf【15】J. Pereira and T. C. Chiueh, “SQL Rewriting Engine and its Applications, ” in Technical Report, Stony Brook University, 2007.【16】C. Li, “Transforming Relational Database into HBase: A Case Study, ” in Proc. IEEE International Conference on Software Engineering and Service Sciences , 2010.【17】F. Chang , J. Dean, S. Ghemawat , W. C. Hsieh , D. A. Wallach , M. Burrows, T. Chandra, A. Fikes and R. E. Gruber, “Bigtable: A Distributed Storage System for Structured Data, ” in Proc. Symposium on Operating System Design and Implementation, 2006.【18】A. Keller , R. Jensen, S. Agarwal, “Persistence software: bridgine object-oriented programming and relatioinal databases, ” in Proc. ACM SIGMOD International Conference on Management of Data, 1993.【19】“What is Object/Relational Mapping ? ” available athttp://www.hibernate.org/about/orm【20】List of object-relational mapping software available athttp://en.wikipedia.org/wiki/List_of_object-relational_mapping_software【21】G. Kiczales, J. Lamping, A. Mendhekar, C. Maeda, C. V. Lopes, J. M. Loingtier, J. Irwin, “Aspect-Oriented Programming,” in Proc. European Conference on Object-Oriented Programming,1997.【22】S. Hisashi, S. Kenji, K. Takayuki, N. Shoji, “Realization of the High-density SaaS Infrastructure with a Fine-grained Multitenant Framework,” in NEC Technical Journal, Vol. 5, No. 2, 2010.【23】H. Cai, N. Wang and M. Zhou, “A Transparent Approach of Enabling SaaS Multi-tenancy in the Cloud,” in Proc. IEEE 6th World Congress on Services, 2010.【24】Java ThreadLocal available at http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/ThreadLocal.html【25】R. Keller and U. Hölzle, “Binary Component Adaptation,” in Proc. the 12th European Conference on Object-Oriented Programming, 1998.【26】Bytecode available at http://en.wikipedia.org/wiki/Bytecode【27】ASM Users available at http://asm.ow2.org/users.html【28】The DataNucleus Data Management Platorform available at http://www.datanucleus.org【29】Java agent available at http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/instrument/package-summary.html【30】Java Instrumentation available at http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/instrument/Instrumentation.html【31】Java ClassFileTransformer available at http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/instrument/ClassFileTransformer.html【32】Joomla available at http://www.joomla.org/【33】RESTful available at https://en.wikipedia.org/wiki/Representational_state_transfer【34】Spring Web MVC available at http://static.springsource.org/spring/docs/3.2.x/spring-framework-reference/html/mvc.html【35】JDO Annotations available at http://www.datanucleus.org/products/datanucleus/jdo/annotations.html 描述 碩士
國立政治大學
資訊科學學系
100971009
101資料來源 http://thesis.lib.nccu.edu.tw/record/#G0100971009 資料類型 thesis dc.contributor.advisor 陳恭 zh_TW dc.contributor.advisor Chen, Kung en_US dc.contributor.author (Authors) 陳俊傑 zh_TW dc.contributor.author (Authors) Chen, Jiu Jye en_US dc.creator (作者) 陳俊傑 zh_TW dc.creator (作者) Chen, Jiu Jye en_US dc.date (日期) 2012 en_US dc.date.accessioned 1-Oct-2013 13:47:59 (UTC+8) - dc.date.available 1-Oct-2013 13:47:59 (UTC+8) - dc.date.issued (上傳時間) 1-Oct-2013 13:47:59 (UTC+8) - dc.identifier (Other Identifiers) G0100971009 en_US dc.identifier.uri (URI) http://nccur.lib.nccu.edu.tw/handle/140.119/61204 - dc.description (描述) 碩士 zh_TW dc.description (描述) 國立政治大學 zh_TW dc.description (描述) 資訊科學學系 zh_TW dc.description (描述) 100971009 zh_TW dc.description (描述) 101 zh_TW dc.description.abstract (摘要) 近年來,雲端運算中的軟體即服務(Software as Service,SaaS)穩健與快速地成長。SaaS服務提供者在建置服務的過程中,無不希望盡可能地讓租戶共享資源,避免租戶擁有特殊資源,需要獨立維護,以降低維護營運成本。另一方面,也要能讓租戶們擁有一定程度的客製化能力,以製做出屬於租戶私有之服務邏輯。因此如何讓租戶在共有一切資源的前提下,又能提供客製化能力,將是SaaS服務提供者的一大課題。本研究所提出的中介軟體框架將在共用硬體及資料庫與單一應用程式的共用架構下,採用Force.com Universal Table資料架構,並提供三大特色功能,Tenant Aware、Data Access以及Tenant Customizability,來解決隔離性、存取Force.com Universal Table資料架構以及提供租戶客製化能力三大議題。透過此中介軟體框架應可幫助SaaS提供者,建置出一個資源共享、租戶具有客製能力與維護性高的多租戶雲端軟體服務。 zh_TW dc.description.abstract (摘要) In recent years, Software as a service (SaaS), the service model of cloud computing, has been growing healthy and rapidly. When SaaS providers build service, they want tenants to share same resources, and not to have its own special resource which will cause providers to maintain it separately. SaaS providers want tenants sharing the same resources to reduce maintenance cost. But the current trend is to provide the customizability to tenants for customizing its own service. How to share resources under the premise of providing customizability to tenants will be the main challenge to SaaS providers. In this thesis, we propose a middleware framework based on shared hardware、database with a single application instance. Our framework will use the Force.com Universal Table schema as the foundation. The key features of our framework are Tenant Aware、Data Access and Tenant Customizability. These features will address the issues of isolating tenants, accessing the Force.com Universal Table schema and providing customizability to tenants. This middleware framework will help SaaS providers to build a resource-sharing, customizable multi-tenant SaaS with lower maintenance cost. en_US dc.description.tableofcontents 第一章 緒論 81.1研究背景 81.2研究動機 111.2.1資料綱要 111.2.2領域邏輯 141.2.3外觀 141.2.4小結 151.3研究目標 151.4論文貢獻 161.5論文之限制 161.6論文章節架構 17第二章 相關研究與技術背景 182.1多租戶SaaS資料層設計 182.2 Force.com Universal資料架構 212.2.1 Objects、Fields、Data資料表 222.2.2 Indexes、UniqueFields資料表 242.2.3 Relationships資料表 252.3多租戶SaaS資料存取 272.4多租戶SaaS隔離性 282.5 Bytecode轉換工程 29第三章 中介軟體框架 313.1中介軟體框架設計目標 313.2框架特色 323.2.1 Tenant Aware 323.2.2 Data Access 333.2.3 Tenant Customizability 333.3框架架構設計 343.4框架實作設計 363.4.1 Tenant Context 363.4.2 Object Relational Mapping 373.4.3 UtbDBService 403.4.4 Customization API 493.4.5 Bytecode Transformation 51第四章 多租戶SaaS實作 544.1多租戶SaaS架構設計 544.2多租戶SaaS實作設計 564.2.1 Tenant Aware使用方式 564.2.2 Data Access使用方式 574.2.3 Tenant Customizability使用方式 594.3多租戶SaaS效能測試 61第五章 結論與未來研究方向 665.1結論 665.2未來研究方向 67參考文獻 69 zh_TW dc.format.extent 1622223 bytes - dc.format.mimetype application/pdf - dc.language.iso en_US - dc.source.uri (資料來源) http://thesis.lib.nccu.edu.tw/record/#G0100971009 en_US dc.subject (關鍵詞) 軟體即服務 zh_TW dc.subject (關鍵詞) 多租戶 zh_TW dc.subject (關鍵詞) 物件關聯對映 zh_TW dc.subject (關鍵詞) Bytecode轉換 zh_TW dc.subject (關鍵詞) SaaS en_US dc.subject (關鍵詞) Multi-tenant en_US dc.subject (關鍵詞) ORM en_US dc.subject (關鍵詞) Bytecode Transformation en_US dc.title (題名) 多租戶雲端應用程式之中介軟體框架 zh_TW dc.title (題名) A Middleware Framework for Multi-tenant SaaS Applications en_US dc.type (資料類型) thesis en dc.relation.reference (參考文獻) 【1】P. Mell and T. Grance, “The NIST Definition of Cloud Computing,” NIST Special Publication 800-145, 2011.【2】“Gartner Says Worldwide Software-as-a-Service Revenue to Reach $14.5 Billion in 2012,” available at http://www.gartner.com/newsroom/id/1963815【3】C. Ospiov, G. Goldszmidt, M. Ta ylor and I.Podar,” Develop and Deploy Multi-Tenant Web-delivered Solutions using IBM middleware :Part 2 : Approaches for enabling multi-tenancy,” available at http://www.ibm.com/developerworks/webservices/library/ws-multitenantpart2/index.html【4】F. Chong, G. Carraro, and R. Wolter, “Multi-Tenant Data Architecure,” available at http://msdn.microsoft.com/en-us/library/aa479086.aspx【5】S. Aulbach, T. Grust, D. Jacobs, A. Kemper and J. Rittinger, “Multi-Tenant Databases for Software as a Service: Schema-Mapping Techniques,” in Proc. ACM International Conference on Management of Data, 2008.【6】C. F. Liao, K. Chen and J. J. Chen, “Toward a Tenant-aware Query Rewriting Engine for Universal Table Schema-Mapping,” in Proc. IEEE International Conference on Cloud Computing Technology and Science, 2012.【7】G. P. Copeland, S. N. Khoshafian, “A decomposition storage model,” in Proc. ACM SIGMOD International Conference on Management of Data, 1985.【8】F. S. Foping, I. M. Dokas, J. Feehan, S. Imaran, “A New Hybrid Schema-Sharing Technique for Multitenant Applications,” in Proc. 4th International Conference on Digital Information of Management, 2009.【9】J. Du, H. Y. Wen, Z. J. Yang, “Research on Data Layer Structure of Multi-tenant E-commerce System,” in Proc. 17th International Conference on Industrial Engineering and Engineering Management, 2010.【10】D. Maier and J. D. Ullman, “Maximal objects and the semantics of universal relation databases,” in ACM Transactions on Database Systems, Vol. 8, No. 1, pp.1-14, 1983.【11】C. D. Weissman and S. Bobrowski, “The design of the Force.com multitenant internet application development platform,” in Proc. ACM SIGMOD International Conference on Management of Data, 2009.【12】T. Grust, M. V. Keulen, J. Teubner, “Accelerating XPath evaluation in any RDBMS, ” in ACM Transactions on Database Systems, Vol. 29, Issue. 1, pp.91-131, 2004.【13】J. L. Beckmann, A. Halverson, R.Krishnamurthy and J. F. Naughton, “Extending RDBMSs to Support Sparse Datasets Using An Interpreted Attribute Storage Format, ” in Proc. 22nd International Conference on Data Engineering ,2006..【14】“The Force.com Multitenant Architecure” available athttp://www.developerforce.com/media/ForcedotcomBookLibrary/Force.com_Multitenancy_WP_101508.pdf【15】J. Pereira and T. C. Chiueh, “SQL Rewriting Engine and its Applications, ” in Technical Report, Stony Brook University, 2007.【16】C. Li, “Transforming Relational Database into HBase: A Case Study, ” in Proc. IEEE International Conference on Software Engineering and Service Sciences , 2010.【17】F. Chang , J. Dean, S. Ghemawat , W. C. Hsieh , D. A. Wallach , M. Burrows, T. Chandra, A. Fikes and R. E. Gruber, “Bigtable: A Distributed Storage System for Structured Data, ” in Proc. Symposium on Operating System Design and Implementation, 2006.【18】A. Keller , R. Jensen, S. Agarwal, “Persistence software: bridgine object-oriented programming and relatioinal databases, ” in Proc. ACM SIGMOD International Conference on Management of Data, 1993.【19】“What is Object/Relational Mapping ? ” available athttp://www.hibernate.org/about/orm【20】List of object-relational mapping software available athttp://en.wikipedia.org/wiki/List_of_object-relational_mapping_software【21】G. Kiczales, J. Lamping, A. Mendhekar, C. Maeda, C. V. Lopes, J. M. Loingtier, J. Irwin, “Aspect-Oriented Programming,” in Proc. European Conference on Object-Oriented Programming,1997.【22】S. Hisashi, S. Kenji, K. Takayuki, N. Shoji, “Realization of the High-density SaaS Infrastructure with a Fine-grained Multitenant Framework,” in NEC Technical Journal, Vol. 5, No. 2, 2010.【23】H. Cai, N. Wang and M. Zhou, “A Transparent Approach of Enabling SaaS Multi-tenancy in the Cloud,” in Proc. IEEE 6th World Congress on Services, 2010.【24】Java ThreadLocal available at http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/ThreadLocal.html【25】R. Keller and U. Hölzle, “Binary Component Adaptation,” in Proc. the 12th European Conference on Object-Oriented Programming, 1998.【26】Bytecode available at http://en.wikipedia.org/wiki/Bytecode【27】ASM Users available at http://asm.ow2.org/users.html【28】The DataNucleus Data Management Platorform available at http://www.datanucleus.org【29】Java agent available at http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/instrument/package-summary.html【30】Java Instrumentation available at http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/instrument/Instrumentation.html【31】Java ClassFileTransformer available at http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/instrument/ClassFileTransformer.html【32】Joomla available at http://www.joomla.org/【33】RESTful available at https://en.wikipedia.org/wiki/Representational_state_transfer【34】Spring Web MVC available at http://static.springsource.org/spring/docs/3.2.x/spring-framework-reference/html/mvc.html【35】JDO Annotations available at http://www.datanucleus.org/products/datanucleus/jdo/annotations.html zh_TW