Archive for December, 2007

Merry Christmas!

 Merry Christmas

Merry Christmas Everyone!

It’s been a fun family Christmas so far, and I’m looking forward to a few more days off :-)

P.S. No cards this year - climate crisis and all… e-mail all the way

Amazon Web Services Platform - SimpleAtomic please

It’s probably not a good approach for a number of reasons, but every time a new development technology or platform comes along, I first evaluate how I’d develop a theatre ticketing system with it. I reimplemented newts a few times in Java because I didn’t get it remotely correct the first time out, so I know the problem inside and out and it can be extended to an online model for those kinds of technologies. So while it might not be an ideal reference concept, for me it’s a good start.

This past week Amazon announced SimpleDB to extend their web services platform to small, semi-structured, queryable data storage. It really does make you ask the question “What doesn’t their platform provide?”. The answer to that is a transactional data store for non-file data. That’s right, SimpleDB isn’t a database in the currently common understanding of the term. The lack of transactionality and the ‘eventual consistency’ model help hugely in the scaling out methodology used by companies like Amazon, and having seen a couple of presentations about that strategy, I’m a proponent myself.

And for many, many applications which currently use a RDBMS, no transactionality/consistency is fine. In fact, to use my ticketing system example, there’s only one place where I actually need to read and update data atomically, and even that is a single integer associated with each performance. But I really do need it in that one place. I’ve thought about it for a while, and it’s just not optional.

Where does that leave me on the Amazon platform? I think it means I have to install a RDBMS  on a couple of EC2 instances and jump through all the annoying hoops to get that to work and be robust and scale. All that for a single atomic integer update.

What could they do to help with this? Well after a little head scratching, what I’d like is to be able to write some distributed transactional/atomic logic on the Amazon platform for these small cases where it’s actually required, and where I’ve considered the scaling implications.

So I’d like a transaction/atomic primitives service. A SimpleAtomic service which lets me create and access simple Locks, AtomicBooleans and AtomicIntegers (similar to the java.util.concurrent classes).

I’m looking forward to discussing this at work and outside as I’m sure the ideas of (1) moving transactions/atomicity logic explicitly into the application and (2) doing transactional work in a scaling environment will be controversial in each environment respectively.

iPlayer

The BBC unveiled their Mac and Linux friendly version of the iPlayer the other day. It’s streaming only, and apart from the limitation of having to be connected to broadband to view, I’m impressed (though recent BBC tech has lowered expectations somewhat). The quality is ok and it starts quickly. It’s only a beta, and that shows in the reliability. I’ve watched 3 or 4 shows so far and they’ve all stopped in the middle with an unhelpful error message. Reloading the page clears the problem but puts you back to the start of the programme. It’s easy enough to skip through to the right point… if you remember the timestamp from just before it failed. For that situation, I really wish the BBC would track the viewing point and cache it so it could state on the page where in the programme you were when you last left the page.

As I said, I’m impressed, and I look forward to seeing it improve.

Techie humour

The other evening  I was asked about computing/IT humour and I explained that it wasn’t an appropriate discussion for an evening out. Here’s an example of why..

(Dodgy file extension  jokes courtesy of the UK WebSphere App Server and ESB teams)

London

Just a quick note that on my way home from a recruitment event on Friday I stopped off in London for a meal and some drinks to celebrate a birthday… I had a really good time, saw people I hadn’t seen in ages, and really, really do now mean to head up to London and go out drinking with them more often!

Next Page »


About

I’m David Illsley, I work in Web Services development at IBM Hursley, which involves work on the Apache WS Project, where I am a committer and PMC member. When not working with technology, I spend a lot of time on the backstage aspects of theatre, and a sadly decreasing amount of time reading.

a

Disclaimer

The postings on this site solely reflect the personal views of the author and do not necessarily represent the views, positions, strategies or opinions of IBM or IBM management.