Support CQL IN ?
We're migrating some existing code to AWS Keyspaces, some of it relies on the IN keyword.
Queries are failing with "IN is not yet supported".
Will this functionality be added in the future ?
Is there any alternative that would allow us to achieve the same result ?
Can you explain your use case for needing the keyword in a bit more detail? If you can share your specific use case we can discuss the best way to help you.
You are correct that at the time of this writing, Amazon Keyspaces does not support the IN keyword. As a general rule, we don't comment on the future direction of the service, but we do prioritize our roadmap based on customer feedback.
In many cases with Cassandra, it’s better to break the IN Operator statement into multiple queries that are executed independently by the client driver. The application can execute the independent statements in parallel to achieve higher throughput and lower latency. If you find yourself executing the IN statement often you may want to consider changing the datamodel so that you can perform the lookup in a single statement. Could you share your model and query ?
Cassandra supports In clause and it works in my local environment with Cassandra 3.11.6:
https://docs.datastax.com/en/cql-oss/3.3/cql/cql_using/useQueryIN.html
I use it also with Datastax DAO
import com.datastax.oss.driver.api.mapper.annotations.;
...
@Query("SELECT FROM ${keyspaceId}.${tableId} WHERE target_id IN :target_ids")
PagingIterable<Targets> getAllByPrimaryKeyInClause( List<UUID> target_ids );
We are currently evaluating KeySpaces. For us we do use IN
in a number of places. Changing all of them will be expensive, so it can be a critical reason for us to not migrating over. It's probably sound silly but well I think IN
is quite commonly-used in the condition clause.
Also I kinda curious why Amazon decided to not support this keyword in a first place?
I can't really share information about our model, but we did end up splitting queries using IN into multiple queries, so this solution works for us.
Still, supporting IN would be nice, additional work is otherwise required while migrating from Cassandra.
Edited by: Kamek on Feb 24, 2021 1:37 PM
Relevant questions
ERROR: Dist auto table is not supported.
Accepted Answerasked 3 years agoUpdate queries are returning Consistency level errors
asked 2 years agoAWS Keyspaces is not listed under services in scope for compliance
asked a year agoInvalidQueryException: Frozen nested collections are not yet supported
Accepted Answerasked a year agoUsing PartiQL with DAX client for dynamodb
Accepted Answerasked a month agoIs it possible to send json data in body of GET method defined in API Gateway REST API ?
Accepted Answerasked 2 months agonetezza -> S3 copy
Accepted Answerasked 4 years agoSupport CQL IN ?
asked a year agounderscore not detected in textract
asked 2 months agoWill Multi-Table queries be supported with PartiQL + DynamoDB?
asked 2 months ago