假设我有不同的客户,任何给我发送不同json结构的人 即:
customer_1:{'name': ..., 'surname': ...}
customer_2:{'name': ..., 'address': ..., 'amount': ...}
customer_3:{'type': ..., 'amount': ..., 'color': ..., 'light': ...}
[...]
实际上我使用MongoDB来存储和处理这些数据,但出于某种原因我需要迁移到Cassandra。 存储此数据的最佳做法是什么?
选项1:我为任何客户创建列族/表,以便任何客户都有其表和数据结构
选项2:我将所有内容存储在一个表中,每次有新客户(使用自己的json)时,我都会创建一个alter table来创建新列?
选项3:我将json存储在一个表中,作为地图类型,但是这样我就无法使用单个值
答案 0 :(得分:0)
选项2听起来与Cassandra最兼容。一个表可以将所有客户跟踪为行,JSON的每个字段都可以是一列。当您访问特定客户时,它只会回吐其拥有数据的列。 Cassandra几乎免费提供空柱。