1 / 35

RD45 workshop

RD45 workshop. Romuald Knap IT/DB/ODB Romuald.Knap@cern.ch. Supported Architectures. Information based on: Installation & platform notes for Unix Installation & platform notes for Windows release file “note_CPP.txt” Objectivity Technical Overview 5.2

spencer
Télécharger la présentation

RD45 workshop

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. RD45 workshop Romuald Knap IT/DB/ODB Romuald.Knap@cern.ch Romuald Knap IT-DB-ODB RD45 workshop 31st Jan - 4th Feb 2000

  2. Supported Architectures • Information based on: • Installation & platform notes for Unix • Installation & platform notes for Windows • release file “note_CPP.txt” • Objectivity Technical Overview 5.2 • Solaris 7 with C++ 5.0 now available. Romuald Knap IT-DB-ODB RD45 workshop 31st Jan - 4th Feb 2000

  3. OBJECTIVITY/DB Vendor Hardware Operating System C++ Compiler Digital Equipment AXP (Alpha) DEC UNIX 4.0 DEC C++ 6.0, 6.1 Hewlett Packard HP9000 700 HP/UX 10.20 HP aCC A.01.12 IBM RS/6000 AIX 4.2 IBM xlC 3.1.4 Microsoft Intel Windows NT 4.0 VC++ 5.0 SP2, 6.0 SP2 Windows 95 VC++ 5.0 SP2, 6.0 SP2 Silicon Graphics Iris/Indigo IRIX 6.5/6.4 C++ 7.2 Sun Microsystems SPARCStation Solaris 2.6, 7 C++ 4.2 Redhat Intel Linux 5.1, 5.2 egcs-2.91.66 (egcs 1.1.1) Romuald Knap IT-DB-ODB RD45 workshop 31st Jan - 4th Feb 2000

  4. LHC++ 1999 Platform Operating System C++ Compiler DEC Digital UNIX 4.0 DEC C++ 6.1 HP HP/UX 10.20 HP aCC A.01.12 IBM AIX 4.2 IBM xlC 3.1.4 NT NT 4.0 VC++ 5.0 SGI IRIX 6.5 C++ 7.2.1 Sun Solaris 2.6 C++ 4.2 Linux RedHat 5.1 egcs-2.91.66 egcs-1.1.1 or 1.1.2 On-going discussions concerning RH 6.1 support Romuald Knap IT-DB-ODB RD45 workshop 31st Jan - 4th Feb 2000

  5. Objectivity 5.2 status • Full packed version for each platform in: • / afs/cern.ch/sw/lhcxx/export/$sys/Objectivity/5.2 • Full unpacked version for each platform: • /afs/cern.ch/sw/lhcxx/specific/$sys/Objectivity/5.2 • Solaris 7 • / afs/cern.ch/sw/lhcxx/specific/sol7/Objectivity/5.2 • “sol7” points to descriptive Solaris-7 Romuald Knap IT-DB-ODB RD45 workshop 31st Jan - 4th Feb 2000

  6. Objectivity 5.2 tests • Platforms used for tests: • RSPLUS, HPPLUS, DXPLUS, SUNASD1, SHIFT5, LXPLUS • Added links to libraries • Run tests supported with Objectivity • DEC, Sun run without reporting any errors • Minor (ignored) issues on other platforms • CERN-developed interoperability test • Updated documentation on Objectivity page: • http://wwwinfo.cern.ch/asd/lhc++/Objectivity/index.html ( new IT/DB web pages coming - old ones will not be deleted! ) Romuald Knap IT-DB-ODB RD45 workshop 31st Jan - 4th Feb 2000

  7. PERSISTENT COLLECTIONS Romuald Knap IT-DB-ODB RD45 workshop 31st Jan - 4th Feb 2000

  8. Persistent Collections Definitions • A persistent collection - an aggregate which contains references to persistent objects. • The elements of a collection are references to persistent objects or key-value pairs (strings or persistent objects) • Variable number of elements (can be large) • New collections classes - collections containing persistent objects Romuald Knap IT-DB-ODB RD45 workshop 31st Jan - 4th Feb 2000

  9. Persistent Collections Documentation • Objectivity 5.2 Supplement • Chapter 4 - Persistent Collections • Part 3 - Persistent Collections Classes • Installation and Platform Notes for Unix 5.2 • linking information • upgrading schema • Installation and Platform Notes for Windows 5.2 • linking information • upgrading schema Romuald Knap IT-DB-ODB RD45 workshop 31st Jan - 4th Feb 2000

  10. Linking & other information • Files to be included • include ooCollections.h • link with Objectivity/DB shared library: • -loo_co - on linux86 • -loo_co.x.xx Romuald Knap IT-DB-ODB RD45 workshop 31st Jan - 4th Feb 2000

  11. Upgrading schema • In general the schema format by current Objectivity/DB release is compatible with the schema format of prior Objectivity/DB release. • To store persistent collections in a federation database created with prior to Release 5.2 - you must upgrade its schema • Perform this upgrade before you create or access persistent collections from your application Romuald Knap IT-DB-ODB RD45 workshop 31st Jan - 4th Feb 2000

  12. Upgrading schema • for each federated database that is to store persistent collection: • ooschemaupgrade installDir/etc/collectionSchema.dmp bootFilePath • bootfFilePath - path to the boot file or value of environment variable OO_FD_BOOT • Upgrading 5.1.x to 5.2 on the web: • http://wwwinfo.cern.ch/asd/lhc++/Objectivity/objy-52.html Romuald Knap IT-DB-ODB RD45 workshop 31st Jan - 4th Feb 2000

  13. Persistent Collections Classification • Classified whether the order of elements is relevant: • unordered collection - an unspecified order • order collection - a particular order • sorted - sorted according to some criteria • not sorted - the operation that adds the elements determine their order Romuald Knap IT-DB-ODB RD45 workshop 31st Jan - 4th Feb 2000

  14. Persistent Collections Classification • Other classification of collections: • scalable - can increase in size with minimal performance degradation • nonscalable - can not • Collections in Objectivity/DB • nonscalable unordered - using a standard hashing mechanism - old ones • scalable ordered - use B-tree data structure • scalable unordered - use an extendible hashing mechanism Romuald Knap IT-DB-ODB RD45 workshop 31st Jan - 4th Feb 2000

  15. Persistent Classes Persistent capable collection classes: • ooTreeList - List • Scalable ordered collection of objects that can contain duplicates and null elements. • ooHashSet - Set • Scalable unordered collection of objects with no duplicates and no null elements. • ooTreeSet - Sorted set • Scalable sorted collection of objects with no duplicates and no null elements. Romuald Knap IT-DB-ODB RD45 workshop 31st Jan - 4th Feb 2000

  16. Persistent Classes • ooMap - Name map • Nonscalable unordered collection of key-value pairs in which the key is a string and the value is a persistent object or null. Maintains referential integrity. • ooHashMap - Object map • Scalable unordered collection of key-value pairs in which the key is a persistent object and the value is a persistent object or null. Romuald Knap IT-DB-ODB RD45 workshop 31st Jan - 4th Feb 2000

  17. Persistent Classes • ooTreeMap - Sorted object map • Scalable sorted collection of key-value pairs in which the key is a persistent object and the value is a persistent object or null. Romuald Knap IT-DB-ODB RD45 workshop 31st Jan - 4th Feb 2000

  18. Persistent Classes comparison Romuald Knap IT-DB-ODB RD45 workshop 31st Jan - 4th Feb 2000

  19. Active Schema Romuald Knap IT-DB-ODB RD45 workshop 31st Jan - 4th Feb 2000

  20. Features • New option for all platforms with Objy 5.2: • DEC, HP, IBM, Sun, SGI, Linux • Windows NT, Windows 95 • Integrated into the normal installation tar files Romuald Knap IT-DB-ODB RD45 workshop 31st Jan - 4th Feb 2000

  21. Documentation • Objectivity/C++ Active Schema Release 5.2: • http://wwwinfo.cern.ch/asd/lhc++/Objectivity/V5.2/ActiveSchema.pdf • Platform Notes 5.2 (linking): • Installation & platform notes for Unix • Installation & platform notes for Windows Romuald Knap IT-DB-ODB RD45 workshop 31st Jan - 4th Feb 2000

  22. Active Schema • Provides a programming interface for accessing the schema of Objectivity/DB federated database. • You can use active schema for developing database tools such as class and object browsers Romuald Knap IT-DB-ODB RD45 workshop 31st Jan - 4th Feb 2000

  23. Possibilities • An Active Schema application can: • obtain descriptions of the classes in the schema • access and modify persistent objects • modifying the schema by adding new classes and changing description of existing ones • add persistent object to federation • convert persistent object to be consisted with the evolved schema descriptions of their classes Romuald Knap IT-DB-ODB RD45 workshop 31st Jan - 4th Feb 2000

  24. Dynamic schema modification • Can add or evolve classes in the middle of a process • can use results dynamically - without restarting the process • it is necessary to commit transaction at the schema alteration time • user build a set of proposed classes than activate then Romuald Knap IT-DB-ODB RD45 workshop 31st Jan - 4th Feb 2000

  25. Dynamic schema modification • The set of proposals can be rejected if it lacks referential integrity • evolution of Objectivity internal classes is disallowed • The AS interface can not be used to delete classes Romuald Knap IT-DB-ODB RD45 workshop 31st Jan - 4th Feb 2000

  26. Example d_Module &mod = (d_Module &)schemaModule; // cast away constness Proposed_Class &newC1 = mod.propose_new_class("newC1"); // Add a proposal for a public signed integer membe // named "propINT32" newC1.add_basic_attribute(oocLast, d_PUBLIC, "propINT32", 1, ooINT32); Romuald Knap IT-DB-ODB RD45 workshop 31st Jan - 4th Feb 2000

  27. Objectivity/DB tests Romuald Knap IT-DB-ODB RD45 workshop 31st Jan - 4th Feb 2000

  28. Contents • Version interoperability test • Upgrading 5.1.x to 5.2 • Interoperability test for Linux platform • Persistent collections tests Romuald Knap IT-DB-ODB RD45 workshop 31st Jan - 4th Feb 2000

  29. Version interoperability test • Checks in some extent interoperability between 5.1 and 5.1.2 • http://wwwinfo.cern.ch/asd/lhc++/Objectivity/objy-interoper.html • Platforms: IBM, DEC, HP, Sun, SGI, Linux • Areas of test: • running lockserver, ams • creating federations , creating databases • creating containers with objects • reading objects Romuald Knap IT-DB-ODB RD45 workshop 31st Jan - 4th Feb 2000

  30. Version interoperability test 1. Changing: reading of objects; creating containers & objects. LS 2 2 2 1 1 1 AMS 2 2 2 1 1 1 FD 2 2 2 1 1 1 DB 2 2 2 1 1 1 WR 1 1 2 1 2 2 RE 2 1 1 2 1 2 Romuald Knap IT-DB-ODB RD45 workshop 31st Jan - 4th Feb 2000

  31. Version interoperability test 1. Changing: reading of objects; creating containers & objects; creating databases. LS 2 2 2 2 1 1 1 1 AMS 2 2 2 2 1 1 1 1 FD 2 2 2 2 1 1 1 1 DB 1 1 1 1 2 2 2 2 WR 1 1 2 2 1 1 2 2 RE 1 2 1 2 2 1 2 1 Romuald Knap IT-DB-ODB RD45 workshop 31st Jan - 4th Feb 2000

  32. Version interoperability test • The other areas of the test: • Changing: reading of objects; creating containers & objects; creating databases; creating federation with 5.1.0 • Changing: reading of objects; creating containers & objects; creating databases; creating federation with 5.1.2 Romuald Knap IT-DB-ODB RD45 workshop 31st Jan - 4th Feb 2000

  33. Upgrading 5.1 to 5.2 • http://wwwinfo.cern.ch/asd/lhc++/Objectivity/objy-52.html • In general, federations and databases are compatible - but don’t mix 5.1.x clients with 5.2 servers and vive versa • special care using persistent collections • refer to Installations Notes 5.2 Romuald Knap IT-DB-ODB RD45 workshop 31st Jan - 4th Feb 2000

  34. Interoperability test for Linux • http://wwwinfo.cern.ch/asd/lhc++/Objectivity/objytest1.html • Possibility of testing several hosts • a federation on a server host, database on a client host • writing from a server to a client; reading from a client • testing algorithm:1-2, 2-3 … n-1 Romuald Knap IT-DB-ODB RD45 workshop 31st Jan - 4th Feb 2000

  35. Persistent collections • http://wwwinfo.cern.ch/asd/lhc++/Objectivity/objyPC.html • Test program rather like an example • testing basic functionality of ooTreeList class • reading objects using iterators and without • 1 000 000 - 10 minutes - over 60 hours Romuald Knap IT-DB-ODB RD45 workshop 31st Jan - 4th Feb 2000

More Related