开发者社区 > 数据库 > 数据仓库 > 正文

adb结果集同表不同条件会被缓存成同一个吗?

问题 1:adb结果集同表不同条件会被缓存成同一个吗? 问题2: 是不是 where 条件不同,缓存的结果集也不同呢?

展开
收起
cuicuicuic 2023-07-03 17:16:43 63 0
3 条回答
写回答
取消 提交回答
  • 问题1: 在ADB中,结果集的缓存通常是由数据库管理系统(DBMS)处理的,而不是由ADB主动缓存同一表的不同条件的结果集。ADB并不会对同一表的不同条件的结果集进行特殊的缓存处理。

    问题2: 是的,一般情况下,不同的 WHERE 条件会导致不同的结果集。当您在查询过程中使用不同的 WHERE 条件时,ADB会根据这些条件重新执行查询,并返回新的结果集。

    请注意,ADB可能会在内部使用一些缓存机制来提高查询性能,例如缓存热数据或常见查询的结果。但这种缓存通常是基于查询计划或常用数据的统计信息,而不是特定的结果集。

    2023-07-26 13:49:33
    赞同 展开评论 打赏
  • 北京阿里云ACE会长

    ADB 的结果集缓存是基于查询语句的,因此对同一张表的不同查询语句会被缓存为不同的结果集。如果两个查询语句的 WHERE 条件不同,那么它们将被缓存为不同的结果集,即使它们查询的是同一张表。

    是的,WHERE 条件的不同会导致缓存的结果集不同。具体地说,当两个查询语句的 WHERE 条件不同时,它们将被视为不同的查询语句,并且会被缓存为不同的结果集。这意味着,如果两个查询语句查询的是同一张表,但WHERE条件不同,它们将会被缓存为不同的结果集。

    需要注意的是,尽管缓存的结果集可能来自同一张表,但它们也可能需要占用不同的缓存空间,因为它们可能具有不同的查询计划、结果集大小等等。

    2023-07-23 16:22:17
    赞同 展开评论 打赏
  • 回答1:这个是不会的。adb的结果集缓存是提交相同的查询时,如果查询关联的库表数据没有更新,则从缓存的结果集中查询结果并反馈至客户端,不再重新计算。结果集缓存:https://help.aliyun.com/document_detail/459730.html?spm=a2c4g.92664.0.i2 回答2:是的,此回答整理自钉群“云数据仓库ADB-开发者群”

    2023-07-03 17:24:18
    赞同 展开评论 打赏

相关产品

  • 云原生数据仓库 AnalyticDB PostgreSQL版
  • 热门讨论

    热门文章

    相关电子书

    更多
    利用ADB打造游戏行业新一代实时数据运营平台 立即下载
    利用ADB打造游戏行业新一代 实时数据运营平台 立即下载
    高性能Web架构之缓存体系 立即下载