| Atkinson, M.P., Morrison, R.: Orthogonal Persistent Object Systems. VLDB Journal 4, 3 (1995) pp 319-401 |
....in the context of this work (Section 2.1.3) we will explain the principles of orthogonal persistence on which this platform is based (next section) We will also present the history of this project to the present time (Section 2.1.2) 2.1. 1 Orthogonal Persistence Orthogonal Persistence (OP) AM95] is a language independent model of persistence, defined by the following three principles: 1. Type Orthogonality 2. Persistence by Reachability 3. Persistence Independence These were first introduced by Atkinson et al. Atk78, ACC82, ABC 83] summarised by Atkinson and Morrison [AM95] ....
....(OP) AM95] is a language independent model of persistence, defined by the following three principles: 1. Type Orthogonality 2. Persistence by Reachability 3. Persistence Independence These were first introduced by Atkinson et al. Atk78, ACC82, ABC 83] summarised by Atkinson and Morrison [AM95] and their applicability to Java analysed by Atkinson and Jordan [JA98, AJ99, AJ00] Below we explain the above three principles in more detail. 2.1.1.1 Type Orthogonality Persistence is available for all data, irrespective of type. Many systems claim that they provide orthogonal (sometimes ....
M.P. Atkinson and R. Morrison. Orthogonal Persistent Object Systems. VLDB Journal, 4(3):309--401, 1995.
....top of the Plurix DSM are not aware of data locations. Any reference can either point to local or remote memory blocks. During program execution the OS detects a remote memory access and automatically fetches the desired block. A file system can be avoided by implementing orthogonal persistence, [5]. One of our research goals is to provide a persistent DSM enclosing the kernel and the compiler. Not much can be found in literature about adding persistence to DSM systems, 6] To the best of our knowledge no other OS project combined the properties of Plurix: persistence, DSM, and ....
M.P. Atkinson, and R. Morrison, "Orthogonal Persistent Object Systems", Very Large Data Bases Journal, 4(3):319-401, 1995.
....Workflow Server Time Manager Rule Manager Workflow Manager Agent Manager Task Manager Figure 9. System Architecture The architecture that supports Valmont is sketched in Figure 9. The system is implemented using OPJ (Orthogonal Persistent Java) 2] which provides orthogonal persistence [3], distribution support [20] as well as transaction support [9] With OPJ, data of any type including procedures can be made persistent by attaching to a persistent root. There is no need to explicitly translate run time data structures to persistent data structures such as to a database. An ....
M. Atkinson and M. R. Orthogonal Persistent Object Systems. VLDB Journal, 4(3):319--401, 1995.
....of objects which may be viewed as persistent by a persistent application but which are actually objects external to the persistent system. Firstly, fields of a class can be marked as being transient 3 using a PJama static method. 2 For more on the challenges of orthogonal persistence, see [2]. 3 See [16] for a discussion on the differing interpretations of the definition and handling of transient fields in Java and in PJama. 2 org.opj.utilities.PJSystem.markTransient( String fieldname) PJama interprets any field marked transient in this way as a field which should not persist, ....
M. Atkinson and R. Morrison. Orthogonal persistent object systems. VLDB Journal, 4(3):319--401, 1995.
....2.9 Persistence Model It is a common requirement when building such large, long lived, distributed systems that objects need to out live the process that created them, typically by being written to hard disk. DRASTIC supports this using the concept of orthogonal persistence by reachability [AM95] This is implemented by transitive reachability from a distinguished object, a persistent root, that is known to the persistence mechanism. Thus, any object in a DRASTIC process that is reachable, either directly or indirectly, from the persistent root is periodically made persistent ....
M. Atkinson and R. Morrison. Orthogonal persistent object systems. VLDB Journal, 4(3):319-- 401, 1995.
....distributed systems that objects need to out live the lifetime of the process that created them, typically by being written to hard disk. This is addressed in CORBA via its Object Persistence Service [Obj95d] DRASTIC supports this using the concept of orthogonal persistence by reachability [AM95] and in our current implementation this is provided by Persistent Java [AJDS96] Orthogonal persistence by reachability is modeled by transitive closure from a distinguished object, a persistent root, that is known to the persistence mechanism. Any object in a DRASTIC process which is reachable, ....
M. Atkinson and R. Morrison. Orthogonal persistent object systems. VLDB Journal, 4(3):319--401, 1995.
....objects allocated died before 100 other allocations took place. This rate is very high and implies that Napier88 would benefit from a garbage collector tuned to deal with this (a generetional scheme would be ideal) 1 Introduction Napier88 [9] 1 is a persistent programming language (PPL) [4] used as a research platform by the Universities of Glasgow and St Andrews. As in most PPLs, its main memory management relies on a garbage collector (GC) 10] to indentify and reclaim all the unused heap space (garbage objects 2 ) However, the Napier88 heap GC (described in Section 1.1) was ....
M. P. Atkinson and R. Morrison. Orthogonal Persistent Object Systems. VLDB Journal, 4(3), 1995.
....it adds persistence to the Java language with no perturbation to its initial semantics and definition, and enables the re use of any normal Java classes for building persistent applications without any alteration to either the source or the compiled form of these classes. The reader is referred to [4] for an extensive definition of orthogonal persistence and to [1] for its application to the language Java. From the programmer s point of view, persistence is simply obtained by composing normal Java classes with a few other persistence aware classes (in most cases one) that interact with the ....
M.P. Atkinson and R. Morrison. "Orthogonal Persistent Object Systems". VLDB Journal, 4(3), 1995.
....permits to use more much complex data structures because they do not have to be flattened to a file or relational database. However, not all persistent languages offers this extreme simplicity because there are increasing levels of commitment to the persistence abstraction. Orthogonal persistence [1, 7] is the most exigent and can only be achieved by applying three principles: persistence independence, i.e. programs look the same whether they manipulate short or long term data; data type orthogonality, i.e. there are no special cases for certain types [3] and persistence identification, ....
.... types [3] and persistence identification, i.e. persistence is not related to the type system (as by inheriting from a persistent class as in ObjectStore [39] The benefits of orthogonally persistent systems, described extensively in the literature, have been summarised in a recent survey [7]. These are: increased programmer productivity; better data protection; long term referential integrity; and incremental software construction. In short, orthogonally persistent systems are expected to provide better support for the design, development, operation and maintenance of complex ....
M.P. Atkinson and R. Morrison. Orthogonal persistent object systems. VLDB Journal, 4(3):319--401, 1995.
....Java environment, but the disadvantage that it can be very inefficient. We now discuss each of these approaches in greater detail. 2. 1 Directly Supporting Orthogonal Persistence In some sense the right way to provide persistence to Java is well known and articulated in [Atkinson et al. 83 and Atkinson and Morrison 95] through three principles. The first principle is that persistence should be orthogonal to type in the sense that all data whatever its type should have equal rights to persistence. The second principle is the principle of persistent independence which argues that all code should have the same ....
M. P. Atkinson and R. Morrison, Orthogonal Persistent Object Systems, VLDB Journal, Volume 4, pages 319-401, 1995.
....records) They are also constrained to the limitations of SQL, that has a poor type system when compared with modern object oriented programming languages like Java. In contrast, an orthogonal persistent system makes no difference between short term (volatile) data and long term (database) data [2, 7]. An object will be garbage collected only if it is unreachable using the normal constructs in the persistent language. Thus a persistent programming language is both a programming language and a database management system with a single programming model. Examples include Napier88 [30, 29] and ....
....the code to manipulate those objects are stored separately in the file system when the program is compiled. If the file is removed, then objects of that class will become useless. There are many other problems with OODBS, e.g. deciding which objects should persist and regarding type safety [7]. On the other hand, OODBS generally have a better support for indexing and querying than persistent systems, not to mention a number of commercial products. Recently, a number of simple, cheap solutions for supporting persistence in Java have been proposed based on object serialization [31, ....
M.P. Atkinson and R. Morrison. Orthogonal persistent object systems. VLDB Journal, 4(3):319--401, 1995.
....use much more complex data structures because they do not have to be flattened to a file or relational database. However, not all persistent languages offer this extreme simplicity because there are increasing levels of commitment to the persistence abstraction. Orthogonal persistence [ABC 83, AM95] is the most exigent and can only be achieved by applying three principles: 1. persistence independence (i.e. programs look the same whether they manipulate short or long term data) 2. data type orthogonality (i.e. there are no special cases for certain types [ACC82] and 3. persistence ....
....3. persistence identification (i.e. persistence is not related to the type system, for example, by inheriting from a Persistent class like in ObjectStore [LLOW91] The benefits of orthogonally persistent systems, described extensively in the literature, have been summarised in a recent survey [AM95] These are: increased programmer productivity; better data protection; long term referential integrity; and incremental software construction. In short, orthogonally persistent systems are expected to provide better support for the design, development, operation and maintenance of complex ....
[Article contains additional citation context not shown here]
M.P. Atkinson and R. Morrison. Orthogonal persistent object systems. VLDB Journal, 4(3):319--401, 1995.
....accessibility, coherence and manageability advantages of a centralised system, plus the sharing, growth, cost and autonomy advantages of networked systems. Real security and high availability are also thrown in for good measure [8] Add orthogonal persistence and, in the ideal persistent system [2], you also gain integrated support for application development and data management, consistent support for data that abstracts over its longevity, size and type and the presentation of a one world model to the user. In this one world model a wide range of applications should be able to run, with ....
M. Atkinson and R. Morrison. Orthogonal persistent object systems. VLDB Journal, 4(3):319--401, 1995.
.... [9] As expression databases become available, the picture will become 1 We use transient to mean that some data structure has a lifetime only for the duration of one program execution, and persistent to indicate that a data structure is stored and reused by subsequent program executions [7] 2 http: www.ncbi.nlm.nih.gov Genbank GenbankOverview.html 1 even more complex, and the requirement to unify access to sequence, structure and expression data will become more pronounced. In this context we set out to explore the possible use of suffix trees and suffix binary search trees as ....
M.P. Atkinson and R. Morrison. Orthogonal Persistent Object Systems. VLDB Journal, 4(3):309--401, 1995.
....enterprise applications to them. In consequence, any attempt to transfer existing applications from them is confronted with a significant transitional cost. Significant take up of an alternative technology, even if it offers substantial long term benefits, is only likely when a new activity 1 In [22] these were termed Persistent Application Systems (PAS) 1 emerges, so that the transition costs are avoided. A similar delay to take up can be observed with most of the advances in programming language design. Stonebraker has observed [198] that many applications are on a path of increasing ....
....all have the same rights to longevity and brevity irrespective of their type. Similarly all code looks the same and has exactly the same semantics, irrespective of the longevity of the data on which it is operating. The principles and history of orthogonal persistence research are summarised in [22]. Orthogonal persistence is provided by a platform that supports all of an application s computation. Its effect is to permit application programmers to work without having to consider mappings between persistent and active data representations and without having to explicitly manage data ....
[Article contains additional citation context not shown here]
M.P. Atkinson and R. Morrison. Orthogonal Persistent Object Systems. VLDB Journal, 4(3):309-- 401, 1995.
....by substitution to avoid migrating the entire transitive closures; and persistent spaces that help with preserving object sharing both within and between stores. 1 Introduction The construction and maintenance of large scale, long lived persistent applications requires improved support [AM95] Models for distributed programming in particular those that support an incremental approach and preserve store autonomy are essential for building such applications. We propose a high level, distributed computation model based on moving values of arbitrary type between autonomous ....
M.P. Atkinson and R. Morrison. Orthogonal persistent object systems. VLDB Journal, 4(3), 1995.
....PJama and GemStone Inc. have to ignore some occurrences of transient for the purposes of their storage systems. Section 5 describes the way transient fields are handled in the PJama system. Finally, Section 6 concludes the paper. 2 OVERVIEW OF PJAMA 2 2 Overview of PJama Orthogonal Persistence [6] is a language independent model of persistence defined by the following three principles [19, 4] ffl Type Orthogonality. Persistence is available for all data, irrespective of type. ffl Persistence By Reachability 1 . The lifetime of all objects is determined by reachability from a ....
M. P. Atkinson and R. Morrison. Orthogonal Persistent Object Systems. VLDB Journal, 4(3), 1995.
.... and the implementation of a customisable locking mechanism for Persistent Java (PJava) 3] a type safe, object oriented, orthogonally persistent system based on the language Java [21] PJava is an alternative platform for the Java language with provision of completely orthogonal persistence [4] for data, meta data (classes) and code (methods) Orthogonal persistence was conceived in order to add persistence to an existing language with minimal pertubation to its initial semantics and implementation. This results in faster development time of persistent applications since programmers do ....
M.P. Atkinson and R. Morrison. Orthogonal Persistent Object Systems. VLDB Journal, 4(3), 1995.
....This careful provision of persistence independence is important in enabling code, available either as source Java or compiled class files, prepared for other environments, to be re used in the PJama context without any transformation. An extensive discussion of orthogonal persistence is given in [7] and its application to the language Java is described in [4, 6] Using PJama, the bulk of an application suite consists of Java classes and methods written exactly as they would have been written if the application was transient, using only main memory for its data structures. Each program, ....
....page fault rvm map orthogonal persistent Java programmers point of view Directory of loaded classes Buffer Pool Pool of Handles methodtable POS PBP OC JVM Manager Figure 2: OPJVM s architecture. The use of handles by JDK to access objects naturally leads to the use of indirect swizzling [23, 7] for the OC. Indirect swizzling means that pointer fields in the object being swizzled containing PIDs are overwritten with pointers to handles. An eager indirect swizzling strategy is used for class instances, and a lazy indirect swizzling strategy is used for arrays of objects. Eager swizzling ....
M.P. Atkinson and R. Morrison. Orthogonal Persistent Object Systems. VLDB Journal, 4(3), 1995.
....a number of component applications, which may run on separate systems. This is because a single system cannot cope with all the data or processing needed, and because data location must respect autonomy, geographic distribution and ownership requirements. Persistent programming languages [1, 2] integrate those features traditionally delegated to a database management system into the programming language itself. This significantly simplifies the construction of persistent applications. To provide distribution, persistent programming languages must be augmented by an inter process ....
....Higher order. Procedures or objects are first class citizens and have the same rights as values of any other type, including the right to persist and be passed as arguments to, or returned as results from, other procedures. This class of languages is more fully defined in references [1] and [2]. We choose to work with them based on their long term potential and because virtually all other languages can then be supported by the same mechanisms. In our research we use Napier88 [25, 16] Persistence in Napier88 is defined by reachability from a persistent root and referential integrity is ....
M. Atkinson and R. Morrison. Orthogonal persistent object systems. VLDB Journal, 4(3):319--401, 1995.
....arguments to remote procedures. In the process we have encountered some opportunities for combining persistence and agents. However, we have also encountered many difficulties and problems. 2 Persistent Systems The persistence of an object is the period of time for which it exists and is usable [1, 2]. A persistent programming language ensures that objects remain available as long as they are required for computation, thus eliminating the need for files or databases. A conventional as opposed to persistent programming language manipulates only objects that are resident in memory. If ....
M.P. Atkinson and R. Morrison. Orthogonal persistent object systems. VLDB Journal, 4(3):319--401, 1995.
.... 1 Introduction The PJama project is a collaboration between Malcolm Atkinson s team at the University of Glasgow and Mick Jordan s team at Sun Microsystems Laboratories and is attempting to demonstrate the benefits of an industrial strength, orthogonally persistent programming language [7]. Opportunistically and for technical reasons we have chosen to build an execution platform and additional class libraries that provide orthogonal persistence for Java [1, 14] Malcolm Atkinson is currently on leave as a visiting professor at Sun Microsystems Laboratories, Mountain View, CA, ....
....over a subgraph of the objects that includes a moderate proportion of the total population. However, the system must survive both total traversals and large bulk loading operations. This must be achieved without requiring guidance from application programmers, otherwise persistence independence [7] will be lost. 1.2 PJama Architecture This section briefly presents the current architecture of PJama 0 , which is based on the JVM developed by Sun Microsystems 4 . In Figure 1, the darker of the shaded regions, which comprises the core of the 4 Currently, the release of PJama 0 is based on ....
[Article contains additional citation context not shown here]
M. P. Atkinson and R. Morrison. Orthogonal Persistent Object Systems. VLDB Journal, 4(3), 1995.
....migration by substitution to avoid migrating the entire transitive closures; and persistent spaces that help with preserving object sharing both within and between stores. 1 Introduction The construction and maintenance of large scale, long lived persistent applications requires improved support [AM95] Models for distributed programming in particular those that support an incremental approach and preserve store autonomy are essential for building such applications. We propose a high level, distributed computation model based on moving values of arbitrary type between autonomous ....
M.P. Atkinson and R. Morrison. Orthogonal persistent object systems. VLDB Journal, 4(3):319--401, 1995.
....the data and or all the processing needed, and because ownership of data must respect autonomy and users are geographically distributed. An inter process communication mechanism is needed to connect these components across a wide area network. Persistent programming languages [Atk78, ABC 83, AM95] integrate those features traditionally delegated to a database management system into the programming language itself. This significantly simplifies the construction of long lived applications with complex data and algorithms. In order to allow application programmers to write these distributed, ....
....the rest of the paper we use passing parameters to denote both activities. 2. 1 Persistent Programming Languages We aspire to support the construction of distributed persistent applications written in a certain class of orthogonally persistent programming languages [Atk78, ABC 83, AM95] We choose these languages based on their long term potential and because virtually all other languages can then be supported by the same mechanism. The properties of persistent languages that are most relevant to this paper are summarised below. Orthogonal Persistence Objects of any type may ....
M.P. Atkinson and R. Morrison. Orthogonal persistent object systems. VLDB Journal, 4(3), 1995.
No context found.
Atkinson, M.P., Morrison, R.: Orthogonal Persistent Object Systems. VLDB Journal 4, 3 (1995) pp 319-401
Online articles have much greater impact More about CiteSeer.IST Add search form to your site Submit documents Feedback
CiteSeer.IST - Copyright Penn State and NEC