I am fairly new when it comes to designing databases and for a project I need to set one up now. I'm not sure if my question makes sense but I have two pieces of data for example, daily weather and the other list of cities.
Every day(or more often) daily weather will get updated with new weather for each region, but also as new cities get added the cities database will grow also(not as quickly as we collect daily weather but it can grow as we add more cities and even countries)..each Table has other tables to enrich it, such as cities have other tables with stats on the city(population, current mayor, etc..)
The question is as the data gets larger and larger, is it better to have weather in one table and cities in another table or to have one database each for these two and keep everything sperate. The reason I am asking is for two reasons. One as both get larger, is it easier to move one database to a different physical location(i.e. different server) or can I do it with tables as well? Also someone told me for future performance you need to keep your indexes as small as possible and not too larger or it'll be slower, I thought of breaking data up between databases as a way of doing it. And lastly, in the future I may want to put out an API that gives people access to one and not the other(i.e. only weather but no city stats or vise versa) or give api access to both. I'm kind of more concerned about scale as if things go well then by the nature of this system, the data will always keep growing.
Sorry for this long question..I'm just a bit confused on which approach to take. Lastly, if I do go down the wrong road..how easy is it to recover in mysql? say I create one database but later realize I need two or vise versa.