ebook img

Succeeding with Object Databases: A Practical Look at Today's Implementations with Java and XML PDF

468 Pages·2000·9.36 MB·English
Save to my drive
Quick download
Download
Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.

Preview Succeeding with Object Databases: A Practical Look at Today's Implementations with Java and XML

Succeeding with Object Databases A Practical Look at Today's Implementations with Java™ and XML Akmal B. Chaudhri Roberto Zicari Publisher: Robert Ipsen Editor: Theresa Hudson Developmental Editor: Kathryn A. Malm Managing Editor: Angela Smith Text Design & Composition: Benchmark Productions, Inc. Designations used by companies to distinguish their products are often claimed as trademarks. In all instances where John Wiley & Sons, Inc., is aware of a claim, the product names appear in initial capital or ALL CAPITAL LETTERS. Readers, however, should contact the appropriate companies for more complete information regarding trademarks and registration. This book is printed on acid-free paper. © Copyright © 2001 by Akmal B. Chaudhri and Roberto Zicari. All rights reserved. Published by John Wiley & Sons, Inc. Published simultaneously in Canada. No part of this publication may be reproduced, stored in a retrieval system or trans- mitted in any form or by any means, electronic, mechanical, photocopying, recording, scanning or otherwise, except as permitted under Sections 107 or 108 of the 1976 United States Copyright Act, without either the prior written permission of the Pub- lisher, or authorization through payment of the appropriate per-copy fee to the Copy- right Clearance Center, 222 Rosewood Drive, Danvers, MA 01923, (978) 750-8400, fax (978) 750-4744. Requests to the Publisher for permission should be addressed to the Permissions Department, John Wiley & Sons, Inc., 605 Third Avenue, New York, NY 10158-0012, (212) 850-6011, fax (212)'850-6008, E-Mail: [email protected]. This publication is designed to provide accurate and authoritative information in regard to the subject matter covered. It is sold with the understanding that the pub- lisher is not engaged in professional services. If professional advice or other expert assistance is required, the services of a competent professional person should be sought. Library of Congress Cataloging-in-Publication Data: Chaudhri, Akmal B. Succeeding with Object databases : a practical look at today's implementations with Java and XML / Akmal B. Chaudhri, Roberto Zicari p. cm. Includes bibliographical references and index. ISBN 0-471-38384-8 (cloth : alk. paper) 1. Object-oriented databases. 2. Java (Computer program language) 3. XML (Document markup language) I. Zicari, Roberto. II. Title. QA76.9.D3 C3848 2000 005.75'7-dc21 00-043455 Printed in the United States of America. 10 9 8 7 6 5 4 3 21 Per Aldo. -RZ Contents Acknowledgments xiii Introduction XV Part One: Introduction 1 Chapter 1 OODBMS History and Concepts 3 Historical Perspective 4 The Beginning 4 Standardization 5 Object-Relational DBMSs 6 Java 8 OODBMS Products and Their Evolution 9 ORION/Itasca 9 O2 10 GemStone 11 IRIS/OpenODB 11 Vbase/Ontos 12 ObjectStore 12 POET 13 Data Model Concepts 13 Objects 13 Classes 16 Inheritance 19 An Example 21 Query Language 23 Conclusion 25 Part Two: Object-Relational Systems 27 Chapter 2 Mapping UML Diagrams to Object-Relational Schemas in Oracle 8 29 Overview of UML 31 Overview of Oracle 8 35 Mapping Issues 37 vi Contents Objects and Relationships between Objects 38 Object Hierarchies 39 VARRAYS and Nested Tables 42 Triggers for Maintaining Inverses 44 Derived Attributes 45 Embedded Objects 46 Queries over Objects 48 Comparison to Other Systems 48 Conclusion 50 Chapter 3 SQLJ and JDBC: Database Access in Java 53 A Bit of Background 53 SQLJ Basics 54 Embedded SQL Syntax 55 SQLJ Translator 55 Execution Model 56 The SQLJ Standard 56 JDBC Basics 57 Statements 57 A Note on Deployment 58 Connecting to the Database 58 Connecting at Run Time in SQLJ 59 Connecting to the Database for SQLJ Translation 60 Connecting in JDBC 60 Mix and Match SQLJ and JDBC 60 Interfacing SQL and Java 61 Retrieving Data through an SQL Query 61 Datatype Mapping 66 Performance, Performance 69 JDBC Prepared Statements 69 Batching of Updates 70 Connection Pooling 70 SQLJ and JDBC in Oracle 8i 71 SQLJ versus JDBC 72 Conclusion 72 Chapter 4 Penguin: Objects for Programs, Relations for Persistence 75 Mapping from the Object Model to the Relational Model 76 Relational Database Storage and Semantic Modeling 79 Defining Object Views of Relational Databases 79 Updating Base Relations from Objects 81 Heterogeneous Data Sources 81 Methods 82 Concurrency Control 83 Contents vii Performance Issues 83 Caching Structure 83 Cache Management 84 Data Transfer 86 Future Directions 87 Conclusion 87 Part Three: XML 89 Chapter 5 A New Stage in ODBMS Normalization: Myth or Reality? 91 State of the ODBMS Market 91 Why a Standard Like ODMG? 93 ODMG; A Reconciliation between Programming Languages and DBMSs 95 An RDBMS Evolution toward Object Paradigm 96 XML Application Founded on OQL 97 System Motivations 98 Why XML? 98 The Database Model 100 Database Management Using O2 versus Versant 101 The Information Retrieval Technique 103 Conclusion 106 Chapter 6 PDOM: Lightweight Persistency Support 107 Introduction to DOM 108 Architecture 108 Binary File Organization 109 Persistent Object Manager 111 Object Serialization and Deserialization 111 Cache Strategy 112 Safe File Updates 113 Performance Evaluation 116 Related Work 116 Conclusion 118 Chapter 7 The Model of Object Primitives (MOP) 119 Model of Object Primitives 121 MOP Semantics 121 MOPClass 121 Constraint 123 State Class 123 Behavior Class 124 Policy 125 Collection Class 127 viii Contents Relationship 127 Mapping Data Models to MOP 129 XML in MOP 129 ODMG in MOP 133 Relational Model in MOP 137 Case Studies 139 Conclusion 142 Part Four: Benchmarks and Performance 145 Chapter 8 A Performance Comparison of Object and Relational Databases for Complex Objects 147 The Application 148 The OO Model 148 The EER Model 149 One Complex Object 149 Database Operations 150 Open and Close the Database 152 Pick Top Objects 152 Traverse Complex Objects 153 Copy Complex Objects 153 Inserts of Complex Objects 153 154 Deletes of Complex Objects 155 Updates of Complex Objects Benchmark Considerations 155 The DBMSs Used 155 Test Environment 155 Warm and Cold Runs 156 Database Considerations 157 Benchmarks Results 157 Database Sizes 157 Open and Close the Databases 157 Pick Top Objects 159 Traverse Complex Objects 159 Copy Complex Objects 160 Inserts of Complex Objects 162 Deletes of Complex Objects 163 Updates of Complex Objects 165 Conclusion 166 Chapter 9 Object Databases and Java Architectural Issues 167 ODBMS Architecture 167 Object, Page, and File Servers 168 Performance Issues 168 Java Language Binding 176

Description:
Take a tour with leading researchers and developers for a practical look at object databases. Whether you currently work with or are thinking of moving to object databases, Chaudhri and Zicari provide a collection of real-world case studies and examples that demonstrate how some of the world's leadi
See more

The list of books you might like

Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.