我正在尝试将Greenplum外部表中的数据插入到物理(或普通表)表中。外部表指向一个大约1.32亿个数据的配置单元文件。但是,当我的外部表只显示6600万的数量时。因此,当插入物理表时,我只插入了6600条记录。为什么会这样?我的外部表的表属性有什么关系吗?如果是这样的话?
答案 0 :(得分:1)
通过hive计算时,您会看到6600条记录。假设你刚刚做了一个count(*)
,应该足够直截了当。
现在你对此并不满意,因为你拥有1.32亿个“数据”,恰好是两倍的数据。
我不担心任何只允许你加载前6600万条记录的设置,所以让我们看看可能的嫌疑人。
仔细检查应该指出你真正的罪魁祸首。如果你不知道从哪里开始:
答案 1 :(得分:0)
您的hive表是否已分区
答案 2 :(得分:0)
最后!这个问题似乎已得到解决。我继续研究这个问题,问题似乎是w.r.t数据冗余。 (正如丹尼斯在之前的回答中所建议的那样)。该表具有重复值(在所有列上重复)。每条记录都有另外一组11个重复记录(虽然在我的情况下是可以接受的)。为了避免冗余,我添加了一个可以充当主键的列(自动生成的代理键)。现在,当我尝试从外部表加载greenplum物理表时,我可以看到插入的所有1.32亿条记录没有任何问题。
然而,尽管我的问题已经解决,但为了进行更深入的分析,问题仍然是关于阈值(6600万条记录)。将在此发布一个新问题。