Architechting for Performance with Versant JAVA

Objectives

Upon completion of this course a student will be able to transparently create, retrieve, update, and delete persistent Java objects using a Versant database. They will be able to use their understanding of the Versant architecture and API to develop performant, scalable applications.

This course will cover either Versant JDO or Versant JPA depending on the students' needs.


Target Audience

  • Java developers who want to add persistence to their application.
  • Developers already using Versant who want to learn how to improve concurrency/performance.
  • Developers new to an existing Versant project.

Lifecycle Stage

This class can be taken at any time, but is best taken early in the development phase.


Desired Prerequisites

  • Understanding of basic operating system commands for Windows and/or Unix.
  • Experience developing applications with Java and corresponding object-oriented concepts, such as inheritance, polymorphism, encapsulation, aggregation and association.

Helpful Pre-Requisites

  • Experience developing applications against a database.
  • Familiarity with transactional based programming and understanding of client/server design and implementation.

Course Length

  • 3 or 4 days

Course Topics

  • Installation: file layout, environment settings, global configuration
  • Database concepts: Versant architecture, sessions and transactions, locking, Versant tools
  • Persistence: enhancement, class schemas, Versant classes and methods
  • Maximizing concurrency: optimistic and pessimistic locking models, collections, first-class and second-class objects, distributed databases
  • Performance tuning: statistics collection, object model design, navigation and queries, multi-thread multi-session design

Format

Instructor-led with hands-on labs that reinforce key concepts. Versant instructors use their real-world experience to reinforce the prepared materials.