FEATURE COMPARISON*
GridGain vs. GemFire The GridGain In-Memory Data Fabric is a proven software solution, which delivers ultimate speed and scale to accelerate your business and time to insights. It enables high-performance, full ACID transactions, real-time streaming and fast analytics in a single, comprehensive data access and processing layer, which includes a clustering and compute grid, a database-agnostic data grid, an in-memory streaming engine as well as Hadoop acceleration. The GridGain In-Memory Data Fabric provides a unified API that spans all key types of applications (Java, .NET, C++) and connects them with multiple data stores containing structured, semi-structured and unstructured data (SQL, NoSQL, Hadoop). It offers a secure, highly available and manageable data processing environment. EDITION
FEATURE
IMDG
Distributed Key-Value Store
GRIDGAIN 6.5
GEMFIRE 8.0
Local Partitioned Replicated
IMDG
Generic Cache Features Near Cache Refresh-Ahead
?
Delta (Partial) Updates Persistence - Read-Through, Write-Through, Write-Behind to Database Data Redundancy (i.e. key backups) Synchronous and Asynchronous Backup Update
(synchronous only)
Synchronous APIs Asynchronous APIs Fully Async Mode (Primary and Backups are Async) Memcached API Off-Heap Near Cache
(values only)
Data Affinity and Collocation of Compute and Data
(rich support)
Eviction and Expiration
(LRU, FIFO, Random, Custom)
(LRU)
Pluggable interfaces (SPIs) to customize grid subsystems
IMDG
Integration Plug-n-Play Web Session Clustering Plug-n-Play Hibernate L2 Caching
IMDG
Distributed Queries (Searches) OQL Queries SQL Queries Continuous Queries In-Memory Indexes Distributed SQL Joins (select * from Person p, Company c where p.c_id=c.id) In-Memory Off-Heap Indexes for Off-Heap Data Group Indexes JDBC Driver
© 2014 GridGain Systems, Inc. All Rights Reserved
GRIDGAIN.COM
EDITION
FEATURE
IMDG
ACID Compliant Transactions
GRIDGAIN 6.5
GEMFIRE 8.0
Atomic Mode (one operation at a time) Optimistic Concurrency (Two-Phase-Commit) READ_COMMITTED and REPEATABLE_READ
(READ_COMMITTED only)
XA Integration Fault Tolerance (Including client/near/primary/backup node failures) Pessimistic Concurrency (Two-Phase-Commit) One-Phase-Commit Optimization Custom Affinity (Partitioning) Function Near Cache Transactions (i.e. Client Cache Transactions) Eviction / Expiration Policies for Transactional Caches Merge with DB Transactions (e.g. Oracle DB, MySql, etc.) Cross-Partition Transactions
IMDG
Data Loading and Rebalancing Sync Preloading (aka Sync Repartitioning) Async Preloading (aka Async Repartitioning) Delayed Preloading (delay preloading until all nodes started)
IMDG
Data Loader (optimized bulk put or load operations)
(via GridDataLoader)
Store Loader (optimized bulk DB load)
(via GridCacheStore. loadCache method)
Distributed Data Structures Distributed Queue Distributed Lock Distributed Atomic Long Distributed Atomic Ref Distributed Atomic Stamped Ref Distributed Atomic Sequence Distributed Count Down Latch
IMDG
Elastic Off-Heap Memory On-Heap and Off-Heap Memory Disk Overflow Tiered On-Heap to Off-Heap to Disk Approach
Platform
Grid Management GUI (graphical) Management Tool Command-Line Management Tool Elasticity (ability to add/remove grid nodes on demand) Datacenter (WAN) Replication (Active-Active, Active-Passive) Rolling Upgrades Network Segmentation (Split Brain) Distributed Event Notifications
(transactional)
Distributed Messaging Security
© 2014 GridGain Systems, Inc. All Rights Reserved
(ordered and unordered)
GRIDGAIN.COM
EDITION
FEATURE
Platform
Security
GRIDGAIN 6.5
GEMFIRE 8.0
SSL Support Client Authentication Cluster Member Authentication Per-Client Permissions
Client
Grid Client Connectivity Java Thick Client Java Thin Client C++ Client .NET/C# Client Scala DSL Dynamic structure changes
(Portable Objects)
(PDX)
.NET and C++ Near Cache .NET and C++ Explicit Locking .NET and C++ Transactions
HPC
Distributed Compute Features Affinity-Aware Execution Topic-based Publish/Subscribe Messaging Point-to-Point Messaging Sub-Grid Messaging / Task Execution Zero Deployment Technology Direct API for MapReduce Early and Late Load Balancing Computation State Checkpoints Distributed Computation (Task) Sessions Cron-like task scheduling
Streaming
In-Memory Streaming Branching Pipelines (Workflows for stream processing) Complex event processing (CEP) Pluggable routing Configurable data windows Continuous queries over data windows
Cloud
Public And Private Clouds TCP/IP Cluster Protocol (any cloud) Automatic Dynamic IP Discovery (AWS / EC2)
(S3-based IP Finder)
Pluggable IP Discovery (any cloud) Pre-configured AWS Images
* This comparison is based on our best knowledge of the features available in the GridGain In-Memory Data Fabric and in the GemFire software at the time this document was created.
1065 East Hillsdale Blvd. Suite 220, Foster City, CA 94404 | ph 650.241.2281 | fax 925.369.7193 |
[email protected] | @gridgain © 2014 GridGain Systems. All rights reserved. This document is provided “as is”. Information and views expressed in this document, including URL and other web site references, may change without notice. This document does not provide you with any legal rights to any intellectual property in any GridGain product. GridGain® is a registered trademark of GridGain Systems, Inc. All other trademarks and trade names are the property of their respective owners and used here for identification purposes only.
GRIDGAIN.COM