סולר (מנוע חיפוש)

סולר (באנגלית: Solr) הוא מנוע חיפוש המבוסס על Lucene, בקוד פתוח, שנכתב בג'אווה. התכונות העיקריות שלו כוללות חיפוש טקסט מלא, הדגשת התאמות, חיפוש קבוצות, אינדוקס בזמן אמת, חלוקות דינמיות, שילוב בסיסי נתונים, תכונות NoSQL <ref></ref> וטיפול מסמך עשיר (למשל, Word, PDF). בעזרת מתן חיפוש מבוזר ושכפול אינדקס, Solr נועד להרחבה והתמודדות עם תקלות.<ref></ref> סולר נמצאת בשימוש נרחב לצרכים שונים של חיפוש וניתוח מידע בארגוניים ויש לה קהילת פיתוח פעילה וגרסאות קבועות. הקוד משוחרר תחת רישיון אפאצ'י.

סולר פועל כשרת חיפוש טקסט מלא ועצמאי. הוא משתמש בספריית החיפוש של לוסין אשר בבסיסה מיועדת לאינדקוס וחיפוש בטקסט מלא, ויש לה ממשקי API כמו HTTP / XML ו-JSON מסוג REST שהופכים אותה לשמישה ביותר בשפות התכנות הפופולריות ביותר. התצורה החיצונית של Solr מאפשרת להתאים אותה לסוגים רבים של יישומים ללא קידוד Java, והיא כוללת ארכיטקטורת תוספים שתומכת בהתאמה אישית מתקדמת יותר.

אפאצ'י סולר פותח בצורה פתוחה ושיתופית על ידי פרויקט אפאצ'י סולר בקרן התוכנה אפאצ'י.

== היסטוריה ==
בשנת 2004, סולר נוצרה על ידי יוֹניקֹ סילי ב-CNET Networks כפרויקט פנימי להוספת יכולת חיפוש לאתר החברה.

בינואר 2006, CNET Networks החליטה לפרסם את קוד המקור בגלוי על ידי תרומתו לקרן התוכנה אפאצ'י.<ref></ref> כמו כל פרויקט חדש של אפאצ'י, הוא נכנס לתקופת דגירה שבה התמקדו בפתרון בעיות ארגוניות, משפטיות וכלכליות.

בינואר 2007 עברה Solr ממעמד של דגירה למעמד של פרויקט עצמאי (TLP - Top-Level Project) וצמחה בהתמדה עם תכונות מצטברות, ובכך משכה משתמשים, תורמים ומחויבים. על אף היותו יחסית חדש כפרויקט ציבורי, סולר הפעיל כמה אתרי אינטרנט בעלי תנועה רבה.<ref></ref>

בספטמבר 2008 שוחרר סולר 1.3 כולל יכולות חיפוש מבוזרות ושיפור ביצועים בקרב יכולות רבות אחרות.<ref></ref>

בינואר 2009 הצטרפו יוניק סילי יחד עם גרנט אינגרסול ואריק האצ'ר ל-Lucidworks (לשעבר Lucid Imagination), החברה הראשונה המספקת תמיכה והדרכה מסחרית לטכנולוגיות החיפוש של אפאצ'י סולר. מאז, הצעות התמיכה סביב סולר היו רבות.<ref></ref>

בנובמבר 2009 שוחרר סולר 1.4. גרסה זו הציגה שיפורים באינדקס, בחיפוש ובפנים לצד שיפורים רבים אחרים כגון עיבוד מסמכים עשיר (PDF, Word, HTML), קיבוץ אשכול תוצאות חיפוש המבוסס על Carrot2 וגם שיפור שילוב מסדי נתונים. המהדורה כוללת גם תוספים רבים נוספים.<ref></ref>

בחודש מרץ 2010, לוסין ופרויקטי Solr התמזגו.<ref></ref> ההורדות הנפרדות המשיכו, אך המוצרים פותחו כעת במשותף על ידי קבוצה אחת של מחויבים.

