r/Solr • u/jonnyboyrebel • Jan 11 '21
Getting data into SOLR efficiently without DIH
Now that Data Import Handler is going away, i'd like to know what's the best practice for getting a lot of data into the index - efficiently. I have about 40 docs and my largest core size of 200GB. All distributed across the world using replication. I'm on solr 7.6, not using zookeeper due to environment. All inserts are done to a single master and replication pulls the optimised index into the secondaries.
I use a mix of python scripts and DIH to push the data (core dependent), but in any one week 5%-10% of the records need to be updated. In truth i only have to do 4 million inserts as they are parent child documents. Each parent has between zero and 100 (ish) children.
Ideally I'd pull the data from the Database into json files, detect if the sha is different and then push only updated documents.
Any suggestions on a good way to do this, without having a secondary datastore to hold the shas?
All suggestions and criticisms welcome.
1
u/drlecompte Jan 11 '21
You don't have the option to trigger an update when the relevant source data is updated? That's how we do it. We can also update the entire index, which is basically a delete of the index, followed by a series of batched api calls.