【发布时间】:2018-04-28 05:16:07
【问题描述】:
我想将我的 MySQL 数据迁移到 cassandra。我正在使用旧版本的 DSE,即支持 sqoop 命令的 4.8。我的查询是我想插入具有动态 timeuuid 列值的行,该列值将在插入时生成,并且它不存在于 MySQL 表中。请帮忙。
我正在使用以下查询插入数据但没有 uuid 列值。
bin/dse sqoop cql-import --connect jdbc:mysql://localhost:3306/testing --table tbl1 --username root -P --cassandra-keyspace test --cassandra-table testtable --cassandra-主机 localhost --split-by ID --cassandra-column-mapping id:ID,name:NAME --columns ID,NAME
谢谢,
【问题讨论】:
-
writetime 对你来说够用吗? docs.datastax.com/en/cql/latest/cql/cql_using/useWritetime.html
-
嗨,Horia,我在 cassandra db 中有一个字段,用于存储自动生成的唯一 ID。我如何将 writetime 映射到任何字段,比如 cassandra testtable 的 UID?
-
为添加到列的每个值存储写入时间,主键除外。因此,如果您的 UID 是主键,那么您将无法检索它的写入时间。否则,您可以使用 cql 语句对其他列执行此操作: select writetime(
) from where -
你不必映射它,它默认就在那里。该值以微秒为单位。您所要做的就是查询它。
-
我明白,但我实际上需要单独的列来拥有 uuid,我只需要一种在插入 cassandra 时动态插入 uuid 值的方法
标签: mysql cassandra database-migration sqoop