Používání databáze nebo ne ve skutečnosti se scvrkává na to, jak dlouho chcete tato data uchovávat a rozvíjet. Je mnohem, mnohem snazší poškodit celý index Solr (a ztratit všechna svá data), než poškodit celou databázi. Solr také nemá velkou podporu pro úpravu schématu bez spuštění s novým indexem. Můžete například v pohodě přidat další pole, ale nemůžete změnit název nebo typ pole, aniž byste vymazali svůj index.
Pokud používáte DB, můžete nastavit Solr tak, aby indexoval přímo z DB pomocí DataImportHandler . Pro vaše schéma by to mělo být docela jednoduché, ale může to být rychle bolestivé, protože se vaše DB stává složitější. Myslím, že používání objektů Hibernate, které již máte nastaveno, a jejich vkládání pomocí Solrj má určitou výhodu. Dalším problémem DataImportHandler je, že je zcela řízen pomocí http. Takže musíte spravovat samostatné úlohy cron (nebo nějaký jiný kód), abyste zvládli plánování pomocí wget
nebo curl
.