Slashdot Mirror


What Kind of Data Center Can You Build With $500M?

coondoggie writes "So, if the government gave your company $500 million to spend on building a new data center what would you buy and how would you build it? Well, the Social Security Administration is about to find out. As part of the stimulus bill, or the American Recovery and Reinvestment Act of 2009, the SSA got the tidy little sum to replace its National Computer Center. The SSA in fact says it will need closer to $800 million to fund a new IT infrastructure, including the new data center — the physical building, power and cooling infrastructure, IT hardware, and systems applications. (This is addition to a $72 million backup facility currently under construction in Durham, North Carolina)."

16 of 204 comments (clear)

  1. The Unfortunate Reality of Maintaining Legacy by eldavojohn · · Score: 4, Insightful

    I will start with the assumption that this data center must be non-homogeneous. Get an assessment of all the projects that are using the current system you're going to replace (you know, the one with 36 million lines of COBOL code?). Because the number one priority of the customer (other projects) is going to be the lengthy transition from that to current technology. Prepare yourselves for this: Some of the projects aren't going to have any funding to do jackshit. Which means that the awesome spaghetti coded current system that's held together with COBOL duct tape needs to remain intact in some form. Not ideal situation but an uncomfortable truth. I'm thinking you would want to set aside 10% or $50 million or so for this (just throwing out a figure).

    --
    My work here is dung.
    1. Re:The Unfortunate Reality of Maintaining Legacy by jellomizer · · Score: 5, Insightful

      I think more colleges as part of their Computer Science Elective they should be a class on Legacy System Maintenance. Legacy systems are not as bad as everyone makes them out to be. As well for the most part languages such as COBOL and FORTRAN are really not that hard to follow and learn. In many ways they are easier then the newer languages, as they are designed to do particular things and do them well, and not like C,C++,Java,.NET try to be the end all be all language. The old code is usually focused on the business logic while newer code seems to be working more with trying to get the formatting correct, and being well organized and modularized (which is a good thing too). But the old code you get PROCESS_CLAIM.CBL all the code that you need to process the claims are there, so when you fix the code there the problem is fixed. Having done a lot of work in FORTRAN myself I have found that there isn't that much spaghetti going on. Yes there is the GOTO statement but it is usually limited to ERROR cases where if something critical failes it GOTO ErrorNum and displays the error and quits the app.

      For these legacy apps normally when something needs to be changed is because there was a change in the business process not because of a bug.

      --
      If something is so important that you feel the need to post it on the internet... It probably isn't that important.
    2. Re:The Unfortunate Reality of Maintaining Legacy by SatanicPuppy · · Score: 4, Insightful

      As someone who maintains COBOL driven legacy systems, I disagree. Why teach that stuff in college? Those jobs are much more rare than other programming gigs, and they tend to be held by lifers (I inhereted mine when 2 people hit retirement age, and the third decided she didn't want to do it alone). If you DO get one of those jobs, the learning code for the obscure hand-coded systems is going to be vastly higher than the language.

      COBOL isn't that hard to pick up. Maintaining legacy crap code is the same whether it's VB or COBOL or RPG, and the vast vast majority of your headaches will come from environmental quirks (old school databases with fixed width data, packed binary decimal numbers that no one uses anymore, etc).

      The biggest problem with COBOL in the modern world is that its designed in reverse. It treats CPU cycles and RAM like they're the most precious things on earth, so a program will make live changes as it goes along (to conserve RAM and minimize disk IO), and is designed to fail in a dirty state (in the middle of everything, so you can't re-run it) on the chance that it'll preserve cycles. It's a real maintenance headache.

      --
      ad logicam Claiming a proposition is false because it was presented as the conclusion of a fallacious argument.
    3. Re:The Unfortunate Reality of Maintaining Legacy by thePowerOfGrayskull · · Score: 4, Insightful

      Everybody* else knew the language was dead.**

      *everybody: the disturbingly large subset of programmers who are unaware that COBOL and FORTRAN still power the vast majority of the financial and healthcare infrastructures of the world.

      **dead: working quietly in the background without need of constant updates and maintenance

    4. Re:The Unfortunate Reality of Maintaining Legacy by thePowerOfGrayskull · · Score: 3, Insightful

      The US gov't IS out of business... We're bankrupt. No one has the balls to say it on camera, but every person with common sense knows what it means when (money in) - (money out) is consistently 0.

      Every person indeed does: if we had a government that had "(money in) - (money out) = 0", "efficient" and "well run" would be the words you're looking for.

      Here in the real world "(money in) - (money out) = -11,000,000,000,000" and counting.

    5. Re:The Unfortunate Reality of Maintaining Legacy by bdenton42 · · Score: 4, Insightful

      There is nothing wrong with a functional 20 year out of date COBOL application. It is a bigger waste of company/governmental resources to rewrite it just because you want to use the language flavor of the month.

      So they should have rewritten it in 'C' 20 years ago, then of course you have to go OO and rewrite it to C++ 15 years ago, then Java was really cool so 10 years ago rewrite again, and now M$ has taken over the world so we better port it to .NET today, but you've just wasted 4 projects to simply get the existing functionality and your company is out of business (or added 0.0001% more to the national debt if you are the government).

      There are very good reasons to port old projects but just doing it because it's 20 years out of date is not one of them.

  2. Mimicking Private Industry? by eldavojohn · · Score: 4, Insightful

    Could you approach Google and ask them to license their ideas on server and data 'pod' technology for your sharded databases? I'm not saying build the whole thing like this but with $500 million, you could probably have a large section to search and sharded databases that mimics Google. I don't think there's anything wrong with following the leader in that department. This probably isn't the best solution for relational databases so I would think another architecture would be in place for your MySQL and Postgres traditional database layouts. And that would be just huge centralized servers running virtualized instances of Linux with MySQL or Postgres.

    --
    My work here is dung.
  3. How about a location first by schwit1 · · Score: 4, Insightful

    Putting the operation in a location that is cost effective would make the taxpayers very happy. The DC area is too expensive. Maybe an old missile facility in Wyoming or the Dakotas.

    1. Re:How about a location first by Anonymous Coward · · Score: 1, Insightful

      Look for job postings at some of these remote facilities - lots of jobs out there, because rural industry is very risky to the employee.

      If your employer pulls up roots, then its likely that you and your spouse lose both incomes at once and your home value drops precipitously and there are no other jobs for 50 miles around.

      That happened to my parents when I was growing up - it was a great place for my parents for 20 years. Then the major employer slashed employment. We, along with hundreds of others, had to abandon our house, the township went belly-up, and virtually everyone and everything moved away. The population of the township is now something like 20, with its central business being a gas station.

    2. Re:How about a location first by SirKron · · Score: 2, Insightful

      You can also negotiate allowing the power company use of your backup generators for their needs if during peak load times.

  4. Ummm.... by Wanon · · Score: 3, Insightful

    This is a really really bad place to ask how to spend $500000000....

  5. I don't know... by Cornwallis · · Score: 5, Insightful

    ...but I'll bet you $500 million that: 1) It won't be nearly enough money; 2) It will be obsolete before it is finished; 3) It won't be finished before Social Security runs completely out of money (which will coincide nicely with my scheduled retirement); 4) [Fill in the blank]

  6. OR,,,, by phrostie · · Score: 2, Insightful

    or they could contract it out to google.
    someone who knows how to manage large data centers correctly.

  7. How government would do it by Anonymous Coward · · Score: 3, Insightful

    Dislaimer: I have worked for a contractor to the Air Force, and I have some insight as to government bidding, contracting, and results.

    Well, if I were responsible for results, I would get requirements from staff, send out RFPs, hire the best people, manage the project, and deliver on time and on budget a state-of-the-art data center.

    If I worked for the government, I would do the following:
      - Find a company I would like to work for as a six-figure lobbyist, and hire them without regard to experience or practicality. I will have personal contacts with the CEO, and if I don't, I soon will.
      - Get my "requirements" from that company, and have them provide the solution they specialize in without looking at my environment.
      - I would not supervise them. I am too important for that.
      - I would ask for more money as the project spirals out of control. The government would give it to me.
      - The project would drag on for a decade, would never finish, and would ultimately get scrapped. I wouldn't care, because I now work for the vendor, lobbying the government for more projects. I get my own private limo and driver, and I don't have to declare it on my taxes, unless I want a very visible government job again.

    Someone might raise a fuss in the public about this, but all that proves is that the government need more money to fix it.

    P.S. The contractor I worked for beat out a lower-bidding, "women-owned", "development-zoned", and much more local company. By any government calculus, the local company should have won the bid hands-down. But there were, shall we say, non-written reasons the local company lost and the gigantic out-of-state, double-the-bid, next door to DC company won.

  8. Re:Why build one... by timelorde · · Score: 5, Insightful

    Because they're not in my Congressional district?

  9. Be Realistic. Dont be a 90s dotbomb. by pyster · · Score: 1, Insightful

    There are tons of already built data centers that have been abandoned. They already have much of the infrastructure required and just need some TLC. Using these already built data centers will allow one to have more than one data center, very important for disaster recovery, multi homing, and impressing your customers with your size. I would avoid building a new building from the ground up. Its a cost that will add no value considering the number of buildings available that can be repurposed.

    Make strong investments to make sure you can meet you power requires and can readily add more power in a reasonable amount of time. This includes battery piles, back up generators, fuel storage, and maybe even solar panels. Investigate new energy efficient cooling.

    It's also important that your data center have easy access to multiple carriers. Look for buildings that used to be ISP central in the late 90s and early 00's. Often these buildings will also already have supporting infrastructure.

    DO NOT BY INTO HYPE. Not everything needs to be cat6e or fiber. Use these were required and use cheaper technologies that have specs that will meet the requirement.

    Invest services that will add value to your customers. DNS, backups, router maint, firewall sevices, remote hands, terminal services, etc... Dont be afraid to sell your customer shelves, servers, etc... But for god sake, give them screws if they ask. This simple gesture goes a long way to make you not look like small time asshats.

    One of the biggest investments you can make is in a person who has real experience in the area and has the ability to get things done. Without someone who understands power, cooling, how to terminate various connections, telco, racks, project management, etc. your project is doomed to failure. Investing in a NOC that isnt full of monkeys will also be a great benefit. (keep them engaged with training and give them a sense of worth and you will create a team loyal to you. Abuse them and they will talk shit to anyone who listens). And your sales engine has to be stocked with people who can sell the services you are selling and can answer basic questions about those services. It might be a good idea to prove that you can sell these services before even breaking ground on the data center to begin with.

    Don't over invest and over build. Plan for the future, and use profits to build the next stage. Look at what is coming down the sales pipe and try to predict when you need to add on. Buy customer cabinets and wire them only after the sale has been made.

    This could be a great time to invest in experimental technologies for cooling, or to avoid cooling, solar power, etc. It all depends on what the building you find can and will accommodate. But its the bottom line you must always consider. Lots of dotbombs had grand ideas and good intentions and ended up just pissing away all their investors money. Dont dech your NOC out like it was the helm of the enterprise. Dont have large screen TVs and projectors displaying data that the NOC gets alerts on their work stations for.

    Oh, and seriously, dont be a jerk about letting your customers use the bathroom, vending machines, and whatever. And have some comfortable couches in the vending area that support rest and work. Some of your customers are going to pull all nighters and there is nothing worse than having to sleep on the floor in a puddle of your own waste chewing on a pizza crust found in the trash.

    Have real test gear on hand. If you cannot test a t1, ds3, dsl, pots, ethernet/fiber/coax, throughput, etc you will cause your employees and customers a lot of grief. I'd also put some money aside for a fiber fusion splicer, but dont buy it until you need it.

    Data centers can be extremely profitable. I know of one company who I believe had their data centers initial investment paid for with just a few customers in 4 months, after that they began to see profit. Those times might be a bit off, but not by much. (The data center in question I am talking about is in cleveland/garfield. Another option might be to partner with a successful company in another area.)