繁体   English   中英

如何在 Hive 中无限制地防止 sql?

[英]How to prevent sql without limit in Hive?

很多用户习惯在oracle/mysql中使用'select * from tables'

但是我不应该让他们在 hive 中这样查询

有什么办法可以防止在 hive 中进行 full_table 扫描?

像触发器还是别的什么?

非常感谢!

要防止全表扫描,请使用这些设置。

set hive.mapred.mode=strict;  --prevent full scan
SET hive.limit.query.max.table.partition=10; --limit partitions to 10

如果未指定分区谓词,Hive 将产生异常:

FAILED: SemanticException [Error 10041]: No partition predicate found

以及超出分区数的例外示例:

SemanticException Number of partitions scanned (=37) on table

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM