1 / 28

Automatic and Dynamic Accuracy Management and Resource Provisioning in A Cloud Environment

Smita Vijayakumar Qian Zhu Gagan Agrawal. Automatic and Dynamic Accuracy Management and Resource Provisioning in A Cloud Environment. Background Data Streams Virtualization Dynamic Resource Allocation Accuracy Adaptation Research Goals CPU Resource Allocation Accuracy Management

inoke
Download Presentation

Automatic and Dynamic Accuracy Management and Resource Provisioning in A Cloud Environment

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Smita Vijayakumar Qian Zhu Gagan Agrawal Automatic and Dynamic Accuracy Management and Resource Provisioning in A Cloud Environment

  2. Background Data Streams Virtualization Dynamic Resource Allocation Accuracy Adaptation Research Goals CPU Resource Allocation Accuracy Management Experimental Evaluation Conclusion Outline

  3. Data Streams • Sequence of data packets in transmission • Example • Live Camera Captures, Stock Markets, Video Streaming Applications, etc • Require Real-Time Analysis

  4. Data Stream Processing on Clouds and VMs • Why Clouds for Streaming Apps • Pay-as-you model • Meet dynamically varying demand • Clouds are based on Virtual Machines • Software implementation of a machine that executes programs • Hides hardware and software heterogeneity • CPU can be shared between VMs • Modes of Operation • Capped Mode • Non-Capped Mode

  5. Resource Allocation: Guiding Principles • Pay-as-you-go • Automatic Resource Allocation • Dynamic Resource Allocation • Both varying Data Rates and Characteristics affect resource requirement • Amount of Data and its Complexity determine CPU requirement

  6. Research Goals • Framework for providing Accuracy and Resource Management in Cloud Environment • Accuracy Management • Convergence to application-specific accuracy goal • Maintain user-specified accuracy requirement for the entire duration of run • CPU Management • Converge to near -optimal resource allocation by constant monitoring of load characteristics

  7. An Adaptive Application:Average of Input Stream • Random stream of integers • Application considers every third integer in the stream to compute average • Adaptive Parameter,sample = 1/3 • If higher accuracy is desired, sample can be set to ½ or 1 • But then, that requires more CPU resources 1 2 7 4 2 5 8 2 6 8 0 4 3 4 8 2 2 6 7 3 4 3 1 3 6 8 3 2 5 9 9 3 4 6 8 .. 1 2 7 4 2 5 8 2 6 8 0 4 3 4 8 2 2 6 7 3 4 3 1 3 6 8 3 2 5 9 9 3 4 6 8 ..

  8. Accuracy in Data Stream Processing • Accuracy-specific processing: User-defined processing accuracy should be met • Accuracy changes according to input Data Characteristics • Requires correspondingResource Allocations • Final cost determined by amount of resources allocated over time

  9. Calculating Current Application Accuracy • Application developer provides Accuracy Function • Many methods of calculating accuracy: • Method of direct comparisonwith input data • Not always viable • Method of correlation with more fine-grained processing • Process data with current adaptive parameters • Process same data set with adaptive parameter set to greater accuracy • Compare results

  10. Example of Accuracy in Adaptive Application • Process batch with current value sample =1/3 • For same data set • Setsample = 1and find new average • Accuracy = f(avg, higher_avg) • If Accuracy < Accuracy Goal, setsample = 1/2 • Repeat adapting sample 1 2 7 4 2 5 8 2 6 8 0 4 3 4 8 2 2 6 7 3 4 3 1 3 6 8 3 2 5 9 9 3 4 6 8 .. 127425826804348226734313683 25993468 ..

  11. Background Research Goals CPU Resource Allocation Accuracy Management Experimental Evaluation Conclusion Outline

  12. CPU Allocation Algorithm • Monitor current load statistics • Buffer Write Time • Processing Time • Time-Averaged rates • Average data rate over a time window • Update CPU allocation • Time- Averaged pattern indicates decrease or increase in data flow • Continuous Monitoring and Action • Arrive at most optimal CPU Allocation

  13. CPU Allocation Algorithm • Resource Allocation Adjustments: • Coarse Multiplicative Increase • Fine Linear Increase • Fine Linear Decrease • Coarse Linear Decrease • Inspired by TCP Congestion Control

  14. CPU Allocation Algorithm Yes Met Accuracy Goal? Met Allocation Needs? No Yes Adjust CPU Allocation No Sleep and awaken periodically

  15. Background Research Goals CPU Resource Allocation Accuracy Management Experimental Evaluation Conclusion Outline

  16. Accuracy Management • Checks periodically for accuracy level • Re-computes application accuracy • If less than specified value then • Adjust adaptive parameters • Repeat • Once target accuracy is achieved, wakes up periodically

  17. Accuracy Adaptation: Design Get Current Application Accuracy Met Accuracy Goal? No Adjust Adaptive Parameters Yes Sleep and awaken periodically

  18. Interaction between Components • Process Data Block • If baseline accuracy not met • Accuracy Module adapts till accuracy is met • State: Accuracy Met • Else, periodically monitor accuracy • Periodically CPU Manager wakes up • Checks if accuracy goal is met • Checks CPU resource allocation

  19. Research Objectives Introduction to Cost Framework CPU Resource Allocation Accuracy Management Experimental Evaluation Static Experiments Dynamic Experiments Conclusion Outline

  20. Experimental Focus • Experiments • Static Experiments • Constant Data Rate And Characteristics • Dynamic Experiments • Varying Data Rates and/or Characteristics • Process • Accuracy Adaptation to User-Specified Accuracy • CPU Convergence to near-optimal Allocation

  21. Streaming Applications • Multi-staged pipelined processing • Two streaming applications considered: • CluStream • Intermediate Microclustering of data • Approx-Freq-Counts • Mining most frequently seen itemset within permissible error

  22. Experimental Setup • Virtualization Technology: Xen • Ideal CPU Usage: Xentop • Applications initialized to values corresponding to least accuracy • Communication between management node and processing nodes using UDP

  23. CluStream Static Accuracy Adaptation Accuracy Adaptation for 1.2MBps and 6MBps data rates

  24. CluStream Static Accuracy Adaptation Ideal CPU Load: 74% Average CPU Allocated: 76.0% Ideal CPU Load: 54% Average CPU Allocated: 55.4% Accuracy and CPU Allocation Adaptation for 1.2MBps and 6MBps data rates

  25. Approx-Freq-Counts Dynamic Accuracy Adaptation Spread Distb Sharp Distb Spread Distb

  26. Approx-Freq-Counts Dynamic Accuracy Adaptation Slow Data Rate Slow Data Rate Fast Data Rate

  27. A framework for automatically and dynamically managing resource allocations on cloud environments Eliminates manual intervention Ensures user-specified accuracy is maintained Converges to near-optimal resource allocation Adapts to varying data stream characteristics Low Overheads: Within 2% ideal resource allocation Conclusion

  28. Thank You!smitav@juniper.netagrawal@cse.ohio-state.edu

More Related