cloudera - impala 使用 < 或 > 条件进行分区

标签 cloudera impala

我有2TB的手机记录,大约180万用户的330亿次阅读。 我已经在用户 ID 上创建了一个分区。 Impala 创建许多名为 userid=XXXXX 的子目录。 这看起来像是对 180 万个子目录进行了过度分区。有没有办法必须对数字范围或数组进行分区?

最佳答案

目前 Impala 没有任何类型的范围分区。因此,您需要在表中的不同列上进行分区,这将创建更少的分区。或者作为一种解决方法,您可以在表中添加一个附加列,该列存储您想要为每个记录指定的范围,然后在“范围”列上进行分区。示例:您有一条记录,其中包含字段 user_id=1234,该记录也包含您范围内的字段 user_range=0_100000,您可以将其用于分区。

关于cloudera - impala 使用 < 或 > 条件进行分区,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36482121/

相关文章:

unix - 如何在Cloudera中恢复覆盖的目录

hadoop - 在 Hadoop 中使用外部 Web 服务数据

sql - 逗号分隔的字符串到单个行 - Impala SQL

.htaccess - 如何在Hadoop和Hbase的Cloudera发行版中启用安全性?

mysql - impala find_in_set 与性能对比

sql - 如何在 impala 中使用 distinct

hadoop - Impala 查询编辑器始终显示 AnalysisException

hadoop - 使用 Whirr 启动 EC2 集群

amazon-s3 - 如何保存 impala 查询的结果

hadoop - 简单计数查询超出 Impala 内存限制