SQL

集群环境下,用户在所连接的节点(协调节点)发起一次分布式表的查询,协调节点首先会根据查询所涉及的分区拆分为子查询语句并 map 到相关的节点。在该过程中,查询的分区数若过多,数据量过大可能造成最后汇总数据时,造成内存溢出。DolphinDB 提供了一系列配置参数来限制查询。

配置参数

解释

maxPartitionNumPerQuery=65536

单个查询语句可查找的最大分区数。默认值是65536。

memLimitOfQueryResult

设置单次查询结果占用的内存上限。默认取值为 min(50% * maxMemSize,8G)。若配置该参数,则设置值必须小于 80% * maxMemSize。

memLimitOfTaskGroupResult

在 map 阶段,单次查询任务被分解为若干个子任务,需要由远端节点执行的子任务批量发送给远端节点。

该参数用于设置当前节点发送的批量子查询占用的内存上限。默认取值为 min(20% * maxMemSize,2G)。若配置该参数,则设置值必须小于 50% * maxMemSize。

2.00.7 新版功能: 参数 memLimitOfQueryResultmemLimitOfTaskGroupResult