如何检查 Cassandra 表的文本字段的长度
Posted
技术标签:
【中文标题】如何检查 Cassandra 表的文本字段的长度【英文标题】:How to check length of text field of Cassandra table 【发布时间】:2020-10-26 21:37:21 【问题描述】:我们的 Cassandra 数据库中有一个字段“name”,其数据类型为“text”类型 如何使用 Cassandra 查询检索“名称”字段长度大于某个数字的数据。
【问题讨论】:
也许这个问题的答案会有所帮助? ***.com/questions/49674114/… 【参考方案1】:和pointed in the comment一样,很容易添加自定义函数,并使用它来检索文本字段的长度,但问题是你不能在WHERE条件下使用自定义函数(见CASSANDRA-8488)。
即使有可能,如果您仅将此作为条件 - 这对 Cassandra 来说是一个糟糕的查询,因为它需要遍历数据库中的所有数据,并将它们过滤掉。对于此类任务,通常使用 Spark 之类的东西 - 您可以通过 Spark Cassandra Connector 读取数据,并应用必要的过滤条件。但这将涉及从数据库中读取所有数据,然后执行过滤——这将比普通 CQL 查询慢得多,但至少会自动并行化。
【讨论】:
以上是关于如何检查 Cassandra 表的文本字段的长度的主要内容,如果未能解决你的问题,请参考以下文章
如何在 OLDEB sql 选择命令中检查字段值是不是为特定字符长度?