昨天测试 基于Phoenix 的JDBC数据导入,同样的表结构:
create table TAB_PS_XDR ( K VARCHAR NOT NULL PRIMARY KEY, A VARCHAR, B VARCHAR, C VARCHAR, D VARCHAR, V VARCHAR) COMPRESSION='SNAPPY',SALT_BUCKETS=12,TTL='7200',VERSIONS='5'; create index CALLING_NUMBER on TAB_PS_XDR (A); create index CALLED_NUMBER on TAB_PS_XDR (B); create index IMSI on TAB_PS_XDR (C); create index IMEI on TAB_PS_XDR (D);
执行下面的语句:
UPSERT INTO TAB_PS_XDR VALUES('aaaaaaacbaa11','', '','','1','1'); UPSERT INTO TAB_PS_XDR VALUES('bbaaaabbaa11','', '','','1','1'); UPSERT INTO TAB_PS_XDR VALUES('ccaaaaccbaa11','', '','','1','1'); UPSERT INTO TAB_PS_XDR VALUES('dDaaaadcbaa11','', '','','1','1');
之后执行 select count(*) from tab_px_xdr ; 发现条数没有变化,插入失败。
但是将语句修改为:
UPSERT INTO TAB_PS_XDR VALUES('aaaaaaacbaa11','', '','1','','1'); UPSERT INTO TAB_PS_XDR VALUES('bbaaaabbaa11','', '','1','','1'); UPSERT INTO TAB_PS_XDR VALUES('ccaaaaccbaa11','', '','1','','1'); UPSERT INTO TAB_PS_XDR VALUES('dDaaaadcbaa11','', '','1','','1');
继续查询结果,发现插入正常。比较郁闷。