• DocumentCode
    1218195
  • Title

    Working with persistent objects: to swizzle or not to swizzle

  • Author

    Moss, J. Eliot B

  • Author_Institution
    Dept. of Comput. Sci., Massachusetts Univ., Amherst, MA, USA
  • Volume
    18
  • Issue
    8
  • fYear
    1992
  • fDate
    8/1/1992 12:00:00 AM
  • Firstpage
    657
  • Lastpage
    673
  • Abstract
    Pointer swizzling is the conversion of database objects between an external form (object identifiers) and an internal form (direct memory pointers). Swizzling is used in some object-oriented databases, persistent object stores, and persistent and database programming language implementations to speed manipulation of memory resident data. The author describes a simplifying model of application behavior, revealing those aspects where swizzling is most relevant in both benefits and costs. The model has a number of parameters, which the authors have measured for a particular instance of the Mneme persistent object store, varying the swizzling technique used. The results confirm most of the intuitive, qualitative tradeoffs, with the quantitative data showing that some performance differences between schemes are smaller than might be expected. However, there are some interesting effects that run counter to naive intuition, most of which are explained using deeper analysis of the algorithms and data structures
  • Keywords
    data structures; object-oriented databases; software engineering; Mneme persistent object store; data structures; database objects; database programming language implementations; direct memory pointers; manipulation; memory resident data; object identifiers; object-oriented databases; persistent object stores; persistent objects; pointer swizzling; quantitative data; Algorithm design and analysis; Computer languages; Computer science; Costs; Counting circuits; Data structures; Object oriented databases; Object oriented modeling; Particle measurements; Spatial databases;
  • fLanguage
    English
  • Journal_Title
    Software Engineering, IEEE Transactions on
  • Publisher
    ieee
  • ISSN
    0098-5589
  • Type

    jour

  • DOI
    10.1109/32.153378
  • Filename
    153378