у меня есть Кассандра таблицы хуг со следующей схемой:Cassandra не поддерживает УДАЛИТЬ индексированные столбцы
create table xyz(
xyzid uuid,
name text,
fileid int,
sid int,
PRIMARY KEY(xyzid));
я создаю индекс на столбцах FILEID, с.и.д.:
CREATE INDEX file_index ON xyz (fileid);
CREATE INDEX sid_index ON xyz (sid);
вставить данные:
INSERT INTO xyz (xyzid, name , fileid , sid) VALUES (now(), 'p120' , 1, 100);
INSERT INTO xyz (xyzid, name , fileid , ssid) VALUES (now(), 'p120' , 1, 101);
INSERT INTO xyz (xyzid, name , fileid , sid) VALUES (now(), 'p122' , 2, 101);
Я хочу удалить данные с помощью индексированных столбцов:
DELETE from xyz WHERE fileid=1 and sid=101;
Зачем нужна эта ошибка?
InvalidRequest: code=2200 [Invalid query] message="Non PRIMARY KEY fileid found in where clause"
Обязательно ли указать первичный ключ в ИНЕКЕ для запросов на удаление?
Поддерживает ли Cassandra удаление с использованием вторичного индекса s?
Что нужно сделать для удаления данных с использованием вторичного индекса s?
Любые предложения, которые могут помочь.
Я использую Data Stax Community Cassandra 2.1.8, но я также хочу знать, является ли удалить с помощью индексированных столбцов поддерживается данными Stax сообщества Cassandra 3.2.1
Благодаря
Как часто вы действительно запрашиваете только PRIMARY KEY? Если эти индексы так важны для вас, почему бы вам не создать таблицу запросов, которая использует эти индексированные столбцы в качестве компонентов PRIMARY KEY? – Aaron