views:

407

answers:

2

For a new scalable high traffic global ecommerce website (asp.net) project which technology fits best (max. scalability & performance, min. price & maintenance)?

amazon simpledb, microsoft sql azure, mysql + memcached combo, or your solution...

+4  A: 

my general answer to this type of question is:

  1. free advice on the internet isn't going to cut it for this type of question. there is no BEST answer because it depends on too many variables.
  2. if you need this kind of performance/scalability, then you need to PAY someone to build it out for you.
  3. if you can't afford to pay, you don't need that kind of performance/scalability (yet). get by on whatever you can buy and design cheaply. by the time you really DO need this level of performance/scalability, you will be able to afford #2.
  4. if you truly need this level of performance/scalability RIGHT NOW then your business plan is flawed and you have deeper problems that improved performance/scalability will likely not solve.
longneck
thanks, good answer.
sirmak
+1  A: 

You have conflicting goals, and you'll have to decide based on which things are most important to your project. Using 3rd party services like SimpleDB or Azure will be the minimum price to get started and overall minimum maintenance. But they won't beat the performance you can get from running a stand alone database on fast hardware physically close to your web server.

Scalability is a different story. You can get a fast database. You can get a maintenance free data service. But scalability is on you. It's on your code, your architecture, your configuration, the code libraries you choose, your ability to find and fix bottlenecks. Nobody wants to get locked into a solution that doesn't scale. Around every corner you can find people to tell you that you don't need that scalability (yet). But the fact is that all the options you list will scale.

With the online solutions you will pay for that scalability and in the long run they will be more expensive. But not everyone is a famous blogger with uber-DBAs happy to help you with your website project for free. So the online solutions can be cheaper if you value your time or if you pay your DBA.

With your own hardware and database install you get the initial scalability with the initial cash outlay. And that will take you a long long way. And you can even use something like EC2 to prevent the initial costs. And if you have more time than budget this can be a good solution.

There is no one right answer to the performance / price / maintenance question. You have to make beneficial trade-offs to get your right answer.

Mocky
thank you very much
sirmak