【问题标题】:Cassandra duplicate keys in mapCassandra在地图中重复键
【发布时间】:2018-10-28 10:41:14
【问题描述】:

Cassandra 地图实现是 Map 还是 MultiMap?换句话说,Cassandra 是否允许映射类型中的重复键?基于this example,如果我调用了

UPDATE cycling.cyclist_teams SET teams = teams + {2009 : 'First team'} WHERE id = 5b6962dd-3f90-4c93-8f61-eabfa4a803e2;

然后

UPDATE cycling.cyclist_teams SET teams = teams + {2009 : 'Second team'} WHERE id = 5b6962dd-3f90-4c93-8f61-eabfa4a803e2;

那么数据库将如下所示:A)

teams[2009]: 'Second team'

或者这个:B)

teams[2009]: 'First team'
teams[2009]: 'Second team'

【问题讨论】:

    标签: collections cassandra hashmap cassandra-3.0


    【解决方案1】:

    documentation 对此非常清楚:

    地图通过键值对将一个项目与另一个项目相关联。对于每个键,可能只存在一个值,并且不能存储重复项。键和值都指定了数据类型。

    也就是说,该值将被覆盖,就像 java HashMap 的情况一样。结果将是{2009 : 'Second team'}

    【讨论】:

    • 澄清一下:如果客户的时钟不同步,它可能是{2009: 'First team'}...
    猜你喜欢
    • 1970-01-01
    • 2018-08-31
    • 2015-02-18
    • 2014-06-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-07-14
    • 2015-06-10
    相关资源
    最近更新 更多