[Virtuoso-users] Making REGEX filters fast

2016-02-22 Thread Davis, Daniel (NIH/NLM) [C]
Is there a way to make FILTER(REGEX(?label, 'Insurance, Health/utilization', 
'I')) queries fast?

I can see that REGEX is going to require a linear scan of the data, and that 
there are stored functions that do the matching.

Will STRSTARTS be able to work quickly?   Does the database collation allow 
case insensitive matching with STRSTARTS?

Does one require a license for Virtuoso to use Full-text bif:contains (which is 
not quite the same as REGEX, of course)?

Dan Davis, Systems/Applications Architect (Contractor),
Office of Computer and Communications Systems,
National Library of Medicine, NIH

--
Site24x7 APM Insight: Get Deep Visibility into Application Performance
APM + Mobile APM + RUM: Monitor 3 App instances at just $35/Month
Monitor end-to-end web transactions and take corrective actions now
Troubleshoot faster and improve end-user experience. Signup Now!
http://pubads.g.doubleclick.net/gampad/clk?id=272487151&iu=/4140___
Virtuoso-users mailing list
Virtuoso-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/virtuoso-users


Re: [Virtuoso-users] Making REGEX filters fast

2016-02-22 Thread Hugh Williams
Hi Daniel,

I would not expect STRSTARTS to be any faster than REGEX as neither are 
indexed. The Virtuoso bif:contains function which is available in both open 
source and commercial does have a Full Text index which makes it much faster 
for string searches. So you can use something like:

filter(bif:contains(?name1, '"Insurance, Health/utilization"’))

Best Regards
Hugh Williams
Professional Services
OpenLink Software, Inc.  //  http://www.openlinksw.com/
Weblog   -- http://www.openlinksw.com/blogs/
LinkedIn -- http://www.linkedin.com/company/openlink-software/
Twitter  -- http://twitter.com/OpenLink
Google+  -- http://plus.google.com/100570109519069333827/
Facebook -- http://www.facebook.com/OpenLinkSoftware
Universal Data Access, Integration, and Management Technology Providers



> On 22 Feb 2016, at 22:36, Davis, Daniel (NIH/NLM) [C]  
> wrote:
> 
> Is there a way to make FILTER(REGEX(?label, ‘Insurance, Health/utilization’, 
> ‘I’)) queries fast?
>  
> I can see that REGEX is going to require a linear scan of the data, and that 
> there are stored functions that do the matching.
>  
> Will STRSTARTS be able to work quickly?   Does the database collation allow 
> case insensitive matching with STRSTARTS?
>  
> Does one require a license for Virtuoso to use Full-text bif:contains (which 
> is not quite the same as REGEX, of course)?
>  
> Dan Davis, Systems/Applications Architect (Contractor),
> Office of Computer and Communications Systems,
> National Library of Medicine, NIH
>  
> --
> Site24x7 APM Insight: Get Deep Visibility into Application Performance
> APM + Mobile APM + RUM: Monitor 3 App instances at just $35/Month
> Monitor end-to-end web transactions and take corrective actions now
> Troubleshoot faster and improve end-user experience. Signup Now!
> http://pubads.g.doubleclick.net/gampad/clk?id=272487151&iu=/4140___
>  
> 
> Virtuoso-users mailing list
> Virtuoso-users@lists.sourceforge.net 
> 
> https://lists.sourceforge.net/lists/listinfo/virtuoso-users 
> 


smime.p7s
Description: S/MIME cryptographic signature
--
Site24x7 APM Insight: Get Deep Visibility into Application Performance
APM + Mobile APM + RUM: Monitor 3 App instances at just $35/Month
Monitor end-to-end web transactions and take corrective actions now
Troubleshoot faster and improve end-user experience. Signup Now!
http://pubads.g.doubleclick.net/gampad/clk?id=272487151&iu=/4140___
Virtuoso-users mailing list
Virtuoso-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/virtuoso-users