gpt4 book ai didi

cassandra - 如何使用 CQL3 在 Cassandra 中创建复杂的结构

转载 作者:行者123 更新时间:2023-12-04 14:01:20 26 4
gpt4 key购买 nike

我在 cassandra 中呈现复杂的数据结构时遇到问题。
JSON 数据示例:

{
"A": {
"A_ID" : "1111"
"field1": "value1",
"field2": "value2",
"field3": [
{
"id": "id1",
"name": "name1",
"segment": [
{
"segment_id": "segment_id_1",
"segment_name": "segment_name_1",
"segment_value": "segment_value_1"
},
{
"segment_id": "segment_id_2",
"segment_name": "segment_name_2",
"segment_value": "segment_value_2"
},
...
]
},
{
"id": "id2",
"name": "name2",
"segment": [
{
"segment_id": "segment_id_3",
"segment_name": "segment_name_3",
"segment_value": "segment_value_3"
},
{
"segment_id": "segment_id_4",
"segment_name": "segment_name_4",
"segment_value": "segment_value_4"
},
...
]
},
...
]
}
}

将只使用一个查询:
按 A_ID 查找。

我认为这些数据应该存储在一个 TABLE(列族)中并且没有序列化/反序列化操作以提高效率。
如果 CQL 不支持嵌套映射和列表,我该怎么做?

最佳答案

Cassandra 2.1 添加了对嵌套结构的支持:https://issues.apache.org/jira/browse/CASSANDRA-5590

“仅将其存储为 json/protobuf/avro/etc blob”的缺点是您必须读取并重写整个 blob 以更新任何字段。因此,至少您应该利用 collections 将顶级字段拉入 Cassandra 列中。作为适当的。

关于cassandra - 如何使用 CQL3 在 Cassandra 中创建复杂的结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19926860/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com