我創建了一個表中HIVE的錯誤結果爲
CREATE TABLE IF NOT EXISTS daily_firstseen_analysis (
firstSeen STRING,
category STRING,
circle STRING,
specId STRING,
language STRING,
osType STRING,
count INT)
PARTITIONED BY (day STRING)
ROW FORMAT DELIMITED
FIELDS TERMINATED BY '\t'
STORED AS orc;
COUNT(*)在蜂巢表COUNT(*)不給我正確的結果,此表
hive> select count(*) from daily_firstseen_analysis;
OK
75
Time taken: 0.922 seconds, Fetched: 1 row(s)
雖然數量在這個表中的行是959行
hive> select * from daily_firstseen_analysis;
....
Time taken: 0.966 seconds, Fetched: 959 row(s)
它給959行
數據3210hive> ANALYZE TABLE daily_firstseen_analysis PARTITION(day) COMPUTE STATISTICS noscan;
Partition logdata.daily_firstseen_analysis{day=20140521} stats: [numFiles=6, numRows=70, totalSize=4433, rawDataSize=37202]
Partition logdata.daily_firstseen_analysis{day=20140525} stats: [numFiles=6, numRows=257, totalSize=4937, rawDataSize=136385]
Partition logdata.daily_firstseen_analysis{day=20140523} stats: [numFiles=6, numRows=211, totalSize=5059, rawDataSize=112140]
Partition logdata.daily_firstseen_analysis{day=20140524} stats: [numFiles=6, numRows=280, totalSize=5257, rawDataSize=148808]
Partition logdata.daily_firstseen_analysis{day=20140522} stats: [numFiles=6, numRows=141, totalSize=4848, rawDataSize=74938]
OK
Time taken: 5.098 seconds
我使用的配置單元的版本蜂巢0.13.0.2.1.2.0-402
注: 我發現這個問題COUNT(*)如果我們插入到表中超過一次。使用單個插入創建的表不存在此問題
那是不可能的。 您可以確定何時在Hive表中插入/加載記錄時,您沒有在該表上運行任何其他查詢。 –
@MukeshS我按順序運行了所有插入查詢。我可以使用select *語句查看所有記錄。即使分析表給我一切正常。這個表格中只有count(*)是問題。在其他表上的count(*)在我的環境中工作正常。讓我知道你是否需要關於這個問題的更多信息。 – minhas23
@MukeshS「那是不可能的」。所以你要親自證實這個配置單元有零錯誤?順便說一句,我已經在超過500個節點的簇中使用了兩年的配置單元。我認爲配置單元有一個或兩個缺陷.. – javadba