Εκμάθηση Apache Solr: Τι είναι το Solr; Archiδομή

⚡ Έξυπνη Σύνοψη

Το Apache Solr είναι ένα λογισμικό ανοιχτού κώδικα, JavaΔιακομιστής αναζήτησης βασισμένος σε Apache Lucene. Καταχωρεί μεγάλους όγκους δεδομένων με επίκεντρο το κείμενο και επιστρέφει σχετικά αποτελέσματα μέσω REST API, προσφέροντας αναζήτηση πλήρους κειμένου, faceting, επεκτασιμότητα και αυτόνομες λειτουργίες ανάπτυξης και SolrCloud.

  • 🔍 Ορισμός Solr: Ανοιχτού κώδικα, Java διακομιστής αναζήτησης που βασίζεται στο Apache Lucene.
  • 🗂️ Ευρετηρίαση: Χρησιμοποιεί ένα ανεστραμμένο ευρετήριο για την αποθήκευση και γρήγορη ανάκτηση εγγράφων κειμένου.
  • 🌐 REST API: Επικοινωνία μέσω HTTP με JSON, XML ή CSV· όχι Java απαιτείται.
  • 🧩 Archiδομή: Αναλυτής ερωτημάτων, χειριστής αιτημάτων, συγγραφέας απαντήσεων και χειριστής ενημερώσεων.
  • Solr εναντίον Elasticsearch: Το Solr υποστηρίζει XML/CSV/JSON και διαχωρισμό shard. Και τα δύο χρησιμοποιούν Lucene.
  • ☁️ Ανάπτυξη: Αυτόνομη λειτουργία ή SolrCloud με κόμβους, θραύσματα, αντίγραφα και συστάδες.

Εκμάθηση Apache Solr

Τι είναι το 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
  • 2017: Κυκλοφόρησε το Solr 7.0, προσθέτοντας ένα πλαίσιο αυτόματης κλιμάκωσης και το JSON Facet API.
  • 2019: Κυκλοφόρησε το Solr 8.0 με υποστήριξη ένθετων εγγράφων και βελτιωμένες εκφράσεις ροής
  • 2021: Η Lucene και η Solr διαχωρίστηκαν ξανά και η Solr έγινε ένα ανεξάρτητο έργο υψηλού επιπέδου Apache.
  • 2022: Κυκλοφόρησε το Solr 9.0 ως η πρώτη έκδοση ανεξάρτητη από το Lucene, προσθέτοντας αναζήτηση διανυσμάτων και υποστήριξη Kubernetes.
  • 2026: Κυκλοφόρησε το Solr 10.0 ως η τελευταία κύρια έκδοση

Χαρακτηριστικά του Apache Solr

Ακολουθούν σημαντικά χαρακτηριστικά του Apache Solr:

  • Αυτόματη εξισορρόπηση φορτίου
  • Ανοιχτές διεπαφές βασισμένες σε πρότυπα – XML, JSON και HTTP
  • Υποστηρίζονται συστάσεις και ορθογραφικές προτάσεις
  • Υποστήριξη για αυτόματη συμπλήρωση και γεωχωρική αναζήτηση
  • Ενσωματωμένη ασφάλεια για έλεγχο ταυτότητας και εξουσιοδότηση
  • Σας επιτρέπει να πραγματοποιείτε μια πολύγλωσση αναζήτηση λέξεων-κλειδιών
  • Αυτόματη συμπλήρωση/πρόβλεψη τύπου
  • Επεξεργασία παρτίδας και ροής
  • Η κατασκευή μοντέλων μηχανικής εκμάθησης είναι εύκολη
  • Ειδικά βελτιστοποιημένο για επισκεψιμότητα ιστού μεγάλου όγκου
  • Ολοκληρωμένες διεπαφές θαυμασμού HTML
  • Υποστηρίζει τόσο τη διαμόρφωση Schema όσο και τη διαμόρφωση Schemaless
  • Πολύπλευρη αναζήτηση και φιλτράρισμα
  • Κεντρική διαμόρφωση για ολόκληρη Cluster

Βασικοί όροι που χρησιμοποιούνται στο Apache Solr

Τώρα σε αυτό το σεμινάριο μηχανής αναζήτησης Solr, θα μάθουμε για τους βασικούς όρους που χρησιμοποιούνται στο Apache Solr:

