阿里云AnalyticDB for MySQL (ADB) 在查询数据时存在多种限制条件,具体包括:
查询的Shuffle数据量限制:通过query_max_shuffle_data_size_mb参数控制,超过设定阈值的查询会被终止。例如,设置查询最大Shuffle数据为1GB可使用注释/+ QUERY_MAX_SHUFFLE_DATA_SIZE_MB=1024/。
SELECT条件个数限制:默认最大1024个,可通过max_select_items_count参数调整,如/+ MAX_SELECT_ITEMS_COUNT=2048/。
IN条件个数限制:默认最大4000个,通过max_in_items_count参数调整,例如/+ MAX_IN_ITEMS_COUNT=1000/。
查询超时时间:默认为1800000毫秒(即30分钟),可使用QUERY_TIMEOUT参数为单个查询或全集群设置超时时间,如/+ QUERY_TIMEOUT=xxx / 或 SET ADB_CONFIG QUERY_TIMEOUT=xxx;。
LIMIT子句限制:用于限制查询结果集的行数,例如LIMIT 5返回前5行,或LIMIT 2,5从第3行开始返回5行。
结果集缓存使用限制:包括但不限于结果集大小(默认最多缓存10000行,16 MB),以及查询语句一致性、数据未变更、不使用非确定性函数等条件。
此回答整理自钉群“云数据仓库ADB-开发者群”
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
阿里云自主研发的云原生数据仓库,具有高并发读写、低峰谷读写、弹性扩展、安全可靠等特性,可支持PB级别数据存储,可广泛应用于BI、机器学习、实时分析、数据挖掘等场景。包含AnalyticDB MySQL版、AnalyticDB PostgreSQL 版。