בשנת 2011 שונתה תוכנית מספרי הגרסאות של Solr כך שתתאים לזו של לוסין. לאחר סולר 1.4, המהדורה הבאה של סול נקראה 3.1, על מנת לשמור על סולר ולוסין באותו מספר גרסה.<ref>[http://wiki.apache.org/solr/Solr3.1 Solr3.1 - Solr Wiki]. </ref>

באוקטובר 2012 שוחררה גרסת 4.0 של Solr, כולל יכולת SolrCloud החדשה.<ref>[https://lucene.apache.org/solr/solrnews.html Apache Lucene]. </ref> 2013 ובשנת 2014 הוצגו מספר גרסאות סולר בקו 4, שהגדילו בהתמדה את מערך היכולות ושיפרו את האמינות.

בפברואר 2015 שוחרר סולר 5.0,<ref></ref> המהדורה הראשונה בה נארזה סולר כיישום עצמאי,<ref></ref> והפסיקה את התמיכה הרשמית בפריסת סולר כקובץ WAR (פורמט קבצים). Solr 5.3 הציגה אימות והסמכה מובנית.<ref></ref>

באפריל 2016 שוחרר סול 6.0.<ref></ref> נוספה תמיכה לביצוע שאילתות SQL מקבילות ברחבי SolrCloud. כולל תמיכה ב-StreamExpression ומנהל JDBC חדש עבור ממשק SQL.

בספטמבר 2017 סולר 7.0 שוחרר.<ref></ref> מהדורה זו, בין היתר, הוסיפה תמיכה במספר סוגי העתקים (רפליקות), הרחבה אוטומטית ועוד.

במרץ 2019 שוחרר Solr 8.0 כולל תיקוני באגים ועדכוני רכיבים רבים.<ref></ref> שרתי Solr יכולים להאזין ולהגיש בקשות HTTP / 2. יש לשים לב שכברירת מחדל, בקשות פנימיות נשלחות גם באמצעות HTTP / 2. יתר על כן, כניסה של ממשק משתמש למנהל הוספה עם תמיכה ב-BasicAuth ו-Kerberos. ותכנון ביטויי מתמטיקה באפצ'י זפלין הפכו לאפשריים.

בנובמבר 2020 תרמה החברה בלומברג את מפעיל סולר לפרויקט לוסין / סולר. מפעיל סולר מסייע בפריסה ובהפעלת סולר ב-Kubernetes.

בפברואר 2021 הוקמה סולר כפרויקט אפאצ'י נפרד (TLP), כך שכיום על אף התלות שיש לסולר בלוסין, שניהם בפיתוח וניהול נפרד.

== פעולות ==
על מנת לחפש מסמך, אפאצ'י סולר מבצע את הפעולות הבאות ברצף:
# אינדוקס: קודם כל, הוא ממיר את המסמכים לפורמט קריא למכונה בפעולה שנקראת אינדוקס.
# שאילתות: הבנת תנאי השאילתה שנשאל על ידי המשתמש. תנאים אלה יכולים להיות תמונות או מילות מפתח, למשל.
# מיפוי: סולר ממפה את שאילתת המשתמש למסמכים המאוחסנים במסד הנתונים כדי למצוא את התוצאה המתאימה.
# דירוג התוצאה: ברגע שהמנוע מחפש במסמכים שנוספו לאינדקס, הוא מדרג את התפוקות לפי הרלוונטיות שלהם.

== קהילה ==
אנשים פרטיים וחברות תורמים יכולות חדשות למנוע החיפוש ומתקנים באגים שהתגלו בו.<ref></ref><ref></ref><ref></ref><ref></ref><ref></ref>

== שילוב סולר ==
Solr משולבת כחיפוש המובנה ביישומים רבים כגון מערכות ניהול תוכן ומערכות ניהול תוכן ארגוני. הפצות האדופ מ-Cloudera,<ref></ref> הורטונוורקס<ref></ref> ו-MapR מקבצות את סולר כמנוע החיפוש עבור המוצרים שלהם המשווקים ל-Big data. DataStax DSE משלב את Solr כמנוע חיפוש עם קסנדרה.<ref></ref> Solr נתמכת כנקודת סיום במסגרות עיבוד נתונים שונות ומסגרות שילוב ארגוני.

סולר חשפה ממשקי API, HTTP ו-REST לתעשייה עם תמיכה ב-XML ו-JSON, ותשתלב עם כל מערכת או שפת תכנות שתומכת בתקנים אלה. לנוחות השימוש קיימות גם ספריות לקוח עבור Java, C #, PHP, Python, Ruby ושפות התכנות הפופולריות ביותר.<ref></ref>

== קישורים חיצוניים ==

* 
* [https://github.com/idealista/solrcloud_role תפקיד ראוי להתקנת SolrCloud בסביבת דביאן]

==הערות שוליים==

קטגוריה:NoSQL
קטגוריה:מנועי חיפוש