当前位置: 首页 > 知识库问答 >
问题:

使用MAP或TEXT类型的Cassandra列

壤驷彦
2023-03-14

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

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

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

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

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

共有1个答案

唐海阳
2023-03-14

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

如果值的数据类型相同(它们都是文本或整数),则可以将键值对存储在CQL<code>map</code>集合中,以便更容易根据键值检索值,尽管您已经声明了这些值是不同的数据类型。干杯

 类似资料:
  • Cassandra CQL中的Varchar和text数据类型有什么不同。 https://docs.datastax.com/en/cql/3.0/cql/cql_reference/cql_data_types_c.html DESC测试表给出了下面的结果。 [cqlsh 5.0.1 Cassandra 3.0.7.1158 DSE 5.0.0 CQL spec 3.4.0 Native pr

  • 我遇到了一个奇怪的例外 '_InternalLinkedHashMap 我不知道怎么画地图 第一次运行代码时,它可以正常工作,因为它可以访问else部分。当它第二次应该访问第一个部件时,它会产生上述异常。 } 输出 FoodLog输出: {2021年8月3日:{早餐:{鱼片:{碳水化合物:0.0,脂肪:1.7,蛋白质:20.08,钙:95}},晚餐:{},零食:{},午餐:{} E/flatter

  • 我试图从API获取数据。我得到了错误类型列表不是地图的子类型。我是新来的,不明白我在哪里犯了错误。 这是我的回帖功能: 在我的主屏幕中,我使用了一个,如下所示: 如何解决此错误?提前谢谢。

  • 我从github获取了代码,但仍然不起作用 生成FutureBuilder时引发了以下类型错误(脏,状态:_FutureBuilderState#a936c):类型“List”不是类型“Map”的子类型 在此列出声明 这是地图

  • 我正在开发一个依靠API REST调用的flutter应用程序。来自API的响应有点复杂。当调用我的API(例如:api/产品)时,我可以从日志中看到响应:但是我有这个错误: 类型列表 StackTrace: [更新]:退货产品响应。fromJson(response)而不是response ProductsRespository: ProductsBloc: 回应: ApiProvider: 模

  • 根据文档,响应自动作为JSON、XML或字符串对象提供,具体取决于响应内容。 在我的例子中,我的响应的内容类型为text/plain 这在我将字符串转换为响应,然后验证的地方工作(我已经逃过了所有的反斜杠) 这是失败的。当响应也可用作字符串时,为什么会失败 com.intuit.karate.exception.KarateExc0019:路径: $[*], 实际:["a. b. c匹配\"(\d