Dynamic Management Capabilities Added to Gemfire Enterprise 6.0

Gemstone has announced the release of Gemfire Enterprise 6.0 with features that support, "dynamic adjustment of compute resources to meet service demands without any interruption to operations." Gemfire provides an in-memory persistence layer, a "data fabric," as a middle tier between applications and data sources to enhance performance by offering data access services as memory speeds. (See InfoQ, May 8, 2008.) This new release extends Gemfire's management functions allowing dynamic management of the data fabric.

With built-in instrumentation that captures throughput and latency metrics, GemFire enables applications to sense changing performance patterns and proactively provision extra resources and trigger rebalancing of predictable data access throughput and latency without the need to overprovision capacity. Together, the new features combine to offer unprecedented improvements in ease-of-use and manageability of data over a distributed architecture.

Some developer productivity enhancements based on the ability to browse and edit data across the entire data fabric, execute ad hoc queries, and creation of real-time table views.

The developer productivity tools are responsive to the needs of teams engaged in iterative development, i.e. agile teams.

Gemstone has a long history as a provider of object database solutions, but is better known today for its Gemfire and Maglev (scalable Ruby development environment) offerings. One of the "surprises" discussed by Kent Beck in his QCon San Francisco talk in 2009, was the "flattening of data models" and the need for alternatives to the highly structured data solutions offered by relational databases. To the extent that the trend noted by Kent continues, the developer community might find solutions like Gemfire and the Gemstone object DB of increasing interest.

Isn't it true that Coherence offers an C++ API to the clustered cache services in JVMs? GemStone built a native cache implementation in C++ - so we can manage native C++/C# objects without serialization, deserialization, with eviction, native disk overflow in the C++ process, memory management, etc. All this besides being able to converse with a cluster of JVMs that host data in a highly partitioned or replicated manner using a simple, portable "on the wire" object representation. Turns out, interoperating between Java, C++ and .NET applications using GemFire is far more efficient than using efficient formats like Google Protocol Buffers (by a factor of 2 or higher).

Isn't it true that Coherence offers an C++ API to the clustered cache services in JVMs?

Among other things, that is certainly true.

GemStone built a native cache implementation in C++

Yes, Coherence has had a native C++ cache implementation for a few releases now. Since Coherence 3.4 (about a year ago), we have also had a near cache implementation. And a continuous query cache implementation. We even have local indexes and query support :-)

All this besides being able to converse with a cluster of JVMs that host data in a highly partitioned or replicated manner using a simple, portable "on the wire" object representation.

Yes, Coherence introduced the Portable Object Format (POF) a full three years ago now, with implementations in C#, C++ and Java. It sounds like you have done something very similar. It would have been nice if there had been a standard format back then, but now there are things like Google Protocol Buffers.

Turns out, interoperating between Java, C++ and .NET applications using GemFire is far more efficient than using efficient formats like Google Protocol Buffers (by a factor of 2 or higher).

Of course ;-) Some of our customers use Google Protocol Buffers. Google Protocol Buffers may not be as optimized as POF, but they are supported by Coherence. In fact, we even support customers plugging in their own proprietary wire / serialization formats, which are surprisingly common in banks.

Is your profile up-to-date? Please take a moment to review and update.

Email Address

Note: If updating/changing your email, a validation request will be sent

Company name:

Keep current company name

Update Company name to:

Company role:

Keep current company role

Update company role to:

Company size:

Keep current company Size

Update company size to:

Country/Zone:

Keep current country/zone

Update country/zone to:

State/Province/Region:

Keep current state/province/region

Update state/province/region to:

Subscribe to our newsletter?

Subscribe to our industry email notices?

You will be sent an email to validate the new email address. This pop-up will close itself in a few moments.

We notice you're using an ad blocker

We understand why you use ad blockers. However to keep InfoQ free we need your support. InfoQ will not provide your data to third parties without individual opt-in consent. We only work with advertisers relevant to our readers. Please consider whitelisting us.