Database Reference
In-Depth Information
Chapter 7
Delivering Streaming Metrics
After streaming data has been collected, processed, and stored, it is time to
deliver this data to end users. Historically, streaming data applications have
employed customized “thick” clients of various kinds. With the introduction
of web-based interfaces, the applications evolved to either applet-based
approaches using Java or often to plug-in-based approaches. For example,
Adobe has provided streaming interfaces via Flash using its LiveCycle server
line for years.
Neither the applet nor the plug-in-based approach is particularly appealing
in a modern delivery environment. First and foremost, with the rise of truly
mobile computing, these options are simply not available for web-based
delivery. Citing security and power usage concerns, modern browsers also
severelylimittheseoptions,whichmakesusingthemmoreandmoredifficult
in a desktop environment.
Fortunately, web browser standards have progressed to the point where rich
data applications are possible, even those with streaming data connections.
The standards most important for streaming applications are the Server-Side
EventsandWebSocketframeworks.Bothoftheseoptionshavewidebrowser
adoption and allow for a web page to receive streaming updates.
Although it's not a complete guide to web application development, this
chapter provides an introduction to the topic with a focus on real-time
applications. It introduces the basics of web application back-end structures
and adapts them to the particular problems of a real-time application, which
are somewhat different than those of a traditional web application.
After data is delivered to the front end, presentation is the primary concern.
Modern web browsers offer some advanced presentation techniques that
supplant the Flash-based approaches of even a few years ago. These
approaches are ideal as they work across a range of browsers—even mobile
browsers—with a high rendering fidelity. One of the most popular tools is
the D3 JavaScript library, which is widely used to render high-quality
visualizations. This chapter covers the D3 toolkit, as well as several of the
higher-level abstractions for D3, as it is a fairly low-level library.
Search WWH ::




Custom Search