ฉันยังเป็นมือใหม่ใน Solr และการเขียนบทความเหล่านี้เป็นเพียงการบันทึกประสบการณ์ของฉันในการเรียนรู้ Solr ในช่วงล่าสุด
โซล่าร์คืออะไร?
ตอนที่ฉันเรียน Solr เมื่อเร็วๆ นี้ ฉันมักจะเห็นประโยคที่ว่า Solr เป็นเซิร์ฟเวอร์การค้นหาที่ใช้งานง่ายซึ่งอิงจาก Lucene ที่องค์กรต่างๆ สามารถใช้ได้ ฉันคิดอยู่นานแต่ก็ไม่เข้าใจว่าประโยคนี้หมายถึงอะไร หลังจากติดต่อกับมัน ฉันพบว่าเซิร์ฟเวอร์การค้นหาที่เรียกว่าเป็นโปรเจ็กต์ของโปรแกรมค้นหาที่สามารถทำงานในเซิร์ฟเวอร์ (Tomcat, Jetty)
โซล่าร์ทำอะไรได้บ้าง?
ใครก็ตามที่รู้จัก Lucene จะรู้ว่า Lucene ทำสองสิ่ง นั่นคือการจัดการดัชนีและการค้นหา และ Solr ก็ไม่มีข้อยกเว้น
หากคุณไม่รู้เกี่ยวกับ Lucene มากนัก ฉันขอแนะนำให้อ่านบล็อกของ Juexian: http://www.cnblogs.com/forfuture1978/category/300665.html บล็อกนี้มีประโยชน์มากเมื่อฉันได้ติดต่อกับการค้นหาข้อความแบบเต็มเป็นครั้งแรก นอกจากนี้ ฉันขอแนะนำหนังสือ Lucene In Action เวอร์ชันภาษาอังกฤษ และ Lucene in Action เวอร์ชันภาษาจีน
ตอนนี้เรามาถึงประเด็นแล้ว เนื่องจาก Solr เป็นเซิร์ฟเวอร์การค้นหา แน่นอนว่าเราจำเป็นต้องจัดการมันใน Eclipse ของเรา
การรัน Solr ใน Eclipse
1. ดาวน์โหลดแพ็คเกจ Solr ที่สมบูรณ์ ฉันใช้ Solr 3.6.1
2. สร้าง Dynamic Web project ใหม่ใน Eclipse ฉันชื่อ solr คุณสามารถทำเช่นเดียวกันได้
3. ลบเนื้อหาทั้งหมดภายใต้ WebContent ในโปรเจ็กต์ใหม่ ขยาย apache-solr-3.6.1.war ในไดเร็กทอรี dist ในแพ็คเกจ Solr ที่ดาวน์โหลดมาทั้งหมด และคัดลอกเนื้อหาทั้งหมดภายในไปยัง WebContent หลังจากการคัดลอกเสร็จสิ้น หาก มีกากบาทสีแดง ไม่ต้องสนใจ และทำเป็นไม่เห็น
4. ระบุ solrHome solrHome คือที่เก็บไฟล์การกำหนดค่าและดัชนีของ solr core
เปิดไฟล์ WEB-INF/web.xml และเพิ่มโหนดต่อไปนี้:
คัดลอกรหัสรหัส ดังต่อไปนี้:
<รายการสิ่งแวดล้อม>
<env-entry-name>solr/home</env-entry-name>
<env-entry-value>E:/solr</env-entry-value>
<env-entry-type>java.lang.String</env-entry-type>
</รายการสิ่งแวดล้อม>
ชื่อ env-entry ต้องเป็น solr/home และโหนด env-entry-value คือตำแหน่งที่คุณต้องการวางไฟล์การกำหนดค่า solr
5. เพิ่มไฟล์การกำหนดค่า solr <BR>มีสองวิธีคือสร้างด้วยตนเองหรือคัดลอกและดาวน์โหลดไฟล์การกำหนดค่าหลักในแพ็คเกจที่สมบูรณ์
วิธีแรก: คัดลอก ป้อนไดเรกทอรี example/mutiCore ในแพ็คเกจดาวน์โหลด คุณสามารถดู core1, core2 คัดลอกโฟลเดอร์นี้และไฟล์ solr.xml ต่อไปนี้ไปยัง solrHome
วิธีที่สอง: (1) สร้างใหม่ ป้อน solrHome สร้างไฟล์ solr.xml ใหม่ และกำหนดค่าดังนี้:
คัดลอกรหัสรหัส ดังต่อไปนี้:
<?xml version="1.0" encoding="UTF-8" ?>
<solr ถาวร = "เท็จ">
<cores adminPath="/admin/cores">
<core name="พ่อค้า" instanceDir="พ่อค้า" />
</แกน>
</โซล>
ไฟล์ adminPath เป็นไปตามที่แสดงในโค้ด เป็นการดีที่สุดที่จะไม่เปลี่ยนชื่อในคอร์และเป็นการดีที่สุดที่จะมีความหมายเชิงปฏิบัติบางอย่างในที่นี้ระบุไดเร็กทอรีของคอร์และที่นี่ Merchant ได้รับการกำหนดค่า ซึ่งหมายถึง solrHome ไดเร็กทอรี Merchant ภายใต้
เรามาอธิบายการกำหนดค่าแบบมัลติคอร์ที่นี่ ในตัวอย่างนี้ ฉันจัดเก็บเพียงคอร์เดียวเท่านั้น เนื่องจากผลิตภัณฑ์ของเราจำเป็นต้องทำการค้นหาข้อความแบบเต็มจากผู้ขายรายเดียวเท่านั้น หากจำเป็น เช่น หากคุณต้องการดึงคูปองและไฟล์อื่นๆ คุณต้องกำหนดค่าหลายคอร์ ตัวอย่างแบบมัลติคอร์มีอยู่ในโฟลเดอร์ example/muticore คุณสามารถอ้างอิงได้
(2) สร้างไดเร็กทอรีผู้ค้าใหม่ (สอดคล้องกับ instanceDir ในการกำหนดค่า) จากนั้นสร้างไดเร็กทอรี conf ใหม่ภายใต้ผู้ค้า และสร้างไฟล์ xml สองไฟล์ใน conf ได้แก่ schema.xml และ solrconfig.xml ฉันจะอธิบายรายละเอียดใน xml สองไฟล์ในบล็อกหน้า หากคุณไม่ทราบวิธีกำหนดค่า ให้คัดลอกทั้งสองไฟล์ใน example/muticore/core1/conf.
6. เริ่ม solr ใน Eclipse สร้างเซิร์ฟเวอร์ใหม่ในหน้าต่างเซิร์ฟเวอร์ และจากนั้น เพิ่มโครงการที่สร้างขึ้นใหม่ลงไป
แก้ไขพอร์ต ดับเบิลคลิกเซิร์ฟเวอร์ที่สร้างขึ้นใหม่ และแก้ไขพอร์ต HTTP/1.1 ในพอร์ตเป็น 8983 คุณสามารถปรับแต่งได้ที่นี่ วิธีที่ดีที่สุดคืออย่าทำซ้ำกับโปรเจ็กต์อื่นๆ ของคุณ จากนั้นบันทึก
เริ่มเซิร์ฟเวอร์
7. เปิดแผงการจัดการ solr ในเบราว์เซอร์ <BR>เปิดที่อยู่ต่อไปนี้ http://localhost:8983/solr/ จากนั้นคุณจะเห็นตัวเลือกผู้ดูแลระบบผู้ขาย คลิกเพื่อเข้าสู่ ซึ่งเป็นการจัดการของผู้ค้า แกนหลักที่คุณเพิ่งกำหนดค่า