Tanzu GemFire allows you to manage and store large amounts of data across distributed nodes using partitioned regions. The basic unit of storage for a partitioned region is a bucket, which resides on a Tanzu GemFire node and contains all the entries that map to a single hashcode. In a typical partitioned region query, the system distributes the query to all buckets across all nodes, then merges the result sets and sends back the query results.
The following list summarizes the querying functionality supported by Tanzu GemFire for partitioned regions:
Query.execute(RegionFunctionContext context)
. See the Java API for Query
and Querying a Partitioned Region on a Single Node for more details.Query.execute(RegionFunctionContext context)
with the key or field value used as filter. See the Java API for Query
and Optimizing Queries on Data Partitioned by a Key or Field Value for more details.Ability to perform equi-join queries between partitioned regions and between partitioned regions and replicated regions. Join queries between partitioned region and between partitioned regions and replicated regions are supported through the function service. In order to perform equi-join operations on partitioned regions or partitioned regions and replicated regions, the partitioned regions must be colocated, and you need to use the need to use Query.execute(RegionFunctionContext context)
. See the Java API for Query
and Performing an Equi-Join Query on Partitioned Regions for more details.
Optimizing Queries on Data Partitioned by a Key or Field Value