sql >> Databáze >  >> RDS >> Mysql

Solr a MySQL, Jak udržovat aktualizovaný index, a je DB vůbec potřeba, když je jednoduchá?

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 .



  1. Vybíráte všechny sloupce, které začínají XXX pomocí zástupného znaku?

  2. Poddotaz SQL Server vrátil více než 1 hodnotu. To není povoleno, pokud poddotaz následuje =, !=, <, <=,>,>=

  3. Jak vypočítat Rank z tabulky mysql

  4. Jak vyplnit díry v polích automatického přírůstku?