ResearchSpace

Comparing the Performance of Object Databases and ORM Tools

Show simple item record

dc.contributor.author Van Zyl, P
dc.contributor.author Kourie, DG
dc.contributor.author Boake, A
dc.date.accessioned 2007-07-05T08:21:52Z
dc.date.available 2007-07-05T08:21:52Z
dc.date.issued 2006-10
dc.identifier.citation Van Zyl, P, Kourie, DG and Boake, A. 2006. Comparing the Performance of Object Databases and ORM Tools. Proceedings of the 2006 annual research conference of the South African Institute of Computer Scientists and Information Technologists, Pretoria, South Africa, October 2006, pp 11 en
dc.identifier.isbn 1-59593-567-3
dc.identifier.uri http://hdl.handle.net/10204/984
dc.description http://portal.acm.org/citation.cfm?id=1216263 en
dc.description.abstract The currently popular distributed, n-tiered, object-oriented application architecture provokes many design debates. Designs of such applications are often divided into logical ‘tiers’ – usually user interface, business logic and domain object, or data, tiers, each with their own design issues. In particular, the latter contains data that needs to be stored and retrieved from permanent storage. Decisions need to be made as to the most appropriate way of doing this – the choices are usually whether to use an object database, to communicate directly with a relational database, or to use object-relational mapping (ORM) tools to allow objects to be translated to and from relational form. Most often, depending on the perceived profile of the application, architects make these decisions using rules of thumb derived from particular experience or the design patterns literature. Examples include: object-oriented databases ease programming, relational databases ease report generation and data mining; object-oriented databases are good for navigation around an object model, relational databases are good for sequential processing and complex queries; if you are writing an application from scratch, use an object database, if you need to integrate to various sources of legacy data, use an ORM tool. Although helpful, these rules are often highly context-dependent and are often misapplied. Research into the nature and magnitude of ‘design forces’ in this area has resulted in a series of benchmarks, intended to allow architects to more clearly understand the implications of design decisions concerning object persistence. In this paper, the performance of selected open source object persistence tools is investigated, to attempt to clarify the myths surrounding the performance of the different options. In particular, we compare Hibernate, representative of the ORM stable, and db4o, representative of object-oriented databases. The OO7 benchmark is used to compare the speed of execution of a suite of typical persistence-related operations in both candidates. We then propose some preliminary explanations of the sometimes surprising results. en
dc.language.iso en en
dc.publisher South African Institute for Computer Scientists and Information Technologists en
dc.subject Persistence en
dc.subject Performance en
dc.subject Benchmark en
dc.subject Object oriented database management systems en
dc.subject ODBMS en
dc.subject Object –relation mapping en
dc.subject O-R en
dc.subject ORM en
dc.subject Hibernate en
dc.subject Db4o en
dc.title Comparing the Performance of Object Databases and ORM Tools en
dc.type Conference Presentation en
dc.identifier.apacitation Van Zyl, P., Kourie, D., & Boake, A. (2006). Comparing the Performance of Object Databases and ORM Tools. South African Institute for Computer Scientists and Information Technologists. http://hdl.handle.net/10204/984 en_ZA
dc.identifier.chicagocitation Van Zyl, P, DG Kourie, and A Boake. "Comparing the Performance of Object Databases and ORM Tools." (2006): http://hdl.handle.net/10204/984 en_ZA
dc.identifier.vancouvercitation Van Zyl P, Kourie D, Boake A, Comparing the Performance of Object Databases and ORM Tools; South African Institute for Computer Scientists and Information Technologists; 2006. http://hdl.handle.net/10204/984 . en_ZA
dc.identifier.ris TY - Conference Presentation AU - Van Zyl, P AU - Kourie, DG AU - Boake, A AB - The currently popular distributed, n-tiered, object-oriented application architecture provokes many design debates. Designs of such applications are often divided into logical ‘tiers’ – usually user interface, business logic and domain object, or data, tiers, each with their own design issues. In particular, the latter contains data that needs to be stored and retrieved from permanent storage. Decisions need to be made as to the most appropriate way of doing this – the choices are usually whether to use an object database, to communicate directly with a relational database, or to use object-relational mapping (ORM) tools to allow objects to be translated to and from relational form. Most often, depending on the perceived profile of the application, architects make these decisions using rules of thumb derived from particular experience or the design patterns literature. Examples include: object-oriented databases ease programming, relational databases ease report generation and data mining; object-oriented databases are good for navigation around an object model, relational databases are good for sequential processing and complex queries; if you are writing an application from scratch, use an object database, if you need to integrate to various sources of legacy data, use an ORM tool. Although helpful, these rules are often highly context-dependent and are often misapplied. Research into the nature and magnitude of ‘design forces’ in this area has resulted in a series of benchmarks, intended to allow architects to more clearly understand the implications of design decisions concerning object persistence. In this paper, the performance of selected open source object persistence tools is investigated, to attempt to clarify the myths surrounding the performance of the different options. In particular, we compare Hibernate, representative of the ORM stable, and db4o, representative of object-oriented databases. The OO7 benchmark is used to compare the speed of execution of a suite of typical persistence-related operations in both candidates. We then propose some preliminary explanations of the sometimes surprising results. DA - 2006-10 DB - ResearchSpace DP - CSIR KW - Persistence KW - Performance KW - Benchmark KW - Object oriented database management systems KW - ODBMS KW - Object –relation mapping KW - O-R KW - ORM KW - Hibernate KW - Db4o LK - https://researchspace.csir.co.za PY - 2006 SM - 1-59593-567-3 T1 - Comparing the Performance of Object Databases and ORM Tools TI - Comparing the Performance of Object Databases and ORM Tools UR - http://hdl.handle.net/10204/984 ER - en_ZA


Files in this item

This item appears in the following Collection(s)

Show simple item record