Providing a company has offices, does it make sense to start small, build a server farm there, rather than go with hosting? If not, Is there a cutoff point after which it makes sense to do that? The big players have their own data centers- they don't outsource hosting - do they know something the rest of us don't?
Providing a company has offices, does it make sense
Maybe, probably not. On a small scale if you're only providing access to your local users and you have the skills in house to manage the system then it may make sense. But if you're providing services to the public across the internet then you need to running with a high volume of traffic before it's cost effective to provide the level of service that you'd get from a quality datacentre (power management, redundant routing, environment management, 24x7 support). Using a hosted server falls somewhere between the 2 extremes.
Trust me - when you're the 'computer guy' in a small company you want someone else to take the calls at 2am and when you're on holiday.
This is somewhat complicated by Content Delivery Networks where the objective is get your data closer to your users.
Here is a real life scenario that I am currently working on. Maybe this will help you, maybe it won't.
Currently, our website is hosted in a colocation facility. Our business and website traffic has been increasing over the past couple years, to the point where we need additional servers to support the increase. A few months ago, we purchased a new building which included a server room with ample cooling, generators, security measures and a fast internet connection (OC3). Instead of adding more servers to the colocation facility, we have decided to host our website in-house.
Now, I wouldn't even consider hosting the website in-house if we didn't have the new server room and the other resources. But because we do, it works for us to bring our web servers home. We feel that having the flexibility to grow and add additional technologies at any time (which we plan to do) out weighs the cost of supporting our website 24/7/365.
It's not just offices. Offices are the least important part of the infrastructure with which to make that decision. "Big players" already have the necessary infrastructure to support their big internal demands; the additional load of supporting external hosts is small.
If you don't have that infrastructure, hosting companies provide it. For a fee, of course, and including their profit margin. But you get to amortize the costs over all their other clients as well, so it works out to be a good deal for smaller companies. It's not a good deal for larger companies, since they're paying to duplicate resources they already have. Where's the crossover? Detailed calculations are complex, but if you're close and not likely to need a larger IT infrastructure, go with the hosting. If you're likely to expand, build your own infrastructure.
Some of the points to consider
- Continuity (multiple data centers with failover between them)
- Backups, onsite and off
- Power (multiple sources, conditioned)
- HW Support staff (it's 2am. Who's going to replace that blown fuse?)
- SW Support staff
- Data isolation and integrity