当使用SQL查询数据出现扫描到的行数或者数据量超过限制的情况时,您可以根据具体的查询条件创建二级索引或多元索引来优化查询。
问题现象
使用SQL查询数据时出现如下报错:
[Message]:The sql scanned rows of main table exceeds the quota, main table rows quota is 100000
可能原因
如果使用SQL查询数据时使用的条件为非分区键,则会造成全表扫描数据,可能会出现扫描到的行数或者数据量超过限制的情况。
重要
目前SQL单次扫描支持的最大行数为100000行,最大数据量为128 MB,最长时间为30秒。
解决方案
使用SQL查询数据时,请确保查询条件包含主键列且符合最左匹配原则,并为SQL语句添加limit参数来控制返回的行数。
如果查询条件不满足上述条件,您还可以通过如下方式进行查询加速。更多信息,请参见索引选择策略。