Βασικός όρος Περιγραφή
Solr Core Το Solr Core μπορεί να οριστεί ως ένα ευρετήριο κειμένων και πεδίων που προέρχονται από όλα τα έγγραφα. Μία παρουσία Solr μπορεί να έχει έναν ή πολλαπλούς Solr Cores. 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 Archiδομή
Apache Solr Archiδομή

Το Apache Solr θέτει σε κίνδυνο τα ακόλουθα στοιχεία

Απορία

Ο αναλυτής ερωτημάτων αναλύει τα ερωτήματα που πρέπει να περάσετε στο Solr. Επαληθεύει το ερώτημά σας για να ελέγξει συντακτικά σφάλματα. Μετά την ανάλυση των ερωτημάτων, μεταφράζει σε μια μορφή που είναι γνωστή από το Lucene.

Διαχειριστής αιτημάτων

Τα αιτήματα που αποστέλλονται στο Apache Solr υποβάλλονται σε επεξεργασία από τον χειριστή αιτημάτων. Το αίτημα μπορεί να είναι ένα αίτημα ερωτήματος ή αιτήματα ενημέρωσης ευρετηρίου. Πρέπει να επιλέξετε τον χειριστή αιτημάτων σύμφωνα με τις απαιτήσεις σας. Για να διαβιβάσετε ένα αίτημα στο Solr, πρέπει να αντιστοιχίσετε τον χειριστή σε ένα συγκεκριμένο URL τελικό σημείο.

Απάντηση Writer

Ένας συντάκτης απαντήσεων θα δημιουργήσει μορφοποιημένες εξόδους για ερωτήματα εισόδου. Υποστηρίζει διάφορες μορφές όπως XML, JSON, CSV.κτλ. Μπορεί να έχετε διαφορετικούς συντάκτες απαντήσεων για διαφορετικούς τύπους αιτημάτων.

Διαχειριστής ενημερώσεων

Όταν στέλνετε ένα αίτημα ενημέρωσης στο Apache Solr, αυτό εκτελείται μέσω ενός συνόλου προσθηκών, υπογραφής, καταγραφής και ευρετηρίασης. Αυτή η διαδικασία είναι γνωστή ως επεξεργαστής αιτημάτων ενημέρωσης. Ο χειριστής ενημερώσεων είναι επίσης υπεύθυνος για τροποποιήσεις όπως η προσθήκη ή η απόρριψη.ping κατατεθειμένο, κ.λπ.

Εφαρμογές Apache Solr

Εφαρμογή Χρήση
Πύλη Intranet
  • Εύκολη πρόσβαση στην αναζήτηση
  • Εκκίνηση εφαρμογής
  • Ειδοποίηση ειδήσεων και εκδηλώσεων
  • Έλεγχος ταυτότητας μεμονωμένης σύνδεσης
Ομοσπονδιακός πελάτης
  • Απλοποιημένη παρουσίαση
  • Αναζήτηση σε όλο το περιεχόμενο
  • Μόνο εξουσιοδοτημένη πρόσβαση
  • Προβολή εγγράφου
Σύνολα δεδομένων οργάνων
  • Βελτιστοποιημένο για επιστήμονες
  • Μενού που εξαρτώνται από δεδομένα
  • Εξειδικευμένα φίλτρα πλέγματος
Κανονιστικά Έγγραφα
  • Σχεδιασμένο για ερευνητές
  • Πλούσια πρόσβαση σε μεταδεδομένα
  • Εξαγωγές υπολογιστικών φύλλων
  • Προβολή επιταχυντή εγγράφων
Ενσωματωμένο στην εφαρμογή PLM
  • Προσφέρει καλύτερη εμπειρία αναζήτησης από αυτή που θα μπορούσε να προσφέρει ένα RDBMS
  • Μοντέλο ασφαλείας καθυστερημένης δέσμευσης
  • Έγγραφο ενεργειών που εκτίθενται στη γραμμή εργαλείων

Πώς να εγκαταστήσετε το Apache Solr;

Βήμα 1) Ανοίξτε τον ιστότοπο και συνεχίστε να εγγραφείτε
Πηγαίνετε σε αυτό σύνδεσμος, Κάντε κλικ στο «Συνέχεια για εγγραφή».

Εγκαταστήστε το Apache Solr

Βήμα 2) Κάντε κλικ στο Αποδοχή όρων
Στην επόμενη σελίδα, κάντε κλικ στο Αποδοχή όρων.

Εγκαταστήστε το Apache Solr

