[
https://issues.apache.org/jira/browse/KUDU-1452?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15315523#comment-15315523
]
Sameer Abhyankar commented on KUDU-1452:
----------------------------------------
[~danburkert] [~tlipcon] I was looking through the pattern matching
functionality provided by
[MySQL|http://dev.mysql.com/doc/refman/5.7/en/pattern-matching.html],
[Oracle|https://docs.oracle.com/cd/B12037_01/server.101/b10759/conditions016.htm]
and some other RDBMS platforms. Based on that, I feel the C++ and JAVA APIs
for this predicate should not be limited to just the "%" and "_" wildcards that
an SQL interface would provide. I think we should provide lookups based on the
full regex grammar available in C++ and Java. An SQL interface or any other
interface that uses these APIs can then limit itself to just "%" and "_"
wildcards if needed. Even MySQL and Oracle provides similar capabilities via
its REGEXP and REGEXP_LIKE predicates.
The other question is around case sensitivity. MySQL uses case insensitive
lookups for REGEXP (unless you use the BINARY clause) whereas Oracle provides a
way for users to determine whether they want the lookups to be case sensitive.
I feel, we should provide the same flexibility here as Oracle provides in their
approach.
Thoughts on how I should proceed?
> Add predicate to allow scan based on COLUMN LIKE '%val%'
> --------------------------------------------------------
>
> Key: KUDU-1452
> URL: https://issues.apache.org/jira/browse/KUDU-1452
> Project: Kudu
> Issue Type: New Feature
> Components: api, client
> Reporter: Sameer Abhyankar
> Assignee: Sameer Abhyankar
>
> While working on a different issue, I noticed that Kudu currently has no way
> to fetch rows from a table based on the COLUMN LIKE '%value%' filter.
> Most relational DBs will allow lookups based on something like this:
> select c1, c2 from table-a where c3 like '%something%'
> I cant think of an efficient way to do this in Kudu, but I think it would
> still be more efficient than a client fetching all the rows and then doing
> the filtering.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)