It is a decent idea. But what are your concerns(pain points) ? A micro service will mainly be:
a) more complex (it is a distributed system after all)
b) more maintainable
c) more flexible (evolution perspective, as I saw you are concerned with redesigning parts of the system in the future)
I have used the same design as you are asking for batch based ...
There are a lot of design choices available and a lot depends on the requirements (size, speed, capacity of the system, it is realtime or near-time or 24h behind, extensibility, reliability etc.)
I would definitely read Enterprise Integration Patterns and maybe Event Streams in Action to have the right tools in your quiver to make good decisions