@darkheir: Lucene และ Solr เป็น 2 โครงการ Apache ที่สร้างขึ้นเพื่อทำงานร่วมกันฉันไม่เข้าใจว่าเป้าหมายของแต่ละโครงการคืออะไร
1) Solr ใช้ Lucene ใต้ฝากระโปรง Lucene ไม่มีเงื่อนงำเกี่ยวกับ Solr API
2) Lucene เป็นกรอบเครื่องมือค้นหาที่ทรงพลังซึ่งช่วยให้เราเพิ่มความสามารถในการค้นหาให้กับแอปพลิเคชันของเรา มันเปิดเผย API ที่ใช้งานง่ายในขณะที่ซ่อนการดำเนินการที่ซับซ้อนที่เกี่ยวข้องกับการค้นหาทั้งหมด แอปพลิเคชันใด ๆ สามารถใช้ไลบรารีนี้ไม่ใช่แค่ Solr
3) Solr สร้างขึ้นรอบ ๆ Lucene มันไม่ได้เป็นเพียง http-wrapper รอบ ๆ Lucene แต่เป็นที่ทราบกันดีว่ามีการเพิ่มคลังแสงให้กับ Luceneมากขึ้น Solr พร้อมใช้งานทันที มันเป็นเว็บแอปพลิเคชั่นที่นำเสนอโครงสร้างพื้นฐานที่เกี่ยวข้องและคุณสมบัติอื่น ๆ อีกมากมายนอกเหนือจากสิ่งที่ Lucene นำเสนอ
@darkheir: Lucene ใช้เพื่อสร้างดัชนีการค้นหาและ Solr ใช้ดัชนีนี้เพื่อทำการค้นหา ฉันถูกหรือว่าเป็นแนวทางที่แตกต่างอย่างสิ้นเชิง?
4) Lucene ไม่เพียงแค่สร้างดัชนีเพื่อการบริโภคโดย Solr Lucene จัดการการดำเนินการที่เกี่ยวข้องกับการค้นหาทั้งหมด แอปพลิเคชันใด ๆ สามารถใช้เฟรมเวิร์ก Lucene
ตัวอย่างเช่น Solr, Elastic Search, LinkedIn (ใช่ภายใต้ประทุน) ฯลฯ
ตรวจสอบบทความนี้: Lucene vs Solr
อัปเดต (6/18/14)
เมื่อใดที่ใช้ Lucene
- คุณเป็นวิศวกรการค้นหาและ
- คุณเป็นโปรแกรมเมอร์และ
- คุณต้องการควบคุมทั้งหมดภายในของ Lucene AND เกือบทั้งหมด
- ความต้องการของคุณต้องการให้คุณปรับแต่ง geeky ให้ Lucene AND ทุกประเภท
- คุณยินดีที่จะดูแลองค์ประกอบโครงสร้างพื้นฐานของการค้นหาของคุณเช่นการปรับการกระจาย ฯลฯ
ควรใช้ Solr เมื่อใด?
- อย่างน้อยหนึ่งในข้างต้นไม่สมเหตุสมผล หรือ
- คุณต้องการบางสิ่งที่พร้อมใช้งานทันที (แม้ไม่มีความรู้เกี่ยวกับ Java) หรือ
- ข้อกำหนดโครงสร้างพื้นฐานของคุณมีมากกว่าข้อกำหนดการปรับแต่งการค้นหา
หมายเหตุ : ฉันไม่ได้หมายความว่า Solr ยากที่จะปรับแต่ง Solr มีความยืดหยุ่นสูงและให้คะแนน API แบบถอดได้จำนวนมากช่วยให้คุณสามารถโยนรหัสของคุณได้
มีผู้คนที่อยู่ภายใต้ ' ต้องใช้ Lucene ' แต่ก็ยังชอบ Solr มากกว่า Lucene เพราะมันใช้งานง่าย อย่างไรก็ตามพวกเขาไม่เคยยับยั้งตัวเองจากการปรับแต่ง Solr ในระดับสูงสุด
BTW ฉันเห็นว่ามีทรัพยากรใน Solr (4.x) มากกว่า Lucene (4.x)