Apache 时间戳主键Kudu

Apache 时间戳主键Kudu,apache,apache-kudu,Apache,Apache Kudu,我试图通过信封将数据加载到Kudu表中。 主键列之一是timestamp。 DDL: 创建表格余额( 客户端id int bal_id int, 有效时间戳, prsn_id int, 余额加倍, prsn_名称字符串, 主键(客户端id、余额id、有效时间) ) 按散列分区(客户端id)分区8 储存为库杜 但它抛出了错误Java.lang.illelegalArgumentException 所以我的问题很简单-时间戳列可以是主键的一部分,也可以不是???是的,将时间戳作为主键的一部分是完全

我试图通过信封将数据加载到Kudu表中。 主键列之一是timestamp。 DDL: 创建表格余额( 客户端id int bal_id int, 有效时间戳, prsn_id int, 余额加倍, prsn_名称字符串, 主键(客户端id、余额id、有效时间) ) 按散列分区(客户端id)分区8 储存为库杜

但它抛出了错误Java.lang.illelegalArgumentException


所以我的问题很简单-时间戳列可以是主键的一部分,也可以不是???

是的,将时间戳作为主键的一部分是完全可以的。 请查找代码:

use ${var:db_name};
CREATE TABLE test (
  table_name STRING NOT NULL ENCODING AUTO_ENCODING COMPRESSION DEFAULT_COMPRESSION,
  table_id BIGINT NOT NULL ENCODING AUTO_ENCODING COMPRESSION DEFAULT_COMPRESSION,
  last_read_timestamp TIMESTAMP NOT NULL ENCODING AUTO_ENCODING COMPRESSION DEFAULT_COMPRESSION,
  window STRING NOT NULL ENCODING AUTO_ENCODING COMPRESSION DEFAULT_COMPRESSION,
  ext_gen_timestamp timestamp NOT NULL ENCODING AUTO_ENCODING COMPRESSION DEFAULT_COMPRESSION,
  extract_date timestamp NOT NULL ENCODING AUTO_ENCODING COMPRESSION DEFAULT_COMPRESSION,
  manual_rerun STRING NULL ENCODING AUTO_ENCODING COMPRESSION DEFAULT_COMPRESSION,
  PRIMARY KEY (table_name, table_id, last_read_timestamp)
)
STORED AS KUDU;
*