Stream computing is one of the most interesting projects at IBM Research because it could have a major impact on all facets of computing. In traditional information analysis, you feed a data set into an application, which performs the analysis and then provides the results. To perform additional analysis, you change the data and re-start the test. With stream computing, the data keeps feeding to the application constantly, and the analysis continues in real-time. From a consumer standpoint, this would be akin to taking photographs with a camera, feeding them into Photoshop continually, adjusting pixels for color quality, and changing the images and improving them as you snap each new image--except that, you could keep snapping the same photo at different times of the day and with different settings, and Photoshop would provide the best possible image using automated filters and effects.
The problem that stream computing addresses is that, in the time it takes to run a query using a given data set, especially if you have scheduled time on a supercomputer for the test, the original data may have changed. This means scientists are dealing with out-of-date information.
“What's unique about IBM's stream computing software is that it utilizes a new streaming architecture and breakthrough mathematical algorithms to create a forward-looking analysis of data from any source, narrowing down what people are looking for and continuously refining the answer as additional data is made available,” says Nagui Halim, the chief scientist for stream computing at IBM. “The stream computing software has the ability to assemble applications on the fly based on the inquiry it is trying to solve, using a new software architecture that pulls in the components it needs, when they are needed, that are best at handling a specific task,” adds Halim. “Millions of pieces of data from multiple sources are streaming into systems that are not capable of processing the data fast enough. We constructed a computing system built for perpetual analytics that analyzes information as it happens, which has very powerful applications in financial services, government, astronomy, traffic control, healthcare and many other scientific and business areas. This is computing at the speed of life.”