IBM®
Skip to main content
    Country/region [select]      Terms of use
 
 
    
     Home      Products      Services & solutions      Support & downloads      My account     
 
developerworks > My developerWorks >  Dashboard > WebSphere eXtreme Scale V6.1 User Guide > Reference > Programming the ObjectGrid
developerWorks
Log In   View a printable version of the current page.
Overview Connect Spaces Forums Wikis
Programming the ObjectGrid
Added by Chris.D.Johnson, last edited by saif.patel@us.ibm.com on Jan 12, 2009  (view change)
Labels: 
(None)

Getting Started Examples Reference API documentation

See the WebSphere eXtreme Scale Wiki for links to eXtreme Scale Version 7.0 documentation.
If you log in with your developerWorks ID, you can leave comments and feedback for the development team.

The ObjectGrid provides several features that are accessed programmatically using the Java programming language, through several application programming interfaces (APIs) and system programming interfaces.

The following diagram illustrates the overview of the ObjectGrid programming model:





When you are using ObjectGrid APIs, you must distinguish between transactional and non-transactional operations. A transactional operation is an operation that is performed within a transaction. In the diagram, ObjectMap, EntityManager, Query, and DataGrid API are transactional APIs that are contained inside the Session that is a transactional container. Non-transactional operations have nothing to do with a transaction, such as configuration operations. The ObjectGrid, BackingMap, and plug-in APIs are non-transactional.

The ObjectGrid, BackingMap, and other configuration APIs are categorized as ObjectGrid Core API. Plug-ins are for customizing the cache to achieve desired functions and are categorized as the System Programming API. A plug-in in ObjectGrid is a component that provides a certain type of function to the pluggable ObjectGrid components that include ObjectGrid and BackingMap. A feature represents a specific function or characteristic of an ObjectGrid component, including ObjectGrid, Session, BackingMap, ObjectMap, and so on. Usually, features are configurable with configuration APIs. Plug-ins can be built-in, but might require that you develop your own plug-ins in some situations.

In a normal situation, you should be able to configure the ObjectGrid and BackingMap to meet your application requirements. When the application has special requirements, consider using specialized plug-ins. ObjectGrid might have built-in plug-ins that meet your requirements. For example, if you need a peer-to-peer replication model between two ObjectGrid instances or two ObjectGrid clusters, the built-in JMSObjectGridEventListener is available. If none of the built-in plug-ins can solve your business problems, refer to the System Programming API to provide your own plug-ins.

ObjectMap is a simple map-based API. If the cached objects are simple and no relationship is involved, the ObjectMap API is ideal for your application. If object relationships are involved, use the EntityManager API.

Query is a powerful mechanism for finding data in the ObjectGrid. Both Session and EntityManager provide the traditional query capability. The ObjectGrid also provides continuous query capability over streaming data with the ObjectGrid stream-query API.

The DataGrid API is a powerful computing capability in a distributed ObjectGrid environment that involves many machines, replicas, and partitions. Applications can run business logic in parallel in all of the nodes in the distributed ObjectGrid environment. The application can obtain the DataGrid API through the ObjectMap API.

ObjectGrid Core API

With the core API, the fundamental interaction with the ObjectGrid cache can occur, including obtaining an ObjectGrid instance, configuring the ObjectGrid and BackingMap, and so on. The core API is used for non-transactional operations, but might be essential to support transactional operations.

ObjectMap API

The ObjectMap API provides a transactional map-based API that allows typical CRUD (Create, Read, Update and Delete) operations to the ObjectGrid cache. Similar to the java.util.Map interface, it also adds cache-specific semantics such as: batch access methods, entry eviction timeouts, locking hints, and entry copy mode overrides (for safety and performance).

EntityManager API

The EntityManager API is a simple and intuitive programming model for interacting with the ObjectGrid cache. As an alternative to the ObjectMap API, objects are represented as entities, which allow relationships and optimized performance.

Query APIs

ObjectGrid includes two powerful mechanisms for finding data in the ObjectGrid cache: the Object Query API and the ObjectGrid Stream Query API. With the ObjectGrid Query, you can perform traditional queries against ObjectMap and EntityManager data. With the ObjectGrid Stream Query API, you can perform continuous queries over streaming data.

DataGrid API

The DataGrid API provides a simple programming interface to run business logic over all or a subset of the ObjectGrid in parallel with where the data is located.

Embedded Server API

You can embed the ObjectGrid server run time into any Java Virtual Machine (JVM) programmatically to allow a set of processes to host the distributed grid locally.

ObjectGrid system programming API

The system programming application programming interface (API) includes a system programming model that provides extensible plug points to the cache. With this API, you can develop your own plug-ins and plug into the cache to achieve additional functions.
Wiki Disclaimer and License
© Copyright IBM Corporation 2007,2009. All Rights Reserved.
Docs Embedded server API (WebSphere eXtreme Scale V6.1 User Guide)
Docs ObjectGrid core programming API (WebSphere eXtreme Scale V6.1 User Guide)
Docs ObjectGrid DataGrid API (WebSphere eXtreme Scale V6.1 User Guide)
Docs ObjectGrid EntityManager Programming API (WebSphere eXtreme Scale V6.1 User Guide)
Docs ObjectGrid ObjectMap Programming API (WebSphere eXtreme Scale V6.1 User Guide)
Docs ObjectGrid Query APIs (WebSphere eXtreme Scale V6.1 User Guide)
Docs ObjectGrid system programming API (WebSphere eXtreme Scale V6.1 User Guide)


 
    About IBM Privacy Contact