gpt4 book ai didi

hadoop - 按列分区的HIVE从另一张表插入数据后全0

转载 作者:可可西里 更新时间:2023-11-01 16:28:05 27 4
gpt4 key购买 nike

我正在使用 Hortonworks 在 HIVE 中创建分区表并使用 HIVE 中的另一个表将数据插入其中。问题是,在我将数据插入到我创建的表中之后,结果表中分区列 (passenger_count) 中的所有值都显示为 0,即使原始表中的值都不为 0。

以下是我创建分区表并向其中插入数据所采取的步骤:

  1. 运行以下查询以创建名为“date_partitioned”的表:

    create table date_partitioned
    (tpep_dropoff_datetime string, trip_distance double)
    partitioned by (passenger_count int);
  2. 运行以下查询以将数据从另一个现有表插入“date_partitioned”表:

    INSERT INTO TABLE date_partitioned
    PARTITION (passenger_count)
    SELECT tpep_dropoff_datetime, trip_distance, passenger_count
    FROM trips_raw;

“trips_raw”的列类型和示例值如下面的屏幕截图所示: enter image description here enter image description here

如您所见,'passenger_count' 列是 int 类型并且包含非零值。但是当我查看“date_partitioned”表的结果时,“passenger_count”列的值都显示为 0。该表还创建了一个重复的“passenger_count”(因此它有 2 个“passenger_count”列,其中一个为空).从下面的截图可以看出:

enter image description here enter image description here

任何建议将不胜感激。我很好奇为什么当原始列没有 0 时结果表中的 'passenger_count' 显示为 0,以及为什么结果表中有一个额外的 'passenger_count' 列。

最佳答案

您确定为 passenger_count 加载的所有行都是 0 吗?您可以在两个表上执行 COUNT 和 GROUP BY passenger_count 吗?也许您只是对全零进行采样?

关于hadoop - 按列分区的HIVE从另一张表插入数据后全0,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52359265/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com