Βήμα 3) Περιμένετε για λίγο
Στη συνέχεια, Περιμένετε για κάποιο χρονικό διάστημα και στη συνέχεια, το αίτημα γίνεται αποδεκτό μετά από κάποιο χρονικό διάστημα.

Εγκαταστήστε το Apache Solr

Βήμα 4) Συνεχίστε στη Διαμόρφωση
Ανανεώστε τη σελίδα και κάντε κλικ στο "Continue to Configuration"

Εγκαταστήστε το Apache Solr

Βήμα 5) Συνεχίστε στην Εκκίνηση
Διατηρήστε τις προεπιλεγμένες ρυθμίσεις και κάντε κλικ στο «Συνέχεια στην εκκίνηση».

Εγκαταστήστε το Apache Solr

Βήμα 6) Διατηρήστε τις προεπιλεγμένες ρυθμίσεις
Στην επόμενη σελίδα, Διατηρήστε τις προεπιλεγμένες ρυθμίσεις

  • Βεβαιωθείτε ότι έχετε το αρχείο pem του κλειδιού
  • Κάντε κλικ στο "Εκκίνηση"

Εγκαταστήστε το Apache Solr

Θα δείτε αυτό το μήνυμα επιτυχίας

Εγκαταστήστε το Apache Solr

Βήμα 7) Σημειώστε το δημόσιο DNS
Στην κονσόλα EC2, σημειώστε το δημόσιο DNS της παρουσίας σας

Εγκαταστήστε το Apache Solr

Βήμα 8) Άνοιγμα παρακάτω URL
Για να αποκτήσετε πρόσβαση στο Solr, απλώς χρησιμοποιήστε το URL

http://publicdns:8983

στην περίπτωσή μας γίνεται

http://ec2-18-221-175-53.us-east-2.compute.amazonaws.com:8983

Εγκαταστήστε το Apache Solr

Σημείωση: Εάν αντιμετωπίζετε προβλήματα με την πρόσβαση στην παρουσία, αλλάξτε τους εισερχόμενους και εξερχόμενους κανόνες στην παρουσία σας για να επιτρέψετε όλη την επισκεψιμότητα, όπως φαίνεται στο παρακάτω παράδειγμα ερωτήματος Solr:

Εγκαταστήστε το Apache 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 Lucene. Το Solr είναι πλήρως ανοιχτού κώδικα, υποστηρίζει XML, CSV και JSON, επιτρέπει τον διαχωρισμό shard και είναι καλά τεκμηριωμένο. Το Elasticsearch δέχεται μόνο JSON, δεν υποστηρίζει τον διαχωρισμό shard και συχνά επιλέγεται για αναλύσεις σε πραγματικό χρόνο.

Ένας πυρήνας Solr είναι ένα ευρετήριο κειμένων και πεδίων που προέρχονται από έγγραφα, σε συνδυασμό με τη διαμόρφωσή του Solr. Μία μεμονωμένη παρουσία Solr μπορεί να φιλοξενήσει έναν ή περισσότερους πυρήνες, καθένας από τους οποίους λειτουργεί ως ανεξάρτητος δείκτης Lucene.

Το Apache Solr είναι ένα περιτύλιγμα HTTP που βασίζεται σε REST-API και περιστρέφεται γύρω από το Apache Lucene, ένα Java μηχανή αναζήτησης πλήρους κειμένου. Το Lucene παρέχει το ανεστραμμένο ευρετήριο, ενώ το Solr προσθέτει επεκτασιμότητα, διαμόρφωση, REST API και μια διεπαφή διαχειριστή.

Η Τεχνητή Νοημοσύνη μπορεί να προσθέσει σημασιολογική και διανυσματική αναζήτηση, μοντέλα εκμάθησης κατάταξης και κατανόηση ερωτημάτων επιπλέον του Solr. Αυτό εμφανίζει πιο σχετικά αποτελέσματα, χειρίζεται συνώνυμα και πρόθεση και βελτιώνει την αυτόματη συμπλήρωση και τις προτάσεις.

Ναι. Η Τεχνητή Νοημοσύνη μπορεί να προτείνει πεδία σχήματος, αναλυτές και ρυθμίσεις προσωρινής μνήμης, να ανιχνεύσει αργά ερωτήματα και να προτείνει στρατηγικές sharding και replication, helping Οι ομάδες ρυθμίζουν το Solr για απόδοση και συνάφεια με λιγότερες δοκιμές και σφάλματα.

Συνοψίστε αυτήν την ανάρτηση με: