互联网无济于事,我对这个学科的了解有限。
我有一个具有以下架构的表:
CREATE EXTERNAL TABLE `db.temp_entries`(
`id` bigint,
`random_id` string)
ROW FORMAT SERDE
'org.apache.hadoop.hive.ql.io.orc.OrcSerde'
STORED AS INPUTFORMAT
'org.apache.hadoop.hive.ql.io.orc.OrcInputFormat'
OUTPUTFORMAT
'org.apache.hadoop.hive.ql.io.orc.OrcOutputFormat'
LOCATION
'hdfs://xxxx/xxxxx/xxx/temp_entries'
TBLPROPERTIES (
'COLUMN_STATS_ACCURATE'='{\"BASIC_STATS\":\"true\"}',
'numFiles'='1',
'numRows'='1',
'orc.compress'='ZLIB',
'rawDataSize'='115',
'totalSize'='381',
'transient_lastDdlTime'='1532514067')
以下是使用的插入查询:
查询1
insert into `db.temp_entries`
values (1, 'P1804010001249002159939')
查询2
insert into `db.temp_entries`
values (2, 'P1804010001495232931398'),
(3, 'P1804010002374640308088'),
(4, 'P1804010009196709498065')
我正在通过python脚本生成此文件,并通过python insert
包-> pyhive
from pyhive import hive
尽管不使用insert overwrite
,但Query#1
覆盖了Query#2
的数据。我的方法有什么问题吗?
答案 0 :(得分:1)
删除表名周围的反引号
查询1
insert into db.temp_entries
values (1, 'P1804010001249002159939')
查询2
insert into db.temp_entries
values (2, 'P1804010001495232931398'),
(3, 'P1804010002374640308088'),
(4, 'P1804010009196709498065')