【问题标题】:Use MAP or TEXT type of Cassandra column使用 MAP 或 TEXT 类型的 Cassandra 列
【发布时间】:2021-02-11 11:42:47
【问题描述】:

我想在 Cassandra 中存储 python dict 对象(相同的结构)。我只想将它们存储在一列中。我可以创建一个 Cassandra 列:

  1. 作为MAP
  2. 作为TEXT。然后我可以将 dict 序列化为 json 字符串并存储它。

但不是我的python dict 中的所有项目都映射到相同的类型,例如

dict = {"key_1": "abc", "key_2": 10, "key_3": True}

在这种情况下,我认为只有选项 2 有效?在我的实际项目中,我有很多列要创建。有些映射到相同的类型,有些则没有。为了方便起见,我只想将它们全部序列化并存储为TEXT。但这对我来说有点不正统。最佳做法是什么?

【问题讨论】:

    标签: python cassandra


    【解决方案1】:

    如果您不关心将每个 dict 键映射到 CQL 列,那么我通常建议将整个 dict 存储到 CQL text 列中。

    如果值的数据类型相同(它们都是文本或整数),您可以将键值对存储在 CQL map 集合中,以便更轻松地根据键检索值尽管您已经声明这些值具有不同的数据类型。干杯!

    【讨论】:

      猜你喜欢
      • 2014-04-18
      • 2021-08-25
      • 2015-05-04
      • 2016-01-28
      • 2016-05-04
      • 1970-01-01
      • 2015-08-24
      • 2014-08-10
      • 1970-01-01
      相关资源
      最近更新 更多