Download presentation
Presentation is loading. Please wait.
Published byNia Crabb Modified over 9 years ago
1
Live Reorderable Accordion Drawing (LiveRAC) Peter McLachlan MSc Thesis Presentation September, 2006
2
2 Presentation Overview Motivation Related Work LiveRAC Overview and Implementation Discussion LiveRAC Motivation Overview Problem Domain Devices & Data Domain Tools Requirements Our Solution Related Work LiveRAC Discussion
3
3 Problem Domain “Managed Hosting Services”, data center operations staff Motivation Overview Problem Domain Devices & Data Domain Tools Requirements Our Solution Related Work LiveRAC Discussion
4
4 Network Devices Network device: any electronic device that connects to a computer network Most network devices can be monitored Network Operation Centre (NOC): facility for monitoring large numbers of network devices Motivation Overview Problem Domain Devices & Data Domain Tools Requirements Our Solution Related Work LiveRAC Discussion
5
5 Monitored Data Most data collected from network devices is time-series data –time stamp and value Two types of time-series objects collected: –performance metrics [ 10 AUG 2006 9:52:37, CPU, 95% ] –alarm data [ 10 AUG 2006 9:52:37, MAJOR, “HIGH TEMP” ] Key difference for visualization: –performance metrics quantitative –alarms categorical Motivation Overview Problem Domain Devices & Data Domain Tools Requirements Our Solution Related Work LiveRAC Discussion
6
6 Detail Overload Motivation Overview Problem Domain Devices & Data Domain Tools Requirements Our Solution Related Work LiveRAC Discussion
7
7 RRDTool Database system with statistical graphics Monitors individual hosts –6-inch view Basis for many related applications http://oss.oetiker.ch/rrdtool/ Motivation Overview Problem Domain Devices & Data Domain Tools Requirements Our Solution Related Work LiveRAC Discussion
8
8 Ganglia Cluster monitoring tool, uses RRDtool back- end Provides aggregate charts, 100-mile high overview http://ganglia.sourceforge.net/ Motivation Overview Problem Domain Devices & Data Domain Tools Requirements Our Solution Related Work LiveRAC Discussion
9
9 OpenNMS Aggregates SNMP data from multiple hosts, uses RRDtool back-end Alarm management 1000-mile high overviews http://opennms.org Motivation Overview Problem Domain Devices & Data Domain Tools Requirements Our Solution Related Work LiveRAC Discussion
10
10 Scale to large, dynamic datasets –thousands of devices –dozens of data channels –multiple time scales Three levels of activity Visualization Solution Requirements Motivation Overview Problem Domain Devices & Data Domain Tools Requirements Our Solution Related Work LiveRAC Discussion Active regionTime scale# of items Total databaseDays to yearsBillions In memorySeveral secondsMillions On screenSub-secondThousands LiveRAC Back-end DB
11
11 Our solution: LiveRAC Motivation Overview Problem Domain Devices & Data Domain Tools Requirements Our Solution Related Work LiveRAC Discussion Interactive user-directed exploration of overview & detail –Second to sub-second timeframe
12
12 Our solution: LiveRAC Reorderable matrix –rows of network devices –columns of time-series objects Semantic zooming and aggregation for cells –large cells show time-series charts –compact representations in reduced areas –aggregate spatial representation shown in highly compressed regions Motivation Overview Problem Domain Devices & Data Domain Tools Requirements Our Solution Related Work LiveRAC Discussion
13
13 Visual Introduction to LiveRAC
14
14 Research Contributions A scalable visualization system called LiveRAC using real world data Algorithms and code to support dynamic and reorderable data elements in accordion drawing Infrastructure and algorithms for user- definable semantic zoom in accordion drawing Motivation Overview Problem Domain Devices & Data Domain Tools Requirements Our Solution Related Work LiveRAC Discussion
15
15 Information Visualization Human visual channel is highest- bandwidth perceptual system [Norretranders, 1999] Information visualization: field of study whose object is to aid cognition through the graphic representation of abstract data –displays relevant information graphically to assist in memory tasks –supports data exploration through direct interaction –assists in pattern finding through the display of overview and detail, search, and user-directed reordering Motivation Related Work InfoVis Time-series Statistical Graphics Reorderable Vis Semantic Zoom Accordion Drawing SWIFT LiveRAC Discussion
16
16 Information Visualization Techniques - A few examples Small multiplesPre-attentive visual cues Motivation Related Work InfoVis Time-series Statistical Graphics Reorderable Vis Semantic Zoom Accordion Drawing SWIFT LiveRAC Discussion
17
17 Information Visualization Techniques - A few examples Small multiplesPre-attentive visual cues Motivation Related Work InfoVis Time-series Statistical Graphics Reorderable Vis Semantic Zoom Accordion Drawing SWIFT LiveRAC Discussion
18
18 Time-Series Data Extensively explored in information visualization Many techniques cluster similar time-series data points together, e.g. work by van Wijk et al. LiveRAC provides many small-multiples views of time-series data J. van Wijk, E. Van Selow. Cluster and calendar based visualization of time series data. Proc. IEEE Symposium on Information Visualization, pp 4. J. Lin, E. Keogh, S. Lonardi, J. Lankford, D. Nystrom. Visually mining and monitoring massive time series. SIGKDD 2004, 460-469. Motivation Related Work InfoVis Time-series Statistical Graphics Reorderable Vis Semantic Zoom Accordion Drawing SWIFT LiveRAC Discussion
19
19 Statistical Graphics Statistical graphics: –projection of abstract shapes representing observed quantitative data –in use for centuries in various forms [Beniger, 1978] –used throughout science and industry in commonly available tools like Excel™ Motivation Related Work InfoVis Time-series Statistical Graphics Reorderable Vis Semantic Zoom Accordion Drawing SWIFT LiveRAC Discussion
20
20 Reorderable Visualizations Supports user-directed pattern finding when patterns are not known a priori [Bertin, 1981] –allows users to group and sort data to identify or confirm patterns –supports an intuition-driven model for interacting with data LiveRAC adds reordering to accordion drawing E.Mäkinen, H. Siirtola. Reordering the Reorderable Matrix as an Algorithmic Problem. Theory and Application of Diagrams. 2000, 453–467. Motivation Related Work InfoVis Time-series Statistical Graphics Reorderable Vis Semantic Zoom Accordion Drawing SWIFT LiveRAC Discussion
21
21 Semantic zooming Semantic zooming represents data differently at different zoom levels [Perlin, 1993] Optimize representation for available space Allow multiple levels of detail R. Bade, S. Schlechtweg, S. Miksch. Connecting Time-Oriented Data and Information to a Coherent Interactive Visualization. CHI 2004, pp 105-112. Motivation Related Work InfoVis Time-series Statistical Graphics Reorderable Vis Semantic Zoom Accordion Drawing SWIFT LiveRAC Discussion
22
22 Accordion Drawing Information visualization technique Stretch-and-squish navigation –enlarge some areas while retaining surrounding context Guaranteed visibility –important landmarks remain visible Munzner, Guimbretiere, Tasiran, Zhou, and Zhang. TreeJuxtaposer: Scalable Tree Comparison using Focus+Context with Guaranteed Visibility. SIGGRAPH 2003, 453-462. Motivation Related Work InfoVis Time-series Statistical Graphics Reorderable Vis Semantic Zoom Accordion Drawing SWIFT LiveRAC Discussion
23
23 PowerSetViewer Dynamic accordion drawing –insert and remove data at run time Limitations: –domain-specific solution –not user-reorderable Qiang Kong. Visual mining of power sets with large alphabets. UBC CS, Master’s thesis, May 2006. Motivation Related Work InfoVis Time-series Statistical Graphics Reorderable Vis Semantic Zoom Accordion Drawing SWIFT LiveRAC Discussion
24
24 PRISAD Introduces the concept of per-frame partitioning of data into screen-visible regions Reduces n data nodes to p where p is bounded by the number of display pixels Provides an API for developing accordion drawing applications Limitation: –static data structures Slack, Hildebrand, and Munzner. Partitioned Rendering Infrastructure for Scalable Accordion Drawing (Extended Version) Information Visualization, 5(2), p. 137-151, 2006. Motivation Related Work InfoVis Time-series Statistical Graphics Reorderable Vis Semantic Zoom Accordion Drawing SWIFT LiveRAC Discussion
25
25 SWIFT SWIFT is a set of data storage, aggregation and visualization tools that integrate multiple data sources [Koutsofios, 1999] Developed at AT&T Labs, fully deployed in a production role Data sources include SNMP, intrusion detection systems, Windows system monitors, and custom written daemons Highly scalable Optimized for streaming data Motivation Related Work InfoVis Time-series Statistical Graphics Reorderable Vis Semantic Zoom Accordion Drawing SWIFT LiveRAC Discussion
26
26 SWIFT Front-ends Koutsofios, North, Truscott, and Keim. Visualizing large-scale telecommunication networks and services. IEEE Visualization 1999, 457-461 Existing views: –Geographic views –Node-link diagrams –Raw data text Limitations: –Cannot compare between large numbers of time- series objects LiveRAC: reorderable matrix visualization for SWIFT Motivation Related Work InfoVis Time-series Statistical Graphics Reorderable Vis Semantic Zoom Accordion Drawing SWIFT LiveRAC Discussion
27
27 LiveRAC Architecture Motivation Related Work LiveRAC Architecture Semantic Zoom Reordering Playback Discussion
28
28 LiveRAC Architecture - PRISAD Uses and enhances the PRISAD accordion drawing API –PRISAD provides: well-established scalability pixel-bounded rendering performance extensive infrastructure Contributions: –fully dynamic generic data structures add, remove and reorder Motivation Related Work LiveRAC Architecture Semantic Zoom Reordering Playback Discussion
29
29 LiveRAC Architecture - SWIFT SWIFT back-end provides: –unified interface for multiple collected data sources –temporal aggregation Separate rendering and data-service threads allow interaction during data retrieval Time window can be selected to display historical or live data Motivation Related Work LiveRAC Architecture Semantic Zoom Reordering Playback Discussion
30
30 Semantic Zooming CPU usage at several levels of detail Motivation Related Work LiveRAC Architecture Semantic Zoom Reordering Playback Discussion
31
31 Variable LOD Charts jGLChartUtil: High- performance OpenGL statistical graphics library Several data representations: –line charts –scatter charts –bar charts –histograms –sparklines Motivation Related Work LiveRAC Architecture Semantic Zoom Reordering Playback Discussion
32
32 Variable LOD Charts Optimizes chart representation for best use of available space –scales fonts –‘best fit’ axis labeling –modifies chart grid Representation and size selected by application, not library Motivation Related Work LiveRAC Architecture Semantic Zoom Reordering Playback Discussion
33
33 Defining Semantic Zoom Levels Bundle: specification of how to draw cells in a column –defines graphical representation at different cell sizes –can contain single or multiple time- series objects –pre-defined in configuration file Generic bundles provide defaults Motivation Related Work LiveRAC Architecture Semantic Zoom Reordering Playback Discussion
34
34 Aggregation At lowest level of detail, multiple rows are aggregated to single visual representation –convey single useful value for large quantity of information Aggregated representation is colored box with varying saturation –for alarms, color indicates highest severity alarm –gray indicates metric data –saturation is a function of density Motivation Related Work LiveRAC Architecture Semantic Zoom Reordering Playback Discussion
35
35 LiveRAC Semantic Zooming Semantic Zooming Video
36
36 Reordering LiveRAC allows rows and columns to be reordered –rows sorted by device name, or by customer identifier and sub-sorted by device name, or ordered arbitrarily –columns ordered arbitrarily, locations specified by user Required significant extensions to PRISAD to provide dynamic data structures Motivation Related Work LiveRAC Architecture Semantic Zoom Reordering Playback Discussion
37
37 Reordering Rows and Columns - Visual Example Motivation Related Work LiveRAC Overview Architecture Dynamic Structure Reordering Aggregation Semantic Zoom Performance Discussion Future Work Conclusion Reordering Video
38
38 LiveRAC Data Playback Playback consists of advancing the time window by a configurable duration at regular intervals Historical data can be viewed faster than real-time Current data can be viewed in real- time Motivation Related Work LiveRAC Architecture Semantic Zoom Reordering Playback Discussion
39
39
40
40 Discussion & Results LiveRAC was deployed using real world data at AT&T Labs LiveRAC proved to be scalable –interactive frame rates 4000+ device rows dozens of performance/alarm columns Motivation Related Work LiveRAC Discussion Results Future Work Conclusion Active regionTime scale# of items Total database3 MonthsMillions In memory<5 seconds80,000 On screen10-15 FPSThousands
41
41 LiveRAC Case Study Case study video
42
42 User Feedback Demo feedback was positive: –users familiar with the old system were able to quickly recognize customers based on familiarity with the data –LiveRAC identified by domain managers as possible next-generation tool for data center usage –users had numerous suggestions for the system, a good indication that they were excited by the possibilities Motivation Related Work LiveRAC Discussion Results Future Work Conclusion
43
43 Future Work Interaction : –field study LiveRAC in real-world environment –support alternative navigation options auto-expanding search region hot-keying groups of devices or metrics –expand data representation library Data processing: –computational correlation of alarm and metric data Performance: –lazy evaluation during reordering Motivation Related Work LiveRAC Discussion Results Future Work Conclusion
44
44 Conclusion Contributions: –working system for interactive visualization of large real-world time-series data sets –algorithms for reorderable accordion drawing –infrastructure for semantic zoom in accordion drawing Motivation Related Work LiveRAC Discussion Results Future Work Conclusion
45
45
46
46
47
47
48
48 Targeted User Activities Overview: –Situational awareness –Critical alarm notification Detail: – Incident investigation – Capacity planning – Trend analysis Motivation Related Work LiveRAC Architecture Visual Encoding Aggregation Semantic Zoom Reordering Playback Discussion Future Work Conclusion
49
49 Monitoring Large-scale Systems: A Difficult Problem Many disparate data sources –Different platforms –Different protocols –Different services –Lack of integrated solutions Lack of context in standard tools Shortage of integrated visualization solutions Motivation Related Work LiveRAC Architecture Visual Encoding Aggregation Semantic Zoom Reordering Playback Discussion Future Work Conclusion
50
50 Semantic Zooming in LiveRAC LiveRAC semantic zooming: –provides an area-aware graphical representation –modifies the graphic to best fit the available space –does not increase or decrease polygon count, or scale a graphic linearly, but changes graphic attributes, and may change the graphic entirely Motivation Related Work LiveRAC Architecture Visual Encoding Aggregation Semantic Zoom Reordering Playback Discussion Future Work Conclusion
51
51 SWIFT Limitations Visualizations for SWIFT only provide node-link and geographic views These views are good for mapping physical relationships Motivation Related Work LiveRAC Architecture Visual Encoding Aggregation Semantic Zoom Reordering Playback Discussion Future Work Conclusion
52
52 SWIFT Architecture Motivation Related Work LiveRAC Overview Architecture Dynamic Structure Reordering Aggregation Semantic Zoom Performance Discussion Future Work Conclusion
53
53 LiveRAC handles rows and columns differently Large number of rows in a typical data view (thousands) Comparatively small number of columns (dozens) Motivation Related Work LiveRAC Overview Architecture Dynamic Structure Reordering Aggregation Semantic Zoom Performance Discussion Future Work Conclusion
54
54 Performance Requirements LiveRAC must maintain interactive frame rates while modifications to the grid are taking place We need to draw guaranteed visible zones first to provide landmarks The system needs to scale to thousands of devices, and tens of categories of monitored alarms & metrics The system must support a large number of data points for alarms & metrics Motivation Related Work LiveRAC Overview Architecture Dynamic Structure Reordering Aggregation Semantic Zoom Performance Discussion Future Work Conclusion
55
55 Split Line Performance Split Line Tree OperationComplexity Find split line boundsO(1) (cached) Find split line by indexO(log n) Find index of nodeO(log n) Insert split lineO(9 log n) Delete split lineO(12 log n) Motivation Related Work LiveRAC Overview Architecture Dynamic Structure Reordering Aggregation Semantic Zoom Performance Discussion Future Work Conclusion
56
56 Charting Performance System: 3Ghz Pentium-IV Chart: 3 data series, 100 points each series –First draw: ~50ms –Subsequent redraws after modification: <5ms –Redraw from cached OpenGL display list: <1ms Motivation Related Work LiveRAC Overview Architecture Dynamic Structure Reordering Aggregation Semantic Zoom Performance Discussion Future Work Conclusion
57
57 Statistical Graphics Line chartBar chart Scatter plotPie chart
58
58 LiveRAC Visual Encoding Matrix view –rows of devices –columns of metrics and alarms: time-series objects –a cell contains a representation for a set of values of any time-series object at highest density, cells are colored boxes at lower densities cells can contain text, or graphical representations Motivation Related Work LiveRAC Architecture Visual Encoding Aggregation Semantic Zoom Reordering Playback Discussion Future Work Conclusion
59
59 Accordion Drawing Split Line Structure Slack. Partitioned Rendering Infrastructure For Stable Accordion Navigation M.Sc. Thesis Split lines Motivation Related Work LiveRAC Overview Architecture Dynamic Structure Reordering Aggregation Semantic Zoom Future Work Conclusion
60
60 Accordion Drawing Split Line Structure Slack. Partitioned Rendering Infrastructure For Stable Accordion Navigation M.Sc. Thesis Motivation Related Work LiveRAC Overview Architecture Dynamic Structure Reordering Aggregation Semantic Zoom Future Work Conclusion
61
61 Static Split Lines Previous accordion drawing implementations used static, ordered lists of split lines Insert, remove and reorder operations were O(n) 01234567 Motivation Related Work LiveRAC Overview Architecture Dynamic Structure Reordering Aggregation Semantic Zoom Performance Discussion Future Work Conclusion
62
62 Dynamic Split Lines Dynamic split lines are required for maintaining interactive frame rates while adding/removing rows or columns to the matrix Client-server streaming architecture implies that new devices, alarms and metrics will be a common occurrence Dynamic split lines support reordering of data In the future, direct user modification of the data set can be supported Motivation Related Work LiveRAC Overview Architecture Dynamic Structure Reordering Aggregation Semantic Zoom Performance Discussion Future Work Conclusion
63
63 Dynamic Split Line Requirements Requirements: –Worst case logarithmic insert and remove operations –O(log n) worst case path to any node from the root –Linear scalability in memory usage –Support for arbitrary ordering with enumeration Can we use a red-black tree? –Red-black trees address the first three requirements –How can we avoid re-enumeration of keys if we allow nodes to be manipulated arbitrarily? Motivation Related Work LiveRAC Overview Architecture Dynamic Structure Reordering Aggregation Semantic Zoom Performance Discussion Future Work Conclusion
64
64 Dynamic Split Lines: Solution Solution: Maintain sub-tree sizes Find: node index 3 3 < (3+1), descend left 3 > (1 + 1), descend right found index 3 Motivation Related Work LiveRAC Overview Architecture Dynamic Structure Reordering Aggregation Semantic Zoom Performance Discussion Future Work Conclusion 1 2 3 4 5
65
65 Reordering Rows and Columns: Implementation For rows, we can swap pointers from split lines to devices without changing the split line structure –O(1) –Preserves layout topology For columns, we use a global ordering list, mapping a bundle/metric/alarm name to an index number, changes to this list affects rendering of all columns –A hash map is maintained to back map column name to index numbers for O(1) lookups during rendering, this must also be fixed during a reorder –Swapping columns is O(c), where c is the number of columns, typically < 100 Motivation Related Work LiveRAC Overview Architecture Dynamic Structure Reordering Aggregation Semantic Zoom Performance Discussion Future Work Conclusion
66
66
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.