Modern applications are web-oriented, data-intensive, and deployed in virtualized and cloud environments. Traditional databases are becoming performance bottlenecks when they can't supply the high-speed performance required, and are unable to scale elastically with demand.
VMware vFabric GemFire delivers speed and dynamic scalability without compromising enterprise-class capabilities supporting high availability, reliability, and manageability.
Key Features and Functionality
Monitoring and Management
Monitor the current status of the entire GemFire deployment through a visual dashboard. For command-line users, the GemFire SHell ('gfsh') delivers a powerful interface to manage GemFire deployments. Wth gfsh, GemFire servers can be started and stopped, members can be configured, metrics viewed and access to most all other product capabilities available. View running GemFire systems with the visually stunning new dashboard.
GemFire can store JSON documents along with key-value/object data. For developers writing mobile and other applications, this is very useful. Some of the capabilities provided to JSON documents include the ability to query within and across JSON documents, federated queries with support for joins across JSON and key-value stores and transactional support.
A simplified JMX model with federated MBeans provides a single-agent consolidated view of a GemFire distributed system – integrated with gfsh and new dashboard.
Enhanced Parallel Disk Persistence
The "shared nothing" parallel disk persistence model provides persistence for any block of data: partitioned or replicated. This enables all your operational data to safely "live" in GemFire, greatly reducing costs by relegating the database to an archival store.
Spring Integration and Simplified APIs for Greater Development Ease
Thanks to the Spring Data GemFire project, developers will be able to easily build Spring applications that leverage GemFire distributed data management. Developers can architect their applications so that data access and business logic are separated from configuration and operation code. In addition, GemFire APIs and related code samples help developers get productive quickly.
Subscription processing is partitioned to enable access by many more subscribers with even lower latency than before. Clients communicate directly with each data-hosting server in a single hop, increasing access performance 2 to 3 times for thin clients.
Co-located Transactions to Dramatically Boost Throughput
Multiple transactions can be executed simultaneously across several partitioned regions.
Very High Throughput
GemFire uses concurrent main-memory data structures and a highly optimized distribution infrastructure, offering 10X or more read and write throughput compared with traditional disk-based databases.
Low and Predictable Latency
GemFire uses a highly optimized caching layer designed to minimize context switches among threads and processes.
- Scalability is achieved through dynamic partitioning of data across many member nodes and spreading the data load across the servers.
- For 'hot' data, the system can be dynamically expanded to have more copies of the data.
- Application behavior can also be provisioned and routed to run in a distributed manner in proximity to the data it depends on.
- In addition to guaranteed consistent copies of data in memory across servers and nodes, applications can synchronously or asynchronously persist the data to disk on one or more nodes.
- GemFire's shared-nothing disk architecture ensures very high levels of data availability.
Heterogeneous Data Sharing
C#, C++ and Java applications can share business objects with each other without going through a transformation layer such as SOAP or XML. A change to a business object in one language can trigger reliable notifications in applications written in the other supported languages.
Wide Area Data Distribution
GemFire's WAN gateway allows distributed systems to scale out in an unbounded and loosely-coupled fashion without loss of performance, reliability and data consistency.
Native Support for Memcached Clients by Using Gemcached
Use any memcached client to connect to GemFire. GemFire listens for memcached clients on a specified port, eliminating client configuration on memcahed clients.
HTTP Session Management for Tomcat and vFabric tc Server
GemFire lets you decouple session management from your JSP container. You can scale application server and HTTP session handling independently, leveraging GemFire’s ability to manage very large sessions with high performance and no session loss. GemFire HTTP Session Management is pre-configured and can launch automatically with tc Server. For Tomcat, the module is enabled via minor configuration modifications.
L2 Caching for Hibernate
With L2 caching, developers can implement GemFire’s enterprise-class data management features for their Spring Hibernate applications. Highly scalable and reliable GemFire L2 caching vastly increases Hibernate performance, reduces database bottlenecks, boosts developer productivity, and supports cloud-scale deployment.