It’s become fashionable to decry the notion that “The best minds of our generation are thinking about how to get people to click ads, and that sucks” (in the immortal phrasing of Jeff Hammerbacher). But the truth is significantly brighter: having built infrastructure to serve ads, we’re now seeing the payoff from that infrastructure in turning tasks over to machines with clear benefits for people.
One common use case for streaming analytics has been in ad platforms: fast data can mean providing an analytically informed decision in what feels like instantaneous time to a person—less than, say, a fifth of a second. Providing a better ad means incorporating knowledge about the user, knowledge about the ads available, context (let’s pitch groceries on Saturday morning, theater on Saturday evening), and more. This is a complicated and ever-shifting group of data sets to manage, but we’ve also set ourselves a very harsh judge for whether we’ve succeeded: the human brain thinks of signals within about 200 milliseconds of each other as “simultaneous”—we can now meet that requirement pretty consistently with streaming analytics and in-memory databases.
Having achieved this ability to meet human time requirements, the Internet of Things is now enabling us to take advantage of the quicker response time of computers. In the past, “serious” tasks like industrial monitoring would come through dashboards (following on their predecessors in the dial-and-gauge era) with a human bringing context awareness and higher-level analysis. While there were instant-response mechanisms (circuit breakers and temperature shutoffs, for example), these were not analytical, context-aware, or able to synthesize data for prediction and proactivity.
Streaming analytics enables the convergence of machine time and human time. It can also provide an analytically informed decision to a machine that can respond faster than a human ever could: shutting off a transformer before a power failure, or monitor sound, video, as well as physical parameters like temperature, time, and pressure to ensure defect-free manufacturing.
The data tools we’ve built for a human audience—Java for logic and SQL for state manipulation—we can now put to use with little modification in machine-only (IoT) and other environments where speed and accuracy are paramount.
This post and webcast are part of a collaboration between O'Reilly and VoltDB. See our statement of editorial independence.