0
|
Xavier Prudent · 技术社区 · 6 年前 |
1
1
表的主键是numligne,date。 由于csv文件中的数据对于同一个主键来说是不唯一的,即使您插入了,cassandra也只更新这些条目。 为了给你一个例子,如果在第43行你有组合332017-12-07,…这将被插入。如果在第2000行有相同的组合,那么当这个插入操作运行时,Cassandra实际上会执行一个更新,因为这个键已经在数据库中了。 插入和更新操作都是 upsert 操作。进一步了解 INSERT 和 UPDATE 命令。 为了避免这一点,你可以定义另一个主键,所以每一行都有一个唯一的键,或者你可以编写自己的加载器,如果不存在的话,它会插入,所以只有当它们不存在时才插入行(见插入命令的链接,只有当它不存在时才插入行)。 卡桑德拉自己提供 COPY 命令,但是
在检查了您正在使用的工具的代码之后,我可以看到 INSERT command being used 如果不存在,则不使用,因此,如果密钥已经存在,它也将更新。 |