В нашей базе данных Cassandra есть одно поле «имя», тип данных которого — «текст». Как мне получить данные, длина поля «имя» которых больше некоторого числа, с помощью запроса Cassandra.
Как проверить длину текстового поля таблицы Cassandra
Ответы (1)
Как было указано в комментарии, пользовательскую функцию легко добавить и использовать. для получения длины текстового поля, но загвоздка в том, что вы не можете использовать определяемую пользователем функцию в условии WHERE (см. CASSANDRA-8488).
Даже если бы это было возможно, если бы у вас было только это как условие - это плохой запрос для Cassandra, так как ему нужно будет просмотреть все данные в базе данных и отфильтровать их. Для таких задач обычно используются штуки вроде Spark — читать данные можно через Spark Cassandra Connector и применить необходимые условия фильтрации. Но это потребует чтения всех данных из базы данных, а затем выполнения фильтрации - это будет намного медленнее, чем обычные запросы CQL, но, по крайней мере, будет автоматически распараллелено.