I'm embarking on creating a iOS based social media application. It will be data driven, with all data except for the user's settings kept in the cloud.
My current plan for the set up is to rent a server to host the MySQL database that will contain user credentials and information on each user's posts. I was originally planning on doing all the authentication myself, but after seeing services like Parse on the web, I think that that might not be the best option.
I have the following questions about the iOS external database and authentication.
1) Is there an authentication service out there that I should use rather than creating one myself? I was going to set it up by pinging my server when a user inputs their data to check if their credentials existed out there, but if there is a better way that I am overlooking, I would like to know. If I could avoid hashing user passwords myself that would be ideal.
2) How to create a secure connection to a server from an iOS application? I don't want user passwords and even posts being unencrypted on the web. Is the connection automatically encrypted if I redirect all incoming HTTP requests to HTTPS on my server?
3) Is there a good data friendly service that will host a huge amount of data on a server for cheap? Social media websites tend to be extremely data heavy, and I don't want to run out of space or create massive access times for users. I'm worried that MySQL will not be sufficient.
4) Is there any particular reference I should use when figuring out how to structure a social media database? I am familiar with the relational database management system (RDBMS) but I am unsure if that should be used on a social-media-data sized application.
I appreciate any and all input. I haven't started this project yet and am looking for some direction for where to start. Please comment and tell me what you think!