skip to main content
article

Reactive provisioning of backend databases in shared dynamic content server clusters

Published:01 December 2006Publication History
Skip Abstract Section

Abstract

This paper introduces a self-configuring architecture for on-demand resource allocation to applications in a shared database cluster. We use a unified approach to load and fault management based on data replication and reactive replica provisioning. While data replication provides scaling and high availability, reactive provisioning dynamically allocates additional replicas to applications in response to peak loads or failure conditions, thus providing per application performance. We design an efficient method for data migration when joining a new replica to a running application that allows for the quick addition of replicas with minimal disruption of transaction processing. Furthermore, by augmenting the adaptation feedback loop with awareness of the delay introduced by the data migration process in our replicated system, we avoid oscillations in resource allocation.We investigate our transparent database provisioning mechanisms in the context of multitier dynamic content Web servers. We dynamically expand/contract the respective allocations within the database tier for two different applications, the TPC-W e-commerce benchmark and the RUBIS online auction benchmark. We demonstrate that our techniques provide quality of service under different load and failure scenarios.

References

  1. Amza, C., Cecchet, E., Chanda, A., Cox, A., Elnikety, S., Gil, R., Marguerite, J., Rajamani, K., and Zwaenepoel, W. 2002. Specification and implementation of dynamic web site benchmarks. In 5th IEEE Workshop on Workload Characterization.]]Google ScholarGoogle Scholar
  2. Amza, C., Cox, A., and Zwaenepoel, W. 2003a. Conflict-aware scheduling for dynamic content applications. In Proceedings of the 5th USENIX Symposium on Internet Technologies and Systems. 71--84.]] Google ScholarGoogle Scholar
  3. Amza, C., Cox, A., and Zwaenepoel, W. 2005. A comparative evaluation of transparent scaling techniques for dynamic content servers. In Proceedings of the 21st International Conference Data Engineering (ICDE'05). 230--241.]] Google ScholarGoogle Scholar
  4. Amza, C., Cox, A. L., and Zwaenepoel, W. 2003b. Distributed versioning: Consistent replication for scaling backend databases of dynamic content web sites. In Lecture Notes in Computer Science, vol. 2672. M. Endler and D. C. Schmidt, Eds., Springer, 282--304.]]Google ScholarGoogle Scholar
  5. Apache. The Apache Software Foundation. http://www.apache.org/.]]Google ScholarGoogle Scholar
  6. Bennani, M. N. and Menascé, D. A. 2005. Resource allocation for autonomic data centers using analytic performance models. In IEEE International Conference on Autonomic Computing (ICAC'05). 62--69.]] Google ScholarGoogle Scholar
  7. Bernstein, P., Hadzilacos, V., and Goodman, N. 1987. Concurrency control and recovery in Database Systems. Addison-Wesley, Reading, MA.]] Google ScholarGoogle Scholar
  8. Boral, H., Alexander, W., Clay, L., Copeland, G., Danforth, S., Franklin, M., Hart, B., Smith, M., and Valduriez, P. 1990. Prototyping Bubba, a highly parallel database system. In IEEE Trans. Knowl. Data Engin. 2, 4--24.]] Google ScholarGoogle Scholar
  9. Cecchet, E., Marguerite, J., and Zwaenepoel, W. 2004. C-jdbc: Flexible database clustering middleware. In Proceedings of the USENIX Annual Technical Conference.]] Google ScholarGoogle Scholar
  10. Cohen, I., Chase, J. S., Goldszmidt, M., Kelly, T., and Symons, J. 2004. Correlating instrumentation data to system states: A building block for automated diagnosis and control. In Proceedings of the 6th Symposium on Operating System Design and Implementation (OSDI'04). 231--244.]] Google ScholarGoogle Scholar
  11. Daudjee, K. and Salem, K. 2004. Lazy database replication with ordering guarantees. In 20th International Conference on Data Engineering, Boston, MA.]] Google ScholarGoogle Scholar
  12. Diao, Y., Hellerstein, J. L., and Parekh, S. 2002. Optimizing quality of service using fuzzy control. In Proceedings of the 13th IFIP/IEEE International Workshop on Distributed Systems: Operations and Management. Springer-Verlag, 42--53.]] Google ScholarGoogle Scholar
  13. Goyal, P., Guo, X., and Vin, H. M. 1996. A Hierarchical CPU scheduler for multimedia operating system. In Proceedings of the 2nd USENIX Symposium on Operating Systems Design and Implementation. Seattle, WA.]] Google ScholarGoogle Scholar
  14. Gray, J., Helland, P., O'Neil, P., and Shasha, D. 1996. The dangers of replication and a solution. In Proceedings of the ACM SIGMOD International Conference on Management of Data. Montreal, Quebec, Canada, H. V. Jagadish and I. S. Mumick, Eds., ACM Press, New York, NY, 173--182.]] Google ScholarGoogle Scholar
  15. Guy, R., Reiher, P., Rather, D., and Gunter, M. 1999. Rumor: Mobile data access through optimistic peer-to-peer replication. Lecture Notes in Computer Science, vol. 1552, 254--265.]] Google ScholarGoogle Scholar
  16. Hutchinson, N., Manley, S., Federwisch, M., Harris, G., Hitz, D., Kleiman, S., and O'Malley, S. 1999. Logical vs. physical file system backup. In Proceedings of the 3rd USENIX Symposium on Operating System Design and Implementation. 239--249.]] Google ScholarGoogle Scholar
  17. IBM Corporation. 2003a. Autonomic computing manifesto. http://www.research.ibm.com/autonomic/manifesto.]]Google ScholarGoogle Scholar
  18. IBM Corporation. 2003b. Automated provisioning of resources for data center environments. http://www-306.ibm.com/software/tivoli/solutions/provisioning/.]]Google ScholarGoogle Scholar
  19. Karve, A., Kimbrel, T., Pacifici, G., Spreitzer, M., Steinder, M., Sviridenko, M., and Tantawi, A. 2006. Dynamic placement for clustered web applications. In Proceedings of the 15th International Conference on World Wide Web (WWW'06) ACM Press, New York, NY, 595--604.]] Google ScholarGoogle Scholar
  20. Kemme, B. and Alonso, G. 2000a. A new approach to developing and implementing eager database replication protocols. In ACM Trans. DataB. Syst. 25, 333--379.]] Google ScholarGoogle Scholar
  21. Kemme, B. and Alonso, G. 2000b. Don't be lazy, be consistent: Postgres-R, a new way to implement Database Replication. In Proceedings of the 26th International Conference on Very Large Databases.]] Google ScholarGoogle Scholar
  22. Kemme, B., Bartoli, A., and Babaoglu, Ö. 2001. Online reconfiguration in replicated databases based on group communication. In Proceedings of the International Conference on Dependable Systems and Networks (DSN'01). 117--130.]] Google ScholarGoogle Scholar
  23. Li, B. and Nahrstedt, K. 1999. A control-based middleware framework for quality of service adaptations. IEEE J. Select. Areas Comm..]]Google ScholarGoogle Scholar
  24. Lin, Y., Kemme, B., Patiño-Martínez, M., and Jiménez-Peris, R. 2005. Middleware-based data replication providing snapshot isolation. In Proceedings of the ACM SIGMOD Conference (SiGMOD'05), F. Ozcan, Ed. ACM, Press, New York, NY. 419--430.]] Google ScholarGoogle Scholar
  25. Menasce;, D. A., Barbara;, D., and Dodge, R. 2001. Preserving QoS of e-commerce sites through self-tuning: A performance model approach. In Proceedings of the 3rd ACM Conference on Electronic Commerce. ACM Press, New York, NY. 224--234.]] Google ScholarGoogle Scholar
  26. Milan-Franco, J. M., Jimenez-Peris, R., Patio-Martnez, M., and Kemme, B. 2004. Adaptive middleware for data replication. In Proceedings of the 5th ACM/IFIP/USENIX International Middleware Conference.]] Google ScholarGoogle Scholar
  27. MySQL. MySQL. http://www.mysql.com.]]Google ScholarGoogle Scholar
  28. ORACLE. Oracle Real Application Clusters 10g. http://www.oracle.com/technology/products/database/clustering/.]]Google ScholarGoogle Scholar
  29. Parekh, J., Jung, G., Pu, G. S. C., and Sahai, A. 2006. Improving performance of internet services through reward-driven request prioritization. In Proceedings of the 14th IEEE International Workshop on Quality of Service (IWQoS'06).]]Google ScholarGoogle Scholar
  30. Plattner, C. and Alonso, G. 2004. Ganymed: Scalable replication for transactional Web applications. In Proceedings of the 5th ACM/IFIP/Usenix International Middleware Conference.]] Google ScholarGoogle Scholar
  31. Ranjan, S., Rolia, J., Fu, H., and Knightly, E. 2002. QoS-driven server migration for internet data centers. In 10th International Workshop on Quality of Service.]]Google ScholarGoogle Scholar
  32. Shen, K., Yang, T., Chu, L., Holliday, J. L., Kuschner, D., and Zhu, H. 2001. Neptune: Scalable replica management and programming support for cluster-based network services. In Proceedings of the 3rd USENIX Symposium on Internet Technologies and Systems. 207--216.]] Google ScholarGoogle Scholar
  33. Sivasubramanian, S., Alonso, G., Pierre, G., and van Steen, M. 2005. Globedb: autonomic data replication for Web Applications. In Proceedings of the 14th International World Wide Web Conference (WWW'05), A. Ellis and T. Hagino, Eds. ACM, Press, New York, NY. 33--42.]] Google ScholarGoogle Scholar
  34. Slashdoteffect. Slashdot: Handling the loads on 9/11. http://slashdot.org.]]Google ScholarGoogle Scholar
  35. Soundararajan, G., Amza, C., and Goel, A. 2006. Database replication policies for dynamic content applications. In EuroSys'06: Proceedings of the EuroSys Conference (EUROSYS'06). ACM, Press, New York, NY. 89--102.]] Google ScholarGoogle Scholar
  36. Steere, D. C., Goel, A., Gruenberg, J., McNamee, D., Pu, C., and Walpole, J. 1999. A Feedback-driven proportion allocator for real-rate scheduling. In Proceedings of the 3rd USENIX Symposium on Operating Systems Design and Implementation.]] Google ScholarGoogle Scholar
  37. Terry, D. B., Theimer, M. M., Petersen, K., Demers, A. J., Spreitzer, M. J., and Hauser, C. H. 1995. Managing update conflicts in bayou, a weakly connected replicated storage system. In Proceedings of the 15th Symposium on Operating Systems Principles. Cooper Mountain, CO. 172--183. http://www.parc.xerox.com/bayou/.]] Google ScholarGoogle Scholar
  38. Tesauro, G., Das, R., Jong, N., and Bennani, M. 2006. A hybrid reinforcement learning approach to autonomic resource allocation. In Proceedings of the 3rd International Conference on Autonomic Computing (ICAC'06).]] Google ScholarGoogle Scholar
  39. Tesauro, G., Das, R., Walsh, W. E., and Kephart, J. O. 2005. Utility-function-driven resource allocation in autonomic systems. In Proceedings of the 2nd IEEE International Conference on Autonomic Computing (ICAC'05). 70--77.]] Google ScholarGoogle Scholar
  40. Totok, A. and Karamcheti, V. 2006. Issues in bottleneck detection in multitier enterprise applications. In IWQoS 2006: Proceedings of the 14th IEEE International Workshop on Quality of Service (IWQS'06).]]Google ScholarGoogle Scholar
  41. TPC. Transaction Processing Council. http://www.tpc.org/.]]Google ScholarGoogle Scholar
  42. Walsh, W. E., Tesauro, G., Kephart, J. O., and Das, R. 2004. Utility functions in autonomic systems. In Proceedings of the 1st International Conference on Autonomic Computing (ICACS'04).]] Google ScholarGoogle Scholar
  43. Weikum, G. and Vossen, G. 2002. Transactional Information Systems. Theory, Algorithms and the Practice of Concurrency Control and Recovery, 2nd Ed. Addison-Wesley, Reading, MA.]] Google ScholarGoogle Scholar
  44. Welsh, M. and Culler, D. 2003. Adaptive overload control for busy internet servers. In Proceedings of the 5th USENIX Symposium on Internet Technologies and Systems.]] Google ScholarGoogle Scholar
  45. Woodside, M., Zheng, T., and Litoiu, M. 2006. Service system resource management based on a tracked layered performance model. In Proceedings of the 3rd International Conference on Autonomic Computing (ICAC'06). 123--133.]] Google ScholarGoogle Scholar
  46. Wu, S. and Kemme, B. 2005. Postgres-r(si): Combining replica control with concurrency control based on snapshot isolation. In Proceedings of the 21st International Conference on Data Engineering (ICDE'05). 422--433.]] Google ScholarGoogle Scholar

Index Terms

  1. Reactive provisioning of backend databases in shared dynamic content server clusters

            Recommendations

            Comments

            Login options

            Check if you have access through your login credentials or your institution to get full access on this article.

            Sign in

            Full Access

            • Published in

              cover image ACM Transactions on Autonomous and Adaptive Systems
              ACM Transactions on Autonomous and Adaptive Systems  Volume 1, Issue 2
              December 2006
              147 pages
              ISSN:1556-4665
              EISSN:1556-4703
              DOI:10.1145/1186778
              Issue’s Table of Contents

              Copyright © 2006 ACM

              Publisher

              Association for Computing Machinery

              New York, NY, United States

              Publication History

              • Published: 1 December 2006
              Published in taas Volume 1, Issue 2

              Permissions

              Request permissions about this article.

              Request Permissions

              Check for updates

              Qualifiers

              • article

            PDF Format

            View or Download as a PDF file.

            PDF

            eReader

            View online with eReader.

            eReader
            About Cookies On This Site

            We use cookies to ensure that we give you the best experience on our website.

            Learn more

            Got it!