【问题标题】:Cassandra UDT column as clustering columnCassandra UDT 列作为聚类列
【发布时间】:2022-01-05 04:10:31
【问题描述】:

我正在使用自定义 UDT 类型来存储地点信息。它在表中存储为冻结的 blob/序列化类型。用于基于国家和州的排序。 将 UDT 类型保留为聚类列有多大意义。将所有具有相同国家和州的地方的序列化值组合在一起。

create type place(
    country Text,
    state Text
);

create table myTable(
    person Text,
    sale_place FROZEN<place>,
    sale_time TIMESTAMP,
    PRIMARY KEY( person,sale_place,sale_time)
) WITH CLUSTERING ORDER BY (sale_place ASC,sale_time ASC );

【问题讨论】:

    标签: java database cassandra nosql cassandra-3.0


    【解决方案1】:

    据我所知,使用 UDT 作为主键的一部分没有任何限制。在最初的日子里,不鼓励在主键中使用 UDT (http://www.datastax.com/dev/blog/cql-in-2-1)。我认为的主要原因是当时的 UDT 主要用于简化集合中的复杂类型。

    现在,我认为该模式可读性很强,我认为应该可以很好地使用。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-10-03
      • 2015-10-18
      • 1970-01-01
      • 2018-06-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多