Najlepsze pytania
Chronologia
Czat
Perspektywa

Apache Nutch

Z Wikipedii, wolnej encyklopedii

Apache Nutch
Remove ads

Apache Nutchotwartoźródłowy, rozszerzalny i skalowalny robot internetowy (program komputerowy do przeszukiwania i analizy stron internetowych) rozwijany pod opieką Fundacji Apache[2].

Szybkie fakty Autor, Pierwsze wydanie ...
Remove ads

Opis i cechy

Cechy systemu Nutch (wg opracowania Yadav i Goyala[3]):

  • Duża ilość funkcji i możliwość elastycznego konfigurowania działania systemu[4][5],
  • Możliwość rozszerzania funkcji systemu (z użyciem systemu wtyczek)[4][6],
  • Łatwa integracja z innymi elementami ekosystemu Apache, takimi jak Tika i Solr czy z platformą Hadoop,
  • Duża skalowalność i odporność na uszkodzenia,
  • Możliwość przechowywania danych w rozproszonej bazie danych typu klucz-wartość, np. HBase(inne języki) (od wersji 2.0),
  • Uwzględnianie zasad mechanizmu Robot Exclusion Protocol (zapisanych na stronach webowych w plikach robots.txt)[2],
  • Dobre wsparcie społeczności open source.
Remove ads

Budowa

Nutch jest napisany całkowicie w języku Java[3], lecz jego dane zapisywane są w formatach niezależnych od języka programowania. Budowa systemu jest modularna, co pozwala na modyfikację działania i połączenie w innymi narzędziami i bibliotekami. W ramach projektu Nutch stworzono interfejsy API, które pozwalają m.in. na tworzenie wtyczek (ang. plugins) do systemu. Jednym z dostępnych interfejsów API jest API REST-owe, które umożliwia interaktywną kontrolę działania systemu, bez konieczności używania interfejsu graficznego czy komend[7].

W wielu swoich zadaniach pomocniczych, Nutch bazuje na istniejącym oprogramowaniu[6]:

  • Hadoop: skalowalność, wykonywanie zadań, serializacja danych (w linii 1.x)
  • Tika: rozpoznawanie formatów plików
  • Solr, Elasticsearch: wyszukiwanie w zapisanych danych
  • Gora, HBase, Cassandra: gromadzenie danych (w linii 2.x)
  • crawler-commons[8]: obsługa plików robots.txt
Remove ads

Historia projektu

Projekt Nutch został zapoczątkowany w roku 2002 w ramach współpracy Douga Cuttinga (twórcy m.in. platformy Lucene) oraz Mike'a Cafarelli. Na przełomie 2004 i 2005 roku w projekcie Nutch wdrożono funkcję MapReduce oraz wprowadzono rozproszony system plików (który później został wyodrębniony wraz z innymi elementami jako odrębny projekt Hadoop), co pozwoliło na przetwarzanie i indeksowanie danych na wielu urządzeniach. W styczniu 2005 r. Nutch dołączył projektów Apache Software Foundation (ASF) – początkowo objęty procedurą tzw. inkubacji, by zostać podprojektem Lucene w czerwcu tego samego roku[6]. W 2010 r. Nutch został niezależnym projektem ASF na najwyższym poziomie[9].

W lutym 2014 r. projekt Common Crawl(inne języki)[10] przyjął Nutcha jako swoje otwarte narzędzie do indeksowania sieci na dużą skalę[11].

Przypisy

Loading related searches...

Wikiwand - on

Seamless Wikipedia browsing. On steroids.

Remove ads