[ 
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)

Reply via email to