gpt4 book ai didi

hadoop - 类型为 boolean 的分区在 Hive 中总是为真

转载 作者:可可西里 更新时间:2023-11-01 15:30:42 27 4
gpt4 key购买 nike

最近我安装了包含 Hive 1.1.0-cdh5.4.4 的 CDH5.4.4,然后我在 Hive 中发现了一些奇怪的东西:

CREATE TABLE boolean_partition_test
(
`assert` string)
PARTITIONED BY (
`isreal` boolean
);

insert into table boolean_partition_test partition(isreal=false)
select 'Cloudy' from dual where ds='2015-11-01' limit 1;

当我运行以下查询时,我不敢相信:

hive> show partitions boolean_partition_test;
OK
isreal=false
Time taken: 0.158 seconds, Fetched: 1 row(s)
hive> select * from boolean_partition_test;
OK
Cloudy true
Time taken: 0.27 seconds, Fetched: 1 row(s)

我什至在 HDFS 中得到了目录:/user/hive/warehouse/boolean_partition_test/isreal=false

然后我尝试了动态分区的方式:

CREATE TABLE boolean_partition_test2
(
`assert` string)
PARTITIONED BY (
`isreal` boolean
);

insert into table boolean_partition_test2 partition(isreal)
select 'Cloudy' as assert, false as isreal from dual where ds='2015-11-01' limit 1;

事情仍然.. 在我将字段 isreal 更改为键入 string 后,事情恢复正常,但这不是我现在想要的。那么在这种情况下,是什么让 Hive 变得如此顽皮?

最佳答案

关于hadoop - 类型为 boolean 的分区在 Hive 中总是为真,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33773389/

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