Rumah > pembangunan bahagian belakang > tutorial php > Menggunakan solarium dengan solr untuk carian - persediaan

Menggunakan solarium dengan solr untuk carian - persediaan

尊渡假赌尊渡假赌尊渡假赌
Lepaskan: 2025-02-21 09:00:14
asal
408 orang telah melayarinya

Using Solarium with SOLR for Search - Setup

mata teras

    Apache Solr adalah platform carian yang kuat yang menyediakan carian teks penuh, carian faceted, penonjolan hasil dan carian geospatial. Ia boleh diintegrasikan dengan mana -mana bahasa pengaturcaraan melalui HTTP, dan untuk pengguna PHP, projek Solarium memudahkan integrasi ini.
  • SOLR berjalan sebagai perkhidmatan web, mewujudkan indeks carian untuk dokumen. Ia membolehkan carian teks penuh dan menambah maklumat tambahan ke dokumen carian yang diindeks. Salah satu ciri yang paling berguna ialah carian aspek, membolehkan pengguna menapis hasil carian.
  • Memasang SOLR melibatkan menetapkannya pada sistem operasi anda, memulakan pelayan dan mengesahkan pemasangan melalui antara muka pentadbiran. Corak mentakrifkan bidang dokumen yang diindeks dan boleh ditetapkan dengan menyalin direktori lalai dan menyesuaikannya.
  • Solarium adalah perpustakaan klien untuk SOLR yang memudahkan proses menyambung ke SOLR, melaksanakan pertanyaan dan respons pemprosesan. Ia boleh dipasang menggunakan komposer (alat pengurusan ketergantungan PHP). Selepas pemasangan, anda perlu mengkonfigurasinya untuk menyambung ke pelayan SOLR.
Apache Solr adalah platform carian peringkat perusahaan berdasarkan Apache Lucene. Ia menyediakan carian teks penuh yang kuat dan ciri-ciri canggih seperti carian faceted, penonjolan hasil dan carian geospatial. Ia mempunyai skalabiliti yang sangat tinggi dan toleransi kesalahan.

Dilaporkan bahawa laman web terkenal seperti Digg, Netflix, Instagram dan Whitehouse.gov menggunakan SOLR untuk menyokong keupayaan carian mereka (sumber).

Walaupun SOLR ditulis di Java, ia boleh diakses melalui HTTP dan oleh itu boleh diintegrasikan dengan mana -mana bahasa pengaturcaraan yang anda suka. Jika anda menggunakan PHP, projek Solarium menjadikan integrasi lebih mudah, yang menyediakan lapisan abstraksi di atas permintaan asas, yang membolehkan anda menggunakan SOLR seperti yang anda lakukan dengan pelaksanaan asli yang berjalan dalam permohonan anda.

Dalam siri artikel ini, saya akan memperkenalkan solr dan solarium bersebelahan. Kami akan terlebih dahulu memasang dan mengkonfigurasi SOLR dan membuat indeks carian. Kami kemudian akan melihat cara mengindeks dokumen. Seterusnya, kami akan melaksanakan carian asas dan kemudian melanjutkannya dengan beberapa ciri yang lebih canggih seperti carian facet, hasil yang menonjol, dan cadangan.

Dalam proses seterusnya, kami akan membina aplikasi mudah untuk mencari koleksi filem. Anda boleh mendapatkan kod sumber di sini atau melihat demo dalam talian di sini.

Konsep dan Operasi Asas

Sebelum kita menggali butiran pelaksanaan, adalah wajar memahami beberapa konsep asas dan proses keseluruhan.

Solr adalah aplikasi Java yang berjalan sebagai perkhidmatan web, biasanya dalam bekas servlet seperti Tomcat, Glassfish, atau JBoss. Anda boleh memanipulasi dan menanyakannya melalui HTTP menggunakan format XML, JSON, CSV, atau binari - jadi anda boleh menggunakan mana -mana bahasa pengaturcaraan untuk pembangunan aplikasi. Walau bagaimanapun, Perpustakaan Solarium menyediakan lapisan abstraksi yang membolehkan anda memanggil kaedah seolah -olah SOLR adalah pelaksanaan asli. Dalam tutorial ini, kami akan menjalankan SOLR pada mesin yang sama seperti aplikasi kami, tetapi dalam aplikasi dunia nyata ia boleh di pelayan yang berasingan.

Solr mencipta indeks carian untuk dokumen. Ini biasanya mencerminkan apa yang kita fikirkan dalam kehidupan sebenar; Walau bagaimanapun, dokumen itu juga boleh mewakili apa -apa objek yang digunakan untuk aplikasi anda -produk, tempat, acara atau dalam aplikasi sampel kami, filem.

Dalam kes yang paling asas, SOLR membolehkan anda melakukan carian teks penuh pada dokumen anda. Fikirkan enjin carian; anda biasanya mencari kata kunci, frasa, atau tajuk penuh. Anda hanya boleh pergi sejauh ini dengan klausa seperti SQL;

Anda juga boleh melampirkan maklumat tambahan untuk mengindeks dokumen carian, yang tidak semestinya ditangkap oleh carian berasaskan teks; telah ditambah ke pangkalan data.

