Algolia is designed to be fast. That means that you can update your objects in real-time, without worrying about the load on the servers. If only some of the objects have been updated, you can send us only those, you don't need to re-index everything. All of our API clients have a method called Save Object (and a method Save Objects for an array of objects) that you can use when you want to update your objects.
The updating schedule is up to you. You can send us your updates periodically by batches or if the updates are time-sensitive, you can also send us the updates as they come in real-time. We don't have a specific recommendation towards that, do what suits you best!
Also, if you only want to update one attribute of an object, you may want to use the method called 'Partial update objects' and send only the attributes whose values have changed.
Last thing, if you want to update all of the objects of an index, the best solution is to create a temporary index, configure it with the settings of your production index, push all the data to it and replace your production index with it using the Move index method.