Представьте таблицу с столбцов, где большинство данных в записи строки равно null. Один из столбцов - это идентификатор, и этот идентификатор известен заранее.Моделирование стола Кассандры
select id,SomeRandomColumn
from LotsOfColumnsTable
where id = 92e72b9e-7507-4c83-9207-c357df57b318;
SomeRandomColumn - один из тысяч, и в большинстве случаев единственный столбец с данными. SomeRandomColumn NOT Известный аванс как тот, который содержит данные.
Есть ли запрос CQL, который может сделать что-то вроде этого.
select {Only Columns with data} from LotsOfColumnsTable where id = 92e72b9e-7507-4c83-9207-c357df57b318;
Я думал положить в колонке «подсказка», что указывает на столбец с данными, но чувствует себя не так, если не является CQL запрос, который выглядит, как это с одним запросом;
select ColumnHint.{DataColumnName} from LotsOfColumnsTable where id = 92e72b9e-7507-4c83-9207-c357df57b318;
В MongoDB я бы просто иметь коллекцию, и документ я вернулся бы «Type» атрибут, описывающий данные. Поэтому, возможно, мой реальный вопрос - как воспроизвести то, что я могу сделать с MondoDB в Кассандре. Моей поездкой Cassandra пока является создание UDT для каждого уникального документа, а затем изменение таблицы для добавления этого нового UDT в качестве столбца. Моя стартовая таблица выглядит так, где ColumnDataName - это подсказка;
CREATE TABLE IF NOT EXISTS WideProductInstance (
Id uuid,
ColumnDataName text
PRIMARY KEY (Id)
);
Благодаря
Кассандры не понятие нулевых значений. Если у вас пустой столбец в строке, он пуст. Вы можете выполнить SELECT *. Кассандра вернет только существующие данные. Я не понимаю, зачем вам нужно больше? –