我有一个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&lt; Text,Frozen&lt; LIST&lt; FROZEN&lt; SERVER_INSTANCE&gt;&gt;&gt;) 但这是错误的说法检查实体WLClusterDetails的字段clusterServerMap上的冻结类型时出错:expected'&gt;' (map&lt; text,frozen&lt; list&lt; frozen&lt; SERVER_INSTANCE&gt;&gt;&gt;&gt; [44])
并不确定@Frozenvalue是否满足要求。是否有任何其他注释来处理这种情况。任何帮助表示赞赏。
编辑 Server_Instance UDF只是一个包含字符串和整数的普通对象。
create type server_instance(ClusterName text,ServerName text,ClusterWeight int,ActivationTime bigint,CurrentMachine text,HealthState int,State text);