I've experience in doing such project, in which a communication is made from raspberry pi to modbus , data is fetched and uploaded to cloud datastore once in every 15 minutes.
1) How many registers/coils data to be saved into cloud db?
2) What type of communication should be used(TCP/IP or Serial) ?
3) What are the deliverables you expect ?
Please let me know above things for further discussion.