You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@nutch.apache.org by "Sebastian Nagel (JIRA)" <ji...@apache.org> on 2019/01/22 15:49:00 UTC

[jira] [Created] (NUTCH-2690) Configurable and fast URL filter

Sebastian Nagel created NUTCH-2690:
--------------------------------------

             Summary: Configurable and fast URL filter
                 Key: NUTCH-2690
                 URL: https://issues.apache.org/jira/browse/NUTCH-2690
             Project: Nutch
          Issue Type: Improvement
          Components: plugin
            Reporter: Sebastian Nagel
             Fix For: 1.16


This improvement introduces a new URL filter plugin "urlfilter-fast" (naming debatable) which is in use at Common Crawl [since 2013|https://github.com/commoncrawl/nutch/commit/968e0d8f292bed46e4e3eb276cb475f4403ea9bd] to apply a long list of filters. 

# an exact (suffix) match against the host name is done to retrieve host/domain-specific regex rules
# applies a regular expression against the path (and query) component of the URL

What makes it faster than urlfilter-regex for common cases:
- regexes are selected by host name or it's domain suffix, so there are usually fewer rules to be checked. That's similar to NUTCH-1838 but any domain suffix can be matched including {{subdomain.domain.com}}, {{com}} or {{.}} for global rules. The selection by host name suffix is considerably fast.
- regexes are applied only to the path component (optionally including the query) and not the entire URL.
  Matching against a shorter string can make a huge difference for more complex regular expressions.
- the rule to deny everything from a host or domain gets special treatment to be fast

More details about the rule format are found in the plugin's [README|https://github.com/commoncrawl/nutch/blob/cc-fast-url-filter/src/plugin/urlfilter-fast/README.md].



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)