You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@druid.apache.org by GitBox <gi...@apache.org> on 2021/03/05 18:23:23 UTC

[GitHub] [druid] techdocsmith commented on a change in pull request #10848: refactor query caching docs

techdocsmith commented on a change in pull request #10848:
URL: https://github.com/apache/druid/pull/10848#discussion_r588555745



##########
File path: docs/querying/caching.md
##########
@@ -22,63 +22,75 @@ title: "Query caching"
   ~ under the License.
   -->
 
+You can enable caching in Apache Druid to improve query times for frequently accessed data. This topic defines the different types of caching for Druid. It describes the default caching behavior and provides guidance and examples to help you hone your caching strategy.
 
-Apache Druid supports query result caching at both the segment and whole-query result level. Cache data can be stored in the
-local JVM heap or in an external distributed key/value store. In all cases, the Druid cache is a query result cache.
-The only difference is whether the result is a _partial result_ for a particular segment, or the result for an entire
-query. In both cases, the cache is invalidated as soon as any underlying data changes; it will never return a stale
-result.
+If you're unfamiliar with Druid architecture, review the following topics before proceeding with caching:
+- [Druid Design](../design/architecture.md)
+- [Segments](../design/segments.md)
+- [Query execution](./query-execution)
 
-Segment-level caching allows the cache to be leveraged even when some of the underling segments are mutable and
-undergoing real-time ingestion. In this case, Druid will potentially cache query results for immutable historical
-segments, while re-computing results for the real-time segments on each query. Whole-query result level caching is not
-useful in this scenario, since it would be continuously invalidated.
+For instructions to configure caching see [Using query caching](./using-caching.md).
 
-Segment-level caching does require Druid to merge the per-segment results on each query, even when they are served
-from the cache. For this reason, whole-query result level caching can be more efficient if invalidation due to real-time
-ingestion is not an issue.
+## Cache types
 
+Druid supports segment caching which stores _partial results_ of a query for a specific segment, and whole-query caching which stores all results for a query. To avoid returning stale results, Druid invalidates the cache the moment any underlying data changes for both types of cache.

Review comment:
       this was there: `whole-query caching which stores all results for a query.`




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@druid.apache.org
For additional commands, e-mail: commits-help@druid.apache.org