Εκμάθηση Apache Solr: Τι είναι το Solr; Archiκατασκευή και εγκατάσταση
Τι είναι το Apache Solr;
Apache Solr είναι μια πλατφόρμα διακομιστή αναζήτησης ανοιχτού κώδικα γραμμένη σε Java γλώσσα από το ίδρυμα λογισμικού Apache. Είναι εξαιρετικά επεκτάσιμο και έτοιμο να αναπτύξει μηχανή αναζήτησης για να χειριστεί μεγάλο όγκο δεδομένων με επίκεντρο το κείμενο. Ο σκοπός της χρήσης του Apache Solr είναι η ευρετηρίαση και η αναζήτηση μεγάλου όγκου περιεχομένου ιστού και η παροχή σχετικού περιεχομένου με βάση το ερώτημα αναζήτησης.
Το Apache Solr είναι ένα περιτύλιγμα HTTP που βασίζεται σε REST-API γύρω από τη μηχανή αναζήτησης πλήρους κειμένου που ονομάζεται Apache Lucene. Ένα ανεστραμμένο ευρετήριο είναι μια λίστα λέξεων όπου κάθε καταχώρηση λέξης συνδέεται με τα έγγραφα στα οποία είναι αποθηκευμένο. Με αυτόν τον τρόπο λαμβάνονται όλα τα έγγραφα για το ερώτημα αναζήτησης "guru99" με απλή λειτουργία "λήψης".
Ιστορία του Apache Solr
- 1999: Ο Doug Cutting δημοσίευσε το Lucene
- 2004: Το Solr αναπτύχθηκε στο CNET από τον Yonik Seeley ως εσωτερικό έργο της εταιρείας
- 2006: Το CNET δημοσιεύει τον πηγαίο κώδικα δωρίζοντάς τον στο λογισμικό Apache Foundation
- 2008: Κυκλοφόρησε το Solr 1.3 με βελτιωμένες δυνατότητες αναζήτησης και βελτιώσεις απόδοσης
- 2010: Συγχώνευση Lucene και Solr
- 2012: Κυκλοφόρησε η έκδοση 4.0 του Solr, με νέα δυνατότητα Solr Cloud
- 2016: Κυκλοφόρησε το Solr 6.0 το οποίο προσφέρει υποστήριξη για την εκτέλεση παράλληλων ερωτημάτων SQL
Χαρακτηριστικά του Apache Solr
Ακολουθούν σημαντικά χαρακτηριστικά του Apache Solr:
- Αυτόματη εξισορρόπηση φορτίου
- Ανοιχτές διεπαφές βασισμένες σε πρότυπα – XML, JSON και HTTP
- Υποστηρίζονται συστάσεις και ορθογραφικές προτάσεις
- Υποστήριξη για αυτόματη συμπλήρωση και γεωχωρική αναζήτηση
- Ενσωματωμένη ασφάλεια για έλεγχο ταυτότητας και εξουσιοδότηση
- Σας επιτρέπει να πραγματοποιείτε μια πολύγλωσση αναζήτηση λέξεων-κλειδιών
- Αυτόματη συμπλήρωση/πρόβλεψη τύπου
- Επεξεργασία παρτίδας και ροής
- Η κατασκευή μοντέλων μηχανικής εκμάθησης είναι εύκολη
- Ειδικά βελτιστοποιημένο για επισκεψιμότητα ιστού μεγάλου όγκου
- Ολοκληρωμένες διεπαφές θαυμασμού HTML
- Υποστηρίζει τόσο τη διαμόρφωση Schema όσο και τη διαμόρφωση Schemaless
- Πολύπλευρη αναζήτηση και φιλτράρισμα
- Κεντρική διαμόρφωση για ολόκληρη Cluster
Βασικοί όροι που χρησιμοποιούνται στο Apache Solr
Τώρα σε αυτό το σεμινάριο μηχανής αναζήτησης Solr, θα μάθουμε για τους βασικούς όρους που χρησιμοποιούνται στο Apache Solr:
Βασικός όρος | Descriptιόν |
---|---|
Solr Core | Το Solr Core μπορεί να οριστεί ως ένα ευρετήριο κειμένων και πεδίων που προέρχονται από όλα τα έγγραφα. Μια παρουσία Solr μπορεί να έχει έναν ή πολλούς πυρήνες Solr.
Core = μια εμφάνιση της διαμόρφωσης Lucene Index + Solr |
Παράδειγμα Solr | Το Solr Instance είναι ένα παράδειγμα Solr που τρέχει στο Java Εικονική μηχανή (FMV). Σε αυτόνομη λειτουργία, προσφέρει μόνο μία παρουσία, ενώ στη λειτουργία cloud μπορείτε να έχετε μία ή περισσότερες παρουσίες. |
Ευρετηρίαση | Η ευρετηρίαση είναι μια μέθοδος για την προσθήκη του περιεχομένου ενός εγγράφου στο Ευρετήριο Solr. Το Apache Solr χρησιμοποιεί την τεχνική Apache Lucene Inverted Index. |
Έγγραφο | Είναι μια ομάδα πεδίων και των τιμών τους. Ένα έγγραφο είναι μια βασική μονάδα δεδομένων που αποθηκεύεται στον Apache Core. Ένας πυρήνας Apache μπορεί να περιέχει ένα ή περισσότερα Έγγραφα. |
Πεδίο | Το πεδίο είναι ένα ζεύγος κλειδιού-τιμής που αποθηκεύει τα πραγματικά δεδομένα σε ένα Έγγραφο. Το κλειδί καθορίζει το όνομα και την τιμή του πεδίου που περιέχει τα δεδομένα πεδίου. Ένα έγγραφο μπορεί να έχει ένα ή περισσότερα πεδία. Χρησιμοποιείται από τον Apache Solr για την ευρετηρίαση του περιεχομένου του εγγράφου. |
Ξεκούραστα API | Για να επικοινωνήσετε με τον Solr, δεν είναι απαραίτητο να έχετε χρησιμοποιήσει Java προγραμματισμός. Αντίθετα, το Apache Solr παρέχει ξεκούραστες υπηρεσίες να επικοινωνήσει μαζί του. Μπορείτε να στείλετε έγγραφα και να λάβετε αποτελέσματα σε διάφορες μορφές αρχείων όπως JSON, XML και CSV. |
Αναζήτηση πλήρους κειμένου | Το Solr προσφέρει δυνατότητες αναζήτησης πλήρους κειμένου, όπως μάρκες, φράσεις, ορθογραφικός έλεγχος, αυτόματη συμπλήρωση, χαρακτήρες μπαλαντέρ κ.λπ. |
Διεπαφή διαχειριστή | Το Solr προσφέρει ένα εύχρηστο, φιλικό προς το χρήστη, με δυνατότητες, διεπαφή χρήστη. Χρησιμοποιώντας τη διεπαφή, μπορείτε να εκτελέσετε εργασίες όπως διαχείριση αρχείων καταγραφής, προσθήκη, διαγραφή, ενημέρωση και αναζήτηση εγγράφων. |
Κείμενο-κεντρικό και ταξινομημένο κατά συνάφεια | Το Apache Solr χρησιμοποιείται για την αναζήτηση εγγράφων κειμένου και τα αποτελέσματα παραδίδονται σύμφωνα με το ερώτημα του χρήστη. |
Κόμβος | Στο σύννεφο Solr, κάθε μεμονωμένη εμφάνιση είναι γνωστή ως κόμβος. |
Cluster | Ένα σύμπλεγμα είναι μια συλλογή κόμβων. |
Συλλογή | Ένα σύμπλεγμα έχει ένα λογικό ευρετήριο που ονομάζεται επίσης συλλογή. |
Θραύσμα αγγείου | Είναι μια μικρή περιοχή της συλλογής που προσφέρει μεμονωμένα ή πολλαπλά αντίγραφα του ευρετηρίου. |
Replica | Ένα αντίγραφο είναι ένα αντίγραφο του θραύσματος που εκτελείται σε έναν κόμβο. |
Ηγέτης | Είναι ένα αντίγραφο του θραύσματος, το οποίο στέλνει τα αιτήματα του Solr Cloud για τα υπόλοιπα αντίγραφα. |
Apache Solr Archiδομή
Τώρα σε αυτό το σεμινάριο αναζήτησης Solr, ας μάθουμε για το Apache Solr Archiδομή:
Το Apache Solr θέτει σε κίνδυνο τα ακόλουθα στοιχεία
Απορία
Ο αναλυτής ερωτημάτων αναλύει τα ερωτήματα που πρέπει να περάσετε στον Solr. Επαληθεύει το ερώτημά σας για να ελέγξει τα συντακτικά λάθη. Μετά την ανάλυση των ερωτημάτων, μεταφράζεται σε μια μορφή που είναι γνωστή από τον Lucene.
Διαχειριστής αιτημάτων
Τα αιτήματα που αποστέλλονται στον Apache Solr επεξεργάζονται από τον χειριστή αιτημάτων. Το αίτημα μπορεί να είναι αίτημα ερωτήματος ή αιτήματα ενημέρωσης ευρετηρίου. Πρέπει να επιλέξετε τον χειριστή αιτημάτων σύμφωνα με τις απαιτήσεις σας. Για να περάσετε ένα αίτημα στο Solr, πρέπει να αντιστοιχίσετε το πρόγραμμα χειρισμού σε ένα συγκεκριμένο τελικό σημείο διεύθυνσης URL.
Συγγραφέας απαντήσεων
Ένας συντάκτης απαντήσεων θα δημιουργήσει μορφοποιημένες εξόδους για ερωτήματα εισόδου. Υποστηρίζει διάφορες μορφές όπως XML, JSON, CSV.κτλ. Μπορεί να έχετε διαφορετικούς συντάκτες απαντήσεων για διαφορετικούς τύπους αιτημάτων.
Διαχειριστής ενημερώσεων
Όταν στέλνετε ένα αίτημα ενημέρωσης στο Apache Solr, αυτό εκτελείται μέσω ενός συνόλου προσθηκών, υπογραφής, καταγραφής, δημιουργίας ευρετηρίου. Αυτή η διαδικασία είναι γνωστή ως επεξεργαστής αιτήματος ενημέρωσης. Ο χειριστής ενημερώσεων είναι επίσης υπεύθυνος για τροποποιήσεις όπως η προσθήκη ή η απόθεση αρχείου κ.λπ.
Εφαρμογές Apache Solr
Εφαρμογή | Χρήση |
---|---|
Πύλη Intranet |
|
Ομοσπονδιακός πελάτης |
|
Σύνολα δεδομένων οργάνων |
|
Κανονιστικά Έγγραφα |
|
Ενσωματωμένο στην εφαρμογή PLM |
|
Πώς να εγκαταστήσετε το Apache Solr;
Βήμα 1) Ανοίξτε τον ιστότοπο και συνεχίστε να εγγραφείτε
Πηγαίνετε σε αυτό σύνδεσμος, Κάντε κλικ στο «Συνέχεια για εγγραφή».
Βήμα 2) Κάντε κλικ στο Αποδοχή όρων
Στην επόμενη σελίδα, κάντε κλικ στο Αποδοχή όρων.
Βήμα 3) Περιμένετε για λίγο
Στη συνέχεια, Περιμένετε για κάποιο χρονικό διάστημα και στη συνέχεια, το αίτημα γίνεται αποδεκτό μετά από κάποιο χρονικό διάστημα.
Βήμα 4) Συνεχίστε στη Διαμόρφωση
Ανανεώστε τη σελίδα και κάντε κλικ στο "Continue to Configuration"
Βήμα 5) Συνεχίστε στην Εκκίνηση
Διατηρήστε τις προεπιλεγμένες ρυθμίσεις και κάντε κλικ στο «Συνέχεια στην εκκίνηση».
Βήμα 6) Διατηρήστε τις προεπιλεγμένες ρυθμίσεις
Στην επόμενη σελίδα, Διατηρήστε τις προεπιλεγμένες ρυθμίσεις
- Βεβαιωθείτε ότι έχετε το αρχείο pem του κλειδιού
- Κάντε κλικ στο "Εκκίνηση"
Θα δείτε αυτό το μήνυμα επιτυχίας
Βήμα 7) Σημειώστε το δημόσιο DNS
Στην κονσόλα EC2, σημειώστε το δημόσιο DNS της παρουσίας σας
Βήμα 8) Ανοίξτε το παρακάτω URL
Για να αποκτήσετε πρόσβαση στο Solr, χρησιμοποιήστε απλώς τη διεύθυνση URL
http://publicdns:8983
στην περίπτωσή μας γίνεται
http://ec2-18-221-175-53.us-east-2.compute.amazonaws.com:8983
Σημείωση: Εάν αντιμετωπίζετε προβλήματα με την πρόσβαση στην παρουσία, αλλάξτε τους εισερχόμενους και εξερχόμενους κανόνες στην παρουσία σας για να επιτρέψετε όλη την επισκεψιμότητα, όπως φαίνεται στο παρακάτω παράδειγμα ερωτήματος Solr:
Elasticsearch Vs. Apache Solr
παράμετροι | Apache Solr | Ελαστική αναζήτηση |
---|---|---|
Φύση | Είναι ένα έργο ανοιχτού κώδικα. | Δεν είναι έργο ανοιχτού κώδικα. |
Στατική κατάσταση | Στατική στο shema.xml | Στατική στο elasticsearch.yml |
Μορφή | XML, CSV, JSON | Μόνο JSON |
Περιεχόμενα | Μπορεί να επαναφορτωθεί κατά τη διάρκεια του χρόνου εκτέλεσης με επαναφόρτωση συλλογής/πυρήνα | Καθορίζεται κατά τη δημιουργία ευρετηρίου/τύπου με κλήση REST |
Απόδειξη με έγγραφα | Είναι καλά τεκμηριωμένο. | Είναι κακώς τεκμηριωμένο. |
Σχισίματα | Πιθανές | Αδύνατον |
Πλεονεκτήματα του Apache Solr
- Σας βοηθά να μειώσετε το χρόνο που απαιτείται για τον εντοπισμό των πληροφοριών
- Είναι γρήγορη, απλή, ισχυρή και ευέλικτη μηχανή αναζήτησης
- Σας βοηθά να κάνετε τα προϊόντα και τις υπηρεσίες σας πιο προσιτά
- Αυξήστε τις δαπάνες των πελατών σε μια διαδικτυακή εφαρμογή
- Σας βοηθά να βελτιώσετε την εμπειρία χρήστη στην εφαρμογή Ιστού για να αυξήσετε τα έσοδα και τα κέρδη
- Ολοκληρωμένη διεπαφή διαχείρισης βασισμένη σε HTML
- Ευέλικτο και προσαρμόσιμο με διαμόρφωση XML
- Επεκτάσιμο πρόσθετο Archiδομή
- Ιδιαίτερα επεκτάσιμη, στιβαρή, ανεκτική σε σφάλματα μηχανή αναζήτησης
- Υποστηρίζει κατανεμημένα, σκίαση, αναπαραγωγή, Clustering και Multi-Node Archiδομή
Μειονεκτήματα του Apache Solr
- Δεν είναι συμβατό με ACID Data Store
- Δεν είναι χρήσιμο ως κύριος χώρος αποθήκευσης δεδομένων. Χρήσιμο μόνο ως δευτερεύον χώρο αποθήκευσης δεδομένων
- Το Not προσφέρει υποστήριξη για συναλλαγές και κατανεμημένες συναλλαγές
- Δεν υποστηρίζονται συνδέσεις και σύνθετα ερωτήματα
- Δεν είναι βέλτιστο για κανονικοποιημένα δεδομένα
Σύνοψη
- Το Apache Solr είναι ανοιχτού κώδικα REST-API βασισμένος διακομιστής αναζήτησης
- Το Apache Solr αναπτύχθηκε στο CNET από τον Yonik Seeley ως ανταλλακτικό έργο της εταιρείας
- Το Apache Solr προσφέρει λειτουργίες όπως η αυτόματη συμπλήρωση και η γεωχωρική αναζήτηση
- Solr Core, Solr Instance, Indexing, Document, Restful APIs, Full text Search, Admin Interface, κ.λπ. είναι ορισμένοι βασικοί όροι που χρησιμοποιούνται στο Apache Solr
- Το Query, το Request handler, το Request writer και οι updated handlers είναι μερικά από τα σημαντικά στοιχεία του Apache Solr
- Η πύλη Intranet, ο ομοσπονδιακός πελάτης, τα σύνολα δεδομένων οργάνων, τα κανονιστικά έγγραφα, τα ενσωματωμένα στην εφαρμογή PLM είναι χρήσιμες εφαρμογές Apache Solr
- Το Apache Solr είναι καλά τεκμηριωμένο σε σύγκριση με την ελαστική αναζήτηση που είναι κακώς τεκμηριωμένη
- Το μεγαλύτερο πλεονέκτημα του Apache Solr είναι ότι σας βοηθά να μειώσετε τον χρόνο που απαιτείται για τον εντοπισμό των πληροφοριών
- Το κύριο μειονέκτημα αυτής της εφαρμογής Δεν είναι συμβατό με ACID Data Store