Decisions in airlines are made based on a set or rules and conditions. You will be able to predict flight schedules based on published flight times, weather, airport traffic and similar variables. Not different from stock prediction or insurance risk assessment, and similar industries heavy on mining data, both historical and real-time.
Their platform runs on Amazon's S3 which has an slightly different usage pattern than their application needs. So they overcame this limitation by implementing in-house measures to augment the platform (instead of, say, scrapping S3 and building their own storage stack and hammering scalability and distribution on top of this later; in another words, a quick fix saved them both time and money.)
They also layered a higher-level API, Cascading, on top of Hadoop and S3. Cascading allows them to interact with underlying storage and network at the function call interface. Essentially, their code doesn't look any different than a straightforward serial desktop application. This is bottom up programming; instead of writing a lot of code in a big language over a weak platform, you build up the platform, make it beefier, and program it in a simple domain-specific language (though it's not unusual for big chunks of software to be generalized and moved away from the application core; most large applications have a huge library dependence, both 3rd party and custom built. So without even a clean API and specialized syntax, software can be reused in this bottom up fashion [See: Greenspun's 10th Rule])
The best analogy I can think of for bottom-up programming is spoken language. Experts in a field, say doctors or programmers, are able to speak with each other in technical terms. They have enriched their mutual language and they can communicate with ease. However, if a doctor or a programmer would speak to a non-specialist, a lot of the vocabulary would have to be "expanded in place"; acronyms would have to be spelled out, concepts would have to be explained, and analogies and metaphors would take the place of direct communication. So even though the gist of the conversation might be understood by the non-specialist, he we would not have a complete picture until he learns the subject and builds up his own vocabulary.
Programming on top of a weak platform is like having a novice for a peer; you will be doing more educating than collaboration.
[Edit: I really thought the parent was either a non-english speaker or a non-programmer; checked his history and he is both :-/ You owe me 20 minutes of my time, jorgem.]