Presentation is loading. Please wait.

Presentation is loading. Please wait.

Live Reorderable Accordion Drawing (LiveRAC) Peter McLachlan MSc Thesis Presentation September, 2006.

Similar presentations


Presentation on theme: "Live Reorderable Accordion Drawing (LiveRAC) Peter McLachlan MSc Thesis Presentation September, 2006."— Presentation transcript:

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


Download ppt "Live Reorderable Accordion Drawing (LiveRAC) Peter McLachlan MSc Thesis Presentation September, 2006."

Similar presentations


Ads by Google