This section includes advanced querying topics such as using query indexes, using query bind parameters, querying partitioned regions and query debugging.
This topic covers considerations for improving query performance.
The query monitoring feature prevents out-of-memory exceptions from occurring when you execute queries or create indexes.
Configure a timeout value for long running queries, such that they do not complete, and GemFire throws an exception when a query runs for longer than the configured value.
Using query bind parameters in GemFire queries is similar to using prepared statements in SQL where parameters can be set during query execution. This allows you to build a query once and execute it multiple times by passing the query conditions during run time.
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 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.
You can debug a specific query at the query level by adding the
<trace>keyword before the query string that you want to debug.