1

我有一个 cassandra 表,其中包含一种多映射类型的数据结构。我不想更改表结构,因为要求是基于 env 和域名获取所有集群、服务器。

CREATE TABLE CLUSTER_DETAILS (Environment text,DomainName text,ApplicationName text,ClusterServerMap map<text, frozen <list<frozen <SERVER_INSTANCE>>>>,LastUpdatedAt timestamp, PRIMARY KEY ((Environment,DomainName), ApplicationName)) WITH CLUSTERING ORDER BY (ApplicationName asc);

Server_Instance 又是一种用户定义的数据类型。

我正在使用 cassandra-driver-mapping 从我的 Java 应用程序填充表中的数据。现在我无法弄清楚我应该使用什么注释将 ClusterServerMap 字段映射到我的 Object 属性。

我试过@Frozen (Map < Text, Frozen < LIST < FROZEN < SERVER_INSTANCE>>>) 但这是抛出错误说

检查实体 WLClusterDetails 的字段 clusterServerMap 上的冻结类型时出错:预期的“>”(地图<文本,冻结<列表<冻结<SERVER_INSTANCE>>>> [44])

并且不确定@Frozenvalue 是否会满足要求。是否有任何其他注释来处理这种情况。任何帮助表示赞赏。

编辑Server_Instance UDF 只是一个带有一堆字符串和整数的普通对象。

创建类型 server_instance (ClusterName text, ServerName text, ClusterWeight int, ActivationTime bigint, CurrentMachine text, HealthState int, State text);

4

0 回答 0