320 likes | 410 Vues
Ιόνιο Πανεπιστήμιο Τμήμα Αρχειονομίας - Βιβλιοθηκονομίας Π.Μ.Σ. «ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΑΣ» Ακαδημαϊκό έτος: 2007 – 2008. Εργασία του μαθήματος «Ηλεκτρονική Δημοσίευση». Pazpar2: protocol and meta-search engine. Φοιτητής : Παναγιώτης Στάικος Υπεύθυνος καθηγητής : Σαράντος Καπιδάκης.
E N D
Ιόνιο ΠανεπιστήμιοΤμήμα Αρχειονομίας - ΒιβλιοθηκονομίαςΠ.Μ.Σ. «ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΑΣ»Ακαδημαϊκό έτος: 2007 – 2008 Εργασία του μαθήματος «Ηλεκτρονική Δημοσίευση» Pazpar2: protocol and meta-search engine Φοιτητής: Παναγιώτης Στάικος Υπεύθυνος καθηγητής: Σαράντος Καπιδάκης
Mετα-μηχανές αναζήτησης (1/2) • Μια μετα-μηχανή αναζήτησης είναι μια μηχανή αναζήτησης που στέλνει τις αιτήσεις του χρήστη σε άλλες μηχανές αναζήτησης και/ή βάσεις δεδομένων και συγκεντρώνοντας όλα τα αποτελέσματα τα δείχνει στον χρήστη είτε σαν μια λίστα είτε κατά σειρά πηγής προέλευσης. (http://en.wikipedia.org/wiki/Metasearch_engine) -- Pazpar2 --
Mετα-μηχανές αναζήτησης (2/2) • Πρόβλημα: Υπερπληθώρα πληροφοριακών πηγών με διαφορετικές διεπαφές και ενδεχομένως άγνωστες στους απλούς κυρίως χρήστες. • Λύση:Μετα-μηχανή αναζήτησης • Εικονικός Συλλογικός Κατάλογος • Ενιαία Διεπαφή (Ευκολία / απλότητα στη χρήση) • Εξοικονόμηση χρόνου • Ενιαίο σύνολο αποτελεσμάτων -- Pazpar2 --
User Interface Web Server Pazpar2 Meta-Search Client Configuration files target1 target2 targetN Pazpar2: Μοντέλο Λειτουργίας(1/4) -- Pazpar2 --
Browser-based client (Ajax, Javascript, Java, Flash) Ή Server-side code (PHP, Java) Pazpar2 response (xml document) user request (REST-style) Pazpar2 Meta-Search Client Configuration files Act As Server Μοντέλο Λειτουργίας (2/4) -- Pazpar2 --
Pazpar2 Meta-Search Client Configuration files Act As Client z-request other-response z-response z-request other-response z-response target1 Z39.50 target2 Z39.50 targetN other Μοντέλο Λειτουργίας (3/4) -- Pazpar2 --
User Interface Configuration files Retrieval Records (XML format) Web Server Pazpar2 Meta-Search Client Internal Records (XML format) Configuration files XSLT Source Records ( MARC (iso2709)ή XML format ) target1 target2 targetN Μοντέλο Λειτουργίας (4/4) -- Pazpar2 --
Λειτουργίες πάνω στα Δεδομένα • Source Records Internal Records • Αν είναι σε ISO2709 μετατροπή σε MARCXML. • Εφαρμογή κατάλληλου XSLT για αποθήκευση των δεδομένων που απαιτούνται (υπάρχουν XSLT για usmarc, unimarc, danmarc2, oai-dc record syntax) • Deduplication - Clustering (δημιουργία ομάδων όμοιων εγγραφών) • Internal Records Retrieval Records • Relevance Ranking (TF-IDF) • Sorting • Facet analysis -- Pazpar2 --
Υπηρεσίες Pazpar2 πρωτοκόλλου • Αρχικοποίηση • Αναζήτηση • Ανάκτηση • Φασετική ανάλυση όρων • Πληροφορίες κατά τη διάρκεια της αναζήτησης -- Pazpar2 --
Εντολή Αρχικοποίησης - “init” • Παράμετροι: • clear:αναίρεση επιλεγμένων βάσεων δεδομένων. • settings:νέες επιλογές για το τρέχων session. • Παράδειγμα • Request http://myportal/pazpar2/search.pz2?command=init • Response <init> <status>OK</status> <session>1</session> <protocol>1</protocol> </init> -- Pazpar2 --
Εντολή Ανανέωσης – “ping” • Παράμετροι • session: το id του ενεργού session. • Παράδειγμα • Request http://myportal/pazpar2/search.pz2?command=ping&session=1 • Response <ping> <status>OK</status> </ping> -- Pazpar2 --
Εντολή Αναζήτησης – “search” • Παράμετροι • session: το id του ενεργού session. • query: το ερώτημα σε μορφή CCL • filter: επιλογή βάσεων δεδομένων για τη συγκεκριμένη αναζήτηση (προαιρετική παράμετρος) • Παράδειγμα • Request http://myportal/search.pz2?command=search&session=1&query=athens+greece • Response <search> <status>OK</status> </search> -- Pazpar2 --
Εντολή εμφάνισης πληροφοριών της ενεργής αναζήτησης – “stat” • Παράμετροι • session: το id του ενεργού session. • Παράδειγμα • Request http://myportal/search.pz2?command=stat&session=1 • Response <stat> <activeclients>0</activeclients> <hits>30</hits> <records>30</records> <clients>2</clients> <unconnected>0</unconnected> <connecting>0</connecting> <initializing>0</initializing> <searching>0</searching> <presenting>0</presenting> <idle>2</idle> <failed>0</failed> <error>0</error> </stat> -- Pazpar2 --
Εντολή εμφάνισης πληροφοριών των ενεργών targets – “bytarget” • Παράμετροι • id: το id του ενεργού session. • Παράδειγμα • Request http://myportal/search.pz2?command=bytarget&id=1 • Response <bytarget> <status>OK</status> <target> <id>z3950.loc.gov/voyager/</id> <hits>10000</hits> <diagnostic>0</diagnostic> <records>65</records> <state>Client_Presenting</state> </target> </bytarget> -- Pazpar2 --
Εντολή ανάκτησης εγγραφών - “show” (1/2) • Παράμετροι • session: το id του ενεργού session. • start: πρώτο record εμφάνισης (πρώτο θεωρείται το 0). • num: αριθμός εγγραφών προς εμφάνιση (Εξ ορισμού 20). • block: αναμένει μέχρι να υπάρξουν records για εμφάνιση (τιμή 1). • sort: κριτήρια ταξινόμησης που θα ισχύουν μόνο στην τρέχουσα εμφάνιση. • Παράδειγμα • Request http://myportal/search.pz2?command=show&session=1&start=1 -- Pazpar2 --
Εντολή ανάκτησης εγγραφών - “show” (2/2) • Response • <show> • <status>OK</status> • <activeclients>0</activeclients> • <merged>175</merged> • <total>374</total> • <start>0</start> • <num>2</num> • <hit> • …………………….. • </hit> • <hit> • <md-date>1997</md-date> • <md-title>Kult und Kultbauten auf der Akropolis</md-title> • <md-title-remainder>internationales symposion vom 7. bis 9. Juli 1995 in Berlin</md-title-remainder> • <md-title-responsibility>herausgegeben von Wolfram Hoepfner</md-title-responsibility> • <md-medium>book</md-medium> • <location id="library.ox.ac.uk:210/ADVANCE" name="Oxford University"/> • <location id="z3950.loc.gov:7090/voyager" name="Library of Congress"/> • <count>2</count> • <recid>title kult und kultbauten auf der akropolis author medium book</recid> • </hit> • </show> -- Pazpar2 --
Εντολή ανάκτησης εγγραφής - “record” (1/3) • Παράμετροι • session: το id του ενεργού session. • id: Το record ID όπως αυτό παρέχεται από την εντολή “show”. • offset: Η παράμετρος είναι προαιρετική. Όταν δίνεται σημαίνει ότι το record θα επιστραφεί σε raw format (εμφάνιση μόνο των δεδομένων και όχι ετικετών). • syntax: Η παράμετρος είναι προαιρετική. Όταν δίνεται καθορίζει το ‘record syntax’ στην περίπτωση που έχει ζητηθεί raw. • esn: Η παράμετρος είναι προαιρετική. Όταν δίνεται καθορίζει το ‘element set name’ στην περίπτωση που έχει ζητηθεί raw format • binary: Η παράμετρος είναι προαιρετική. Όταν δίνεται σημαίνει ότι το record που έχει ζητηθεί σε raw format δεν θα μετατραπεί σε XML αλλά θα εμφανιστεί ως ένα stream από bytes. -- Pazpar2 --
Εντολή ανάκτησης εγγραφής - “record” (2/3) • Παράδειγμα • Request http://myportal/search.pz2?command=record&session=1&id=title kult und kultbauten auf der akropolis author medium book -- Pazpar2 --
Εντολή ανάκτησης εγγραφής - “record” (3/3) <record> <recid> title kult und kultbauten auf der akropolis author medium book </recid> <md-lccn>97216365</md-lccn> <md-date>1997</md-date> <md-title>Kult und Kultbauten auf der Akropolis</md-title> <md-title-remainder> internationales symposion vom 7. bis 9. Juli 1995 in Berlin </md-title-remainder> <md-title-responsibility>herausgegeben von Wolfram Hoepfner</md-title-responsibility> <md-medium>book</md-medium> <md-description>Includes bibliographical references</md-description> <location id="library.ox.ac.uk:210/ADVANCE" name="Oxford University"> <md-id>UkOxUb12776268</md-id> ……………................... </location> <location id="z3950.loc.gov:7090/voyager" name="Library of Congress"> <md-id>1193316</md-id> …………………………………. </location> </record> -- Pazpar2 --
Εντολή ανάκτησης όρων - “termlist” (1/2) • Παράμετροι • session: το id του ενεργού session. • name: comma separated λίστα ονομάτων (εξ ορισμού subject) • Παράδειγμα • Request http://myportal/search.pz2?command=termlist&session=1&name=author,subject -- Pazpar2 --
Εντολή ανάκτησης όρων - “termlist” (2/2) Response <termlist> <activeclients>3</activeclients> <list name="author"> <term> <name>Donald Knuth</name> <frequency>10</frequency> </term> <term> <name>Robert Pirsig</name> <frequency>2</frequency> </term> </list> <list name="subject"> <term> <name>Computer programming</name> <frequency>10</frequency> </term> </list> </termlist> -- Pazpar2 --
Εντολή παραμετροποίησης ενεργού session - “settings” • Παράμετροι • session:το id του ενεργού session. • name[target]=value π.χ. pz:allow[z3950.loc.gov:7090/voyager]=1 -- Pazpar2 --
Pazpar2 Test Interface (1/3) -- Pazpar2 --
Pazpar2 Test Interface (3/3) -- Pazpar2 --
Pazpar2 Test Interface (3/3) -- Pazpar2 --
Χαρακτηριστικά / Πλεονεκτήματα Pazpar2 (1/5) • Parallel / Asynchronous search • σε πολλές βάσεις δεδομένων • πολλοί χρήστες ταυτόχρονα • με άμεση διαθεσιμότητα αποτελεσμάτων • Data Independent • ISO2709 ή XML format • User Interface Independent • Web-service API • Ενεργεί και ως HTTP Server -- Pazpar2 --
Χαρακτηριστικά / Πλεονεκτήματα Pazpar2 (2/5) • Unicode υποστήριξη • XML messages (request/response) • Παραμετροποίησηστη δημιουργία των Internal Records (XSLT) • Παραμετροποίησηστη δημιουργία των Retrieval Records (configuration files) -- Pazpar2 --
Χαρακτηριστικά / Πλεονεκτήματα Pazpar2 (3/5) • Windows – Linux διανομές • Λογισμικό ανοικτού κώδικα (GPL License v2) • Στηρίζεται σε λογισμικά ανοικτού κώδικα (YAZ, ICU, XML, XSLT κλπ) • Υποστηρίζεται από την IndexData (www.indexdata.com) που παρέχει και εξειδικευμένες λύσεις -- Pazpar2 --
Χαρακτηριστικά / Πλεονεκτήματα Pazpar2 (4/5) • Εύρεση διπλότυπων εγγραφών (Deduplication) – Δημιουργία Ομάδων (Clustering) • Κατάταξη σχετικότητας (Relevance Ranking) • Ταξινόμηση (Sorting) • Φασετική Ανάλυση/παρουσίαση όρων (Facet Analysis) -- Pazpar2 --
Χαρακτηριστικά / Πλεονεκτήματα Pazpar2 (5/5) • Το πακέτο συνοδεύεται από ένα απλό αλλά λειτουργικό Ajax-based client. • Άρα δημιουργία ενός εικονικού συλλογικού καταλόγου με μόνη απαίτηση την εγκατάσταση και την παραμετροποίηση. • Εμφάνιση της πηγής εγγραφής και σύνδεσμος για τη μετάβαση. -- Pazpar2 --
Μειονεκτήματα - Προβληματισμοί (1/2) • Υποστηρίζει προς το παρόν μόνο Z39.50 πηγές • Απαιτεί αρκετή τεχνογνωσία για προσθήκες – αλλαγές • Απλοϊκή και σε ένα πέρασμα εύρεση διπλότυπων (σύγκριση πεδίων π.χ. title) • Απλοϊκό σχήμα αποθήκευσης εσωτερικών εγγραφών -- Pazpar2 --
Μειονεκτήματα - Προβληματισμοί (2/2) • Είναι μετα-μηχανή αναζήτησης οπότε δεν έχει την ποιότητα μιας μηχανής αναζήτησης. • Γενικά προβλήματα ομογενοποίησης δεδομένων -- Pazpar2 --