Menggunakan database atau tidak benar-benar bermuara pada berapa lama Anda ingin menyimpan dan mengembangkan data ini. Jauh, jauh lebih mudah untuk merusak seluruh indeks Solr (dan kehilangan semua data Anda) daripada merusak seluruh basis data. Juga, Solr tidak memiliki dukungan besar untuk memodifikasi skema tanpa memulai dengan indeks baru. Misalnya, Anda dapat menambahkan bidang lain dengan baik, tetapi Anda tidak dapat mengubah nama atau jenis bidang tanpa menghapus indeks Anda.
Jika Anda menggunakan DB, Anda dapat mengatur Solr untuk mengindeks langsung dari DB menggunakan DataImportHandler . Untuk skema Anda, ini seharusnya cukup mudah, tetapi ini bisa menjadi menyakitkan dengan cepat karena DB Anda menjadi lebih kompleks. Saya pikir ada beberapa keuntungan menggunakan objek Hibernate yang sudah Anda siapkan dan hanya memasukkannya menggunakan Solrj. Titik sakit lainnya dengan DataImportHandler adalah bahwa hal itu sepenuhnya dikendalikan menggunakan http. Jadi, Anda perlu mengelola tugas cron terpisah (atau kode lain) untuk menangani penjadwalan menggunakan wget
atau curl
.