Einführung in Die Installation Eigener Suchmaschinen-Software Mit Yacy +
Total Page:16
File Type:pdf, Size:1020Kb
SuMa-eV Praxis Workshop: YaCy Einführung in die Installation eigener Suchmaschinen-Software mit YaCy Features + Demo hier zum Nachlesen im Anschluss zum mitmachen SuMa-eV-Kongress 2010 Praxis Workshop: Michael Christen Einführung in die Installation eigener Suchmaschinen-Software mit YaCy http://yacy.net Zielgruppe und Anwendungen •Anwendungsbereiche alle Zielgruppen Suchmaschinen-Dezentralisierung: Software für Software für Peer-to-Peer Websuche Suchportal im Internet Suchmaschine im Intranet •Mögliche Datenquellen: unterstütze Protokolle jede Datenquelle Web-Standards HTTP, HTTPS, FTP anzapfen Filesystem Filesystem, SMB-Shares, Indexdateien (Dublin Core / XML) Datenbanken Import aus Wikimedia-Dumps, Retrieval aus Datenbanken Harvesting RSS-Feed Client, OAI-PMH Import für •Integrationsmöglichkeiten des Suchinterfaces Entwickler interessant APIs Opensearch (Suchergebnisse per RSS), JSON, AJAX-Tools Tools Such-Widget, fertige Code-Snippets für eingebettete Suche SuMa-eV-Kongress 2010 Praxis Workshop: Michael Christen Einführung in die Installation eigener Suchmaschinen-Software mit YaCy http://yacy.net Beispiel: Suchportale mit YaCy linuxtag.org linux-club.de geoclub.de fsfe.org metager + metager2 YaCy ist schnell! SuMa-eV-Kongress 2010 Praxis Workshop: Michael Christen Einführung in die Installation eigener Suchmaschinen-Software mit YaCy http://yacy.net Beispiel: Open Access Repository Harvesting 2000 Open Access Repositories OAI-PMH Import Dublin Core OA-Suche; ca. 8.800.000 Metadaten eBooks in demo-Suche auf http://oai.yacy.net Anleitung um diesen (web) Suchindex Dienst selber zu erstellen: http://yacy.net/oai.html Datenquellen zu OAI Servern: Anwendungen: http://roar.eprints.org • dezentrale OAI Repository Suche http://www.openarchives.org/Register/ListFriends • Suche für Virtuelle Fachbibliotheken SuMa-eV-Kongress 2010 Praxis Workshop: Michael Christen Einführung in die Installation eigener Suchmaschinen-Software mit YaCy http://yacy.net Beispiel: Suchseite SRU API für Suchergebnis als RSS bzw. Opensearch, auch JSON Navigatoren: Domänen, Autoren ,besser‘ G**gle-ähnliche Darstellung der Suchergebnisse SuMa-eV-Kongress 2010 Praxis Workshop: Michael Christen Einführung in die Installation eigener Suchmaschinen-Software mit YaCy http://yacy.net Suchappliance: Funktionsreichtum, einfach zu bedienen •Verschiedenste Datenquellen einfach nutzen Crawler Harvester komfortabel Datenbanken •Integrierte Parser für Dateiformate Web-Standards HTML, XHTML, RSS, RDF, XHTML+RDFa, FOAF, vCard, Flash Office PDF, PS, Word, Excel, Visio, Powerpoint, OpenOffice, RTF, csv Archive gzip, zip, tar, rar, bzip2, 7zip reichhaltig andere torrent, images(EXIF) •Automatische Steuerung und Index-Administration Scheduler automatische Indexerneuerung, jeder Vorgang kann zeitgesteuert werden Monitoring Index-Erzeugung und Linkstrukturen visualisieren und editieren produktions- SuMa-eV-Kongress 2010 Praxis Workshop: Michaelreif Christen Einführung in die Installation eigener Suchmaschinen-Software mit YaCy http://yacy.net Funktionsweise: Crawler und Indexierer YaCy Application: retrieval, indexing, storage and search components overview Depth = 0 Start-URL Text Analysis Indexing @ links words Depth = 1 Double Link Stopwords Crawler Check Check Depth = 2 URL Reverse Crawl Stack Word Index Word URL References YaCy has an Database integrated NoSQL Database. The database stores a Reverse Word Index, Metadata Search Search and the source Interface documents. YaCy Peer-to-Peer Network SuMa-eV-Kongress 2010 Praxis Workshop: Michael Christen Einführung in die Installation eigener Suchmaschinen-Software mit YaCy http://yacy.net Funktionsweise: Peer-to-Peer Netzwerk The YaCy Network: a distributed hash table Peer Peer Peer This peer (as an A peer which example) fetches searches information some Web pages and can access directly distributes index Peer Peer peers holding the fragments to other corresponding index peers. Peer Peer DHT-Store Peer DHT-Read YaCy peers store index fragments according to a ,folded‘ ordering on word-hashes and url- hashes in a distributed hash table (DHT). The index is distributed redundantly to save the index when some peers are not available. The redundancy also helps to increase search performance. SuMa-eV-Kongress 2010 Praxis Workshop: Michael Christen Einführung in die Installation eigener Suchmaschinen-Software mit YaCy http://yacy.net Für Entwickler: Suchergebnisse per RSS oder JSON > curl http://localhost:8080/yacysearch.rss?query=foaf&maximumRecords=10 <?xml version="1.0" encoding="UTF-8"?> <?xml-stylesheet type='text/xsl' href='/yacysearch.xsl' version='1.0'?> einfach <rss version="2.0" integrierbar xmlns:yacy="http://www.yacy.net/" xmlns:opensearch="http://a9.com/-/spec/opensearch/1.1/" <!-- stark verkürztes Beispiel! --> <item> <title>Friend of a Friend (FOAF) project</title> <link>http://www.foaf-project.org/</link> Die Dublin-Core Datensätze <pubDate>Fri, 23 May 2008 02:00:00 +0200</pubDate> passen perfekt auf das RSS </item> Format. Die Suchergebnisausgabe <item> von YaCy ist kompatibel mit dem <title>FOAF - Wikipedia</title> Opensearch Standard <link>http://de.wikipedia.org/wiki/FOAF</link> <pubDate>Tue, 08 Jan 2008 01:00:00 +0100</pubDate> </item> Als leichtgewichtige Alternative <item> <link>http://microformats.org/wiki/xfn-to-foaf</link> steht JSON als Exportformat für <pubDate>Fri, 09 May 2008 02:00:00 +0200</pubDate> die Einbindung mit AJAX zur </item> Verfügung. </rss> Info über Opensearch Standard: Als Erweiterung von Opensearch http://www.opensearch.org werden Navigatoren ausgeliefert. Info über SRU Standard für Queries: http://www.loc.gov/standards/sru/specs/search-retrieve.html SuMa-eV-Kongress 2010 Praxis Workshop: Michael Christen Einführung in die Installation eigener Suchmaschinen-Software mit YaCy http://yacy.net Für Entwickler: Dateneingabe per XML (Dublin Core) <?xml version="1.0" encoding="utf-8"?> YaCy kann Dublin Core <!-- YaCy surrogate using dublin core notion --> Medata XML Dateien als <surrogates Eingabe für den Indexierer xmlns:dc="http://purl.org/dc/elements/1.1/"> verarbeiten <record> <dc:title><![CDATA[Alan Smithee]]></dc:title> <dc:identifier>http://de.wikipedia.org/wiki/Alan_Smithee</ dc:identifier> <dc:description><![CDATA[Der als Filmregisseur oft genannte '''Alan Smithee''' ist ein Anagramm von „The Alias Men“.]]></ dc:description> <dc:language>de</dc:language> <dc:date>2009-04-14T00:00:00Z</dc:date> einfach <!-- date is in ISO 8601 --> integrierbar </record> </surrogates> Damit YaCy eine Dublin Core XML Datei verarbeitet, muss diese lediglich in einem Übergabeverzeichnis (DATA/SURROGATES/in/) abgespeichert werden. Info über Dublin Core Standard: http://dublincore.org/documents/dc-xml-guidelines/ SuMa-eV-Kongress 2010 Praxis Workshop: Michael Christen Einführung in die Installation eigener Suchmaschinen-Software mit YaCy http://yacy.net Installation •Download von http://yacy.net YaCy für Windows YaCy für Mac YaCy für Debian YaCy für Linux / generisch (tar.gz) Lizenz: GPL •Auspacken, starten freie Software Packages: Je nach Betriebssystem den Anweisungen des Installers folgen, oder tarball: tar.gz auspacken und Startscript starten •Administration über Webinterface YaCy ist eine Webapplikation. Die gesamte Administration erfolgt über den Browser. Einfach http://localhost:8080 im Browser öffnen. Dann den Use Case (P2P Websuche, Portal, Intranet) wählen und Index erstellen. •Support Bei Fragen und/oder Problemen einfach im Forum posten: http://forum.yacy.de Eine gewisse Hilfe bietet auch das YaCy Wiki: http://wiki.yacy.de Anfragen für professionellen Support und kommerzielle Erweiterungen an Michael Christen, [email protected] SuMa-eV-Kongress 2010 Praxis Workshop: Michael Christen Einführung in die Installation eigener Suchmaschinen-Software mit YaCy http://yacy.net Demo: Überblick zur Auswahl stehen: •Portalsuch im Internet wie bei http://yacy.net und bei http://geoclub.de •Alert-Service für Nachrichten per RSS einen News-Feed aus Suchergebnissen in News-Feeds erstellen •Intranetindexierung lokale Webserver und Fileshares •Virtuelle Fachbibliothek aus OAI-PMH Import die eigene Buchsuche SuMa-eV-Kongress 2010 Praxis Workshop: Michael Christen Einführung in die Installation eigener Suchmaschinen-Software mit YaCy http://yacy.net Demo: Portalsuche im Internet Vorbereitung: • Datenquellen zusammenstellen (einzelne URLs) oder • Linkliste als html-Datei erstellen und im Internet hochladen Beispiel für Liste von URLs für Portalsuche von YaCy: • http://yacy.net wird als sitemap erfasst: http://yacy.net/sitemap.xml • http://forum.yacy.de/ wird über eine sitemap erfasst: http://forum.yacy-websuche.de/sitemap.php • Updates von http://forum.yacy.de/ werden als rss-feed erfasst http://forum.yacy-websuche.de/feed.php • Das Wiki http://www.yacy-websuche.de/wiki/ wird über den Wiki-Crawler erfasst: http://www.yacy-websuche.de/wiki/ Beispiel für Crawlen einer Linkliste bei der Geocaching-Suche auf geoclub.de: • Einen Site-Crawl für eine Link-Liste starten: http://news.geocaching-portal.com/yacy-urls.php SuMa-eV-Kongress 2010 Praxis Workshop: Michael Christen Einführung in die Installation eigener Suchmaschinen-Software mit YaCy http://yacy.net Demo: Alert-Service für Nachrichten per RSS Ziel: • bestimmte Datenquellen regelmäßig in den Index ziehen • mit einer speziellen Suchabfrage einen RSS-Feed zu einem Topic als Ergebnis einer Suche erhalten Schritte: • RSS feeds mit dem RSS feed reader in YaCy importieren • jedes Feed kann individuell im Scheduler mit einer anderen Updatefrequenz versehen werden • Suchanfrage