This past week, I looked over a set of proposals from some academic groups. One of these proposals was attempting to budget for a particular design. What I noticed here was a tendency to do something … well … that badly misstates actual real costs of things, and substitutes them with something easy to find without any regard for the actual real costs of implementing the service.
At the end of the day, IT is about providing processing, storage, and data interchange in the service of a task that can make effective use of the resources. So having a clear picture of realistic costs, and having realistic expectations is critical to being able to manage and deliver these services.
First, what lept out at me, were statements such as
1 PB (PetaByte) of storage costs $70,000 USD
Yes, that is what the proposal said. And yes, as I understand it, it was funded.
But does 1PB really cost $70,000?
Sort of. But its disingenuous to use this. Much like saying a car costs the amount of the raw materials of the tires. Neglecting everything else you need to make a car, that runs.
Or storage, that works.
So where does the $70,000 USD number come from?
Roughly 1000x 1TB desktop drives.
Thats right, the desktop drives will cost you about $70k USD.
So now lets use these drives.
Darn it, we need cases. And power supplies. And interface cards. And networks. And integration. And racks. And …
You get the idea.
Sort of like telling you a car costs $100 USD. For the material in the tires. Which conveniently leaves out all the rest of the stuff you need to make a car and have it work. Or make a storage system and have it work.
And the actual cost today is about $65k for the drives.
So assume you use 24 drives per chassis. You need 50 chassis and at least 50 power supplies. Or if you use our 48 bay chassis, you need about 26 chassis and at least that number of power supplies.
The costs keep adding up. Integration is not a zero cost item, though the proposal indicated using graduate and undergraduate students to build the unit. I’ve done this before in graduate school. All that did was to delay my research. The time cost was paid out of a different budget, but the cost was real and it was paid. Its not a zero time cost. Its real, and its buried elsewhere.
More to the point, the post build debugging is an issue. A significant issue. After you build something and you hit the power button … and no blinky lights come on … whatcha gonna do?
And then there is the OS load per machine. And the networking. And the …
You get the picture. The costs are not $65k or $70k. They are far higher. Large multiples of that number. Its unrealistic to expect them to be marginal over the cost of the raw materials. They aren’t.
Add to this, looking over their design, we found a number of flaws, some of them major, some of them show stoppers. As this is supposed to be a national facility, we are going to try to make them aware of all the issues (despite the fact that we won’t derive any revenue from this … call it pro-bono consulting).
What I saw in this, and what I see … commonly … unfortunately, is a tendency of people to look at boxen, start imagining what can go in there, and forgetting practical details of the implementation. It doesn’t help you to achieve your goals of low cost hardware if you purchase $1M of the wrong stuff.
Expectations need to be set clearly. Drives aren’t the only cost in storage, nor in many cases are they the major cost. Stuff that makes the drives work, or the tires work on the car, yeah, they cost a great deal more than the tires or the drives. Having a realistic set of expectations on this is important to correctly budgeting and planning.