Facialization adalah salah satu ciri yang paling berguna dalam SOLR. Jika anda pernah berbelanja dalam talian, anda mungkin melihat carian yang lebih baik; Sebagai contoh, selepas mencari kedai buku dalam talian, anda boleh menggunakan penapis untuk menghadkan hasilnya kepada buku penulis tertentu, jenis tertentu, atau format tertentu.

Contoh Solr dijalankan dengan satu atau lebih teras. Inti adalah koleksi konfigurasi dan indeks, dan setiap teras mempunyai corak tersendiri. Biasanya, satu contoh adalah khusus untuk aplikasi tertentu. Oleh kerana pelbagai jenis kandungan boleh mempunyai struktur dan maklumat yang sangat berbeza -contohnya, memandangkan perbezaan antara produk, artikel, dan pengguna -aplikasi sering mempunyai beberapa teras dalam satu contoh SOLR.

Memasang Solr

Saya akan memberikan arahan mengenai cara menubuhkan SOLR pada Mac;

Cara paling mudah untuk memasang SOLR pada Mac anda ialah menggunakan Homebrew:

brew update
brew install solr
Salin selepas log masuk
Salin selepas log masuk

Ini memasang perisian ke dalam direktori seperti /usr/local/Cellar/solr/4.5.0, bergantung kepada versi perisian yang anda gunakan.

untuk memulakan pelayan menggunakan arkib Java yang disediakan (balang):

cd /usr/local/Cellar/solr/4.5.0/libeexec/example
java -jar start.jar
Salin selepas log masuk
Salin selepas log masuk

Untuk mengesahkan bahawa pemasangan berjaya, cuba mengakses antara muka pengurusan dalam pelayar web anda:

<code>http://localhost:8983/solr/</code>
Salin selepas log masuk

Jika anda melihat papan pemuka admin dengan logo Solr Apache di sudut kiri atas, pelayan sedang berjalan dan berjalan.

tip: Untuk menghentikan solr - apabila anda menukar konfigurasi (seperti yang akan kami lakukan tidak lama lagi), anda perlu melakukannya - hanya tekan Ctrl C.

(Linux Description: https://www.php.cn/link/02013105f0430de65b8b1408d52c84be )

set mod

Cara paling mudah untuk memulakan dengan SOLR mungkin menyalin direktori lalai dan menyesuaikannya.

Salin direktori solr dari

;

brew update
brew install solr
Salin selepas log masuk
Salin selepas log masuk

kami akan menyemak fail konfigurasi kemudian, movies\solr.xml dan movies\collection1\conf\solrconfig.xml. Pada masa ini, apa yang kita benar -benar berminat ialah skema, yang mentakrifkan bidang dokumen yang kita sedang mengindeks, dan bagaimana untuk mengendalikan bidang tersebut.

Fail yang mentakrifkan kandungan ini ialah movies\collection1\conf\schema.xml.

Jika anda membuka fail yang anda hanya disalin, anda akan mendapati bahawa ia tidak hanya mengandungi beberapa nilai lalai yang berguna, tetapi juga banyak komen untuk membantu anda memahami cara menyesuaikannya.

Fail konfigurasi mod bertanggungjawab untuk dua aspek utama: bidang dan jenis. Jenis hanya jenis data, dan di bahagian bawah mereka memetakan nama jenis (seperti integer, tarikh, dan rentetan) ke kelas Java yang digunakan dalam pelaksanaannya. Contohnya: , solr.TrieIntField dan solr.TrieDateField. Konfigurasi jenis juga mentakrifkan tingkah laku tokenizers, penganalisis, dan penapis. solr.TextField

Berikut adalah beberapa contoh jenis asas:

cd /usr/local/Cellar/solr/4.5.0/libeexec/example
java -jar start.jar
Salin selepas log masuk
Salin selepas log masuk
Jenis rentetan patut diterokai dengan teliti, kerana terdapat perangkap di sini. Apabila anda menggunakan medan sebagai rentetan, sebarang data disimpan seperti yang anda masukkan. Juga, agar pertanyaan untuk dipadankan, ia mestilah sama. Sebagai contoh, katakan anda mempunyai tajuk artikel sebagai rentetan dan masukkan dokumen bertajuk "An PENGENALAN UNTUK SOLR". Dalam mana -mana pelaksanaan carian yang betul, anda ingin mencari artikel menggunakan pertanyaan seperti "Pengenalan Solr" - belum lagi "Pengenalan kepada Solr". Untuk menyelesaikan masalah ini, jika anda tidak mahu tingkah laku yang sesuai ini - yang sebenarnya berguna dalam beberapa kes, seperti carian aspek - maka anda boleh menggunakan gabungan tokenizers dan penapis.

(kandungan berikutnya pada dasarnya sama dengan teks asal, tetapi bahasa dan ekspresi diselaraskan, dan beberapa perenggan diselaraskan untuk mengelakkan pertindihan. Untuk mengekalkan panjang yang munasabah, hasil pseudo-asal dari baki bahagian asal ditinggalkan di sini (bahagian FAQS juga telah diproses sama, dan kandungan tertentu ditinggalkan.)

Atas ialah kandungan terperinci Menggunakan solarium dengan solr untuk carian - persediaan. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan