There I said it!
506 karma · joined September 14, 2011
There I said it!
The real killer with the cloud is bandwidth and storage. With my colo deal I am paying about 5-10% of what bandwidth would cost at Amazon. Not to mention I can put any kind of storage I like with the actual cost per Gb to buy outright being equal to monthly cost on EC2. Go figure!
Cloud has its place to handle spikes of demand, but it is really not cost effective to scale.
Trying to fit high I/O workloads on spinning disks is a lot like spending your efforts to make your program run on 64K RAM. An interesting challenge, that would surely exercise your coding skills, but would not deliver the optimal performance.
Given that Percona is fully backwards compatible with MySQL, while adding this and many other tuning options, I just cannot see a reason to use vanilla MySQL ever.
The idea of painkillers vs. vitamins is a must have vs. nice to have. Call it painkiller, antidepressant or get-out-of-jail ticket the concept is the same.
My favorite metaphor is whether my product is an offer my target customer cannot refuse. For whatever reason.
It is hard to see the benefit of ignoring SSD to get high I/O performance vs. redesigning the software around I/O bottlenecks.
Redesigning software to work on bad hardware is definitely a challenging project, but not always the best use of resources.
=============================
What to do?
I wish I could say you should use Percona Server with XtraDB.
If we were using SSD as storage, then I would recommend it. Vanilla MySQL performs equally bad on SSD and HDD, while for SSD in Percona Server we have “innodb_adaptive_flushing_method = keep_average”.
Unfortunately on spinning disks (as in this case), Percona Server may not show significant improvement. I am going to followup with results on Percona Server.
=============================
SSD is the solution because unlike rotational disks it allows for lots of random accesses. While they are too expensive to use as "archiving" storage, SSD excels as a layer between traditional disks and RAM. Put your high I/O workload on SSD and keep your historic data on spinning disks.
If you want to see some SSD benchmarks, here is your resource: http://www.ssdperformanceblog.com/
As far as cloud storage, yes, Amazon EC2 offers 68GB RAM, however if you need hardware of that size it is not hard to justify setting up your own servers. It would be cheaper too and you'll be able to fully optimize your storage.
Solid State Drives is the easiest solution to most problems requiring high I/O throughput and data persistence.
Too bad most cloud hosting vendors are way behind on offering anything like that.
EDIT: Not sure why this comment got down voted, but perhaps whoever did it might comment on why using SSD is not a solution.
Once the product trickles out and gets adopted quietly you establish a track record of results. THEN you can tell the world about the wizards behind the curtain, what is next and what is in it for customers, partners and investors. The purpose of the launch should be to accelerate your momentum, not create it where it does not exist.
MySQL queues work just fine with the recommendations Barron provides himself "1) avoid polling; 2) avoid locking 3) avoid mixing queue and archive tables".
"This is what boards need to learn: top slot = product person, second slot = operations person. Not the other way around."
With our own hardware in our own colo we can optimize performance to exactly suit our system needs. The biggest benefit is being able to eliminate I/O bottlenecks with SSD storage for transactional apps and use larger 3TB drives for data archiving.
Businesses that scale tend to have multiple products, so tying product name to company name could restrict your positioning going forward.
Seriously, do you think they are going to change their browser just to use whatever application you got?
There is lots of hassle, inefficiency and errors that happen along the way.
Making and targeting ads effectively is very time-consuming and error prone. There is tremendous room for innovation.
In that case hard to see how much value would be in staying "private" given the same disclosures and the liquidity in the secondary markets.
If anything the IPO timing is probably affected by their ability to stay under this magic 500 number.
Is applying predictive analytics can make your business more profitable? This broader rule can allow for lots of exceptions to your guidelines.
Of course to know if predictive analytics can improve your profitability you'd have to test it or at least find examples of how others applied it to similar problems.
This is not so different from what happened to original e-retailing back in the nineties.