There is no bad time to generate the index table. If the database gets more populated you can click the “continue indexing” button instead and the plugin will look for non-indexed elements.
If the importing method you use triggers the “save_post” or “wp_insert_post” or “delete_post” hooks, then the imported element is going to be indexed. If this is not the case, and you are worried that manual indexing would generate too much load, then there is a CRON option on the Advanced Options panel on the index table option. You can turn off the automatic indexing there as well and let the CRON job handle the task. It does only a few items per execution, not all the non-indexed. There is no best way of doing this, I recommend trying different ways, to see which works out for you the best.
About bulk deleting the posts: In most cases (like when the post is just deleted from the database directly), the “delete_post” hook is not executed so the index table might be left with posts which no longer exist. In this case I highly recommend generating a new index.
I'm working on a analyzer function for the upcoming release, which will allow automatically/manually checking the index table for unreported deleted post type objects.
If you like my products, don't forget to rate them on codecanyon :)