Download Incremental crawling with Heritrix

Transcript
4
Kristinn Sigurðsson
readers needs to be consistent in its presentation of new material. As noted before,
this is not an absolute and further research is needed to establish just how much an
issue erratic change rates in web pages are.
Secondly, the file type of resources, or documents, significantly affects the
probable change rates. [2] While changing HTML or other simple text files is both
easy and straight forward (not to mention expected by the user in many cases and
frequently handled by content management systems), changing images is more
complex. In fact browsers and proxies will generally cache images, while HTML
pages are requested for each page view. Images and other multimedia files are usually
not generated on demand, unlike many HTML files, and when a new or changed
graphic is needed, it is customary to add rather than replace an image.
This allows us to predict different initial wait times between revisits before we
gather any further information that enables us to adapt to observed change rates.
HTML and other pure text documents can be assigned a relatively short initial wait,
while a longer initial wait time is assigned to image files. Higher bandwidth media
such as audio and video files are even less likely to change, due to their complex
nature and can thus be assigned even higher initial wait times. Formatted text files
such as Word and PDF documents are also less likely to change than pure text files.
There is a certain amount of connection between the size of a resource and its
change rate. As the size increases, its likely change rate goes down. This assumes that
image, audio, video and formatted files are generally larger than pure text documents.
While not always true, this generally holds.
We are therefore able to use this information not only to reduce the number of
visits we must make to a certain part of our scope, but to one of the most bandwidth
intensive part of our scope.
Another factor that might be taken into consideration is a document's location in a
web site’s hierarchy. Generally, the front page of a web site changes more often than
any given page in the archive (where changes may never occur). Assuming that the
initial seeds are the front pages of each site, it would be possible to use the depth from
seed as a factor in deciding the initial wait time.
Finally, one could conceivably do some form of contextual analysis on the
resource's content or metadata to evaluate the probable change rate. For example [4]
observes that documents without the last-modified information are about twice as
likely to change between two visits, as those that have it. There are undoubtedly many
other possible indicators that could be used, but covering them all is well outside the
scope of this article.
The primary goal in using incremental crawling is to to utilize bandwidth more
effectively and thus limit the stress our harvesting places on web servers. It is worth
noting however that while doing this we also achieve a secondary benefit in reduced
storage costs, since duplicate data need not be stored. That however brings us to
another problem; detecting change.
One of the key aspects discussed above, relies on being able to detect if a change
has occurred between the times when a resource is visited. Doing a simple, strict hash,
comparison does achieve this to a degree. It certainly detects any change and reduces
the odds that we discard a changed document to nearly zero. Unfortunately, it relies
on a bit by bit comparison and takes no notice of the actual content. Thus any change