The WebSphere® eXtreme Scale REST
data service is a Java™ HTTP
service that is compatible with Microsoft WCF
Data Services (formally ADO.NET Data Services) and implements the
Open Data Protocol (OData). Microsoft WCF
Data Services is compatible with this specification when using Visual
Studio 2008 SP1 and the .NET Framework 3.5 SP1.
Compatibility requirements
The
REST data
service allows any HTTP client to access a data grid. The REST data
service is compatible with the WCF Data Services support supplied
with the Microsoft .NET
Framework 3.5 SP1. RESTful applications can be developed with the
rich tooling provided by Microsoft Visual
Studio 2008 SP1. The figure provides an overview of how WCF Data Services
interacts with clients and databases.
Figure 1. Microsoft WCF Data Services
WebSphere eXtreme Scale includes
a function-rich API set for Java clients.
As shown in the following figure, the REST data service is a gateway
between HTTP clients and the WebSphere eXtreme Scale data
grid, communicating with the grid through an WebSphere eXtreme Scale client. The REST data
service is a Java servlet, which
allows flexible deployments for common Java Platform,
Enterprise Edition (JEE) platforms, such as WebSphere Application Server. The REST
data service communicates with the WebSphere eXtreme Scale data grid using the WebSphere eXtreme Scale Java APIs. It allows WCF Data Services clients
or any other client that can communicate with HTTP and XML.
Figure 2. WebSphere eXtreme Scale REST data
service
Refer to the Configuring REST data services, or use
the following links to learn more about WCF Data Services.
Features
This version of the
eXtreme Scale REST data service
supports the following features:
- Automatic modeling of eXtreme Scale EntityManager
API entities as WCF Data Services entities, which includes the following
support:
- Java data type
to Entity
Data Model type conversion
- Entity association support
- Schema root and key association support, which is required for
partitioned data grids
See Entity model for
more information.
- Atom Publish Protocol (AtomPub or APP) XML
and JavaScript Object
Notation (JSON) data payload format.
- Create, Read, Update
and Delete (CRUD) operations using the respective
HTTP request methods: POST, GET, PUT and DELETE. In addition, the Microsoft extension: MERGE
is supported.
Note: The
upsert and
upsertAll methods
replace the ObjectMap
put and
putAll methods.
Use the
upsert method to tell the BackingMap and
loader that an entry in the data grid needs to place the key and value
into the grid. The BackingMap and loader does either an insert or
an update to place the value into the grid and loader. If you run
the
upsert API within your applications, then the
loader gets an UPSERT LogElement type, which allows loaders to do
database merge or upsert calls instead of using insert or update.
- Simple queries, using filters
- Batch retrieval and
change set requests
- Partitioned data grid support for high
availability
- Interoperability with eXtreme Scale EntityManager
API clients
- Support for standard JEE Web servers
- Optimistic
concurrency
- User authorization and authentication between
the REST data service
and the eXtreme Scale data
grid
Known problems and limitations
- Tunneled requests are not supported.