Мне нужно хранить данные в cassandra, которому нужен один столбец для поддержки списка вложенных кортежей. Ниже приведена небольшая часть таблицы.
CREATE TABLE user_table (
k int PRIMARY KEY,
v list<frozen<tuple<int, tuple<int, int>>>>
);
Я пытался создать класс сущностей, но не уверен, как использовать Tuple или TupleValue. У меня тоже все в порядке с пользовательскими типами, если это решает проблему.
До сих пор я использовал следующую зависимость в проекте.
<dependency>
<groupId>org.springframework.data</groupId>
<artifactId>spring-data-cassandra</artifactId>
</dependency>
Но я узнал об этом от других авторов. что нам нужно использовать следующее, чтобы использовать кортежи.
<!-- <dependency>
<groupId>org.springframework.data</groupId>
<artifactId>spring-data-commons</artifactId>
<version>2.2.0.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework.data</groupId>
<artifactId>spring-data-cassandra</artifactId>
<version>2.2.0.RELEASE</version>
</dependency> -->
Но я все еще не мог импортировать какой-либо класс или мог написать любой класс сущностей, который решит мою проблему.
ОБНОВЛЕНИЕ : Попытка использовать UDT, а не кортежи. Успешно из консоли cqlsh вставить записи в соответствии с моим требованием. Работаем над классом сущностей. Скрестив пальцы.
CREATE TYPE cpi.ABC (
x int,
y int
);
CREATE TYPE cpi.XYZ (
num int,
aBC FROZEN <ABC>
);
CREATE TABLE user_table (
k int PRIMARY KEY,
v list<frozen<XYZ>>
);
INSERT INTO user_table (k, v) VALUES(10000, [{num:2,aBC:{x:3,y:4}}, {num:3,aBC:{x:4,y:5}}]);