Home » Products » SQLFabric

SQLFabric integrates all of the unique problem solving features of GemFire with the ubiquity of Derby and the well-known SQL querying language. This allows for high throughput, low latency, fault tolerance, persistence etc all while having a plug-and-play feel and a familiar platform for development. All one has to do is start any number of Fabric servers, come in from any JDBC client and define one’s schema and then the app programming model is strictly just SQL. This makes it very easy for any of the large set of developers familiar with SQL to start working in a distributed environment without much mental investment. Through SQLFabric, we hope to provide a much larger group of people, enterprises and independent developers alike, with the benefits of a distributed environment

GemFire SQLFabric is a horizontally partitioned memory-oriented SQL data management platform. It pools memory and disk across many nodes to offer:

  • Predictable latency and very high throughput
    Unlike disk oriented, centralized traditional database architectures, data structures and indexes are optimized for main-memory. The focus is on optimzing distributed data access rather than disk IO optimization.
  • Dynamic and linear scalability
    There is no need to ever over provision; simply add/remove data nodes to your cluster as and when demand pattern changes
    When data access patterns is uniformly distributed, you can double the capacity to double database throughput or reduce the latency by half
  • Continuous availability
    every change is synchronously propagated to one or more “active” copies
    or, even asynchronously to a remote cluster (multiple levels of failover)
    there is nothing shared anywhere in the architecture
  • Optimize by moving behavior to data
    We introduce a novel concept called data aware procedures – an extension to standard stored procedures to allow the application to hint on the data the procedure is dependent on. The system can parallelize the execution of the data dependent behavior by moving the behavior to the data nodes. Results from each node can be streamed and aggregated.