Lucene - Zend_Search_Lucene - "etiketli" içerik için bir dizin oluşturmak için nasıl

1 Cevap php

Ben sorun şu, ben etiketli makaleler için lucene dizini oluşturmak için ihtiyaç var.

Burada veri yapısını ve lucene önerisini basitleştirilmiş:

article_id -> unindexed
article_title -> UnStored
article_content -> UnStored
article_tags -> ????? (here is the problem)

Bu yüzden makale birden çok etiketi olabilir. T1, T2, T3: Biz şu etiketleri olan bir makale A var diyelim. Sorun T1, T2, T3 ID (sayı) ile temsil edilir ki, ben endeksinde onun saklayamazsınız metin gösterimi gibi (o zaman değiştirildi etiketi ile tüm makaleleri arama dizini yeniden gerekir değiştirilebilir, çünkü ) kaldırmak ve endeks bir kez daha ekleyebilirsiniz. Sonra T1 ve T2 etiketiyle makalelerin içinde aramak gerekir. Maddeye atanan etiketleri sayısı (ilişki 1-n) sınırsızdır. Bazı etiketler (tag kimlikleri) ile makaleleri üzerinden arama için herhangi bir olasılık var mı?

Ben açık değilim umarım. Herkes bu sorun için etkili bir çözüm var mı?

Şimdiden teşekkürler.

1 Cevap

Sen Lucene ile yapabilirsiniz. Tek yol, her etiket-makale çifti için bir belge oluşturmak ve kullanma VE etiketleri aramak içindir.

Should you use Lucene? I am unsure. In your description you do not use any full-text search capability. Why not use a database? I suggest you read Search Engine versus DBMS and choose according to the criteria defined there.