SlideShare une entreprise Scribd logo
1  sur  15
Télécharger pour lire hors ligne
A Personal Assistant for Web
     Database Caching



    Beat Signer, signer@inf.ethz.ch
    Institute for Information Systems
                ETH Zurich
Overview

•   Motivation
•   Internet OMS architecture
•   Personal Assistant
•   Cache architecture
•   Performance measurements
•   Conclusion
Motivation

• Lack of most browsers to cache dynamically
  generated web pages
• Cooperative client, middle layer and server caches
  to improve performance
• Reduction of query response times by better
  usage of the available resources
Internet OMS Architecture

                         Web Browser

                         Front-End Agent           Session Cache



                              Personal Assistant   Active Cache

Internet
                                

           HTTP Server   Database Agent            Global Cache



                              OMS
                             Database
Cache Requirements

•   Reduction of response times (latency)
•   Reduction of idle times (e.g. modem connection)
•   Cache consistency
•   Persistence
•   Flexibility (different user skills)
•   Active caching component (local prefetching)
•   Small overhead to maintain cache
•   Optimal usage of available cache resource
Personal Assistant Cache Structure

           Personal Assistant Cache   Persistent Client Cache


                  Session Cache       Short-Term Cache
           query results     images    passive
                                       priority 3
disjoint




                 Personal Cache       Explicit User Specified Objects
           query results     images    permanent
                                       passive
                                       priority 1
                Prefetching Cache     Long-Term Cache
           query results     images    user profile
                                       active
                                       priority 2
Prefetching Cache Statistics

                 LRUB-Cache (fixed size)



  query 1        query 2                    query n



   statistic      statistic                  statistic
 next query 1   next query 1               next query 1
 next query 2   next query 2               next query 2
 next query 3   next query 3               next query 3   LRUB-Cache
                                                           (fixed size)
     ....



                    ....




                                               ....
 next query n   next query n               next query n
Cache Replacement Strategy

• Least recently used (LRU)
• Introduce bonus for entries often used in the past
  but not accessed recently  LRUB
• Weight for cache entry i defined as follows:
                      (1   ) H i
       weight i                       , 0  1
                           Ti

      H i : Number of hits for cache entry i
      Ti : Time since last access of cache entry i
Advantages of Adaptive Prefetching

                 • Assumption: global cache of
                   size 4 for most frequently
                   used queries  which of the
           q5      6 “hot queries” should be
      q2           cached?
           q6

 q1   q3
           q7
                 • Adaptive prefetching 
                   sliding window mechanism,
      q4   q8      i.e. cache of size 2 is
           q9
                   sufficient!
Cache Administration Tools
Average Response Times


                      Average Time Worst Case                                                   Average Time Best Case


           5000                                                                     5000
           4500                                                                     4500
           4000                                                                     4000
           3500                                                                     3500




                                                                         time[ms]
                                                                                    3000
time[ms]




           3000
           2500                                                                     2500
           2000                                                                     2000
           1500                                                                     1500
           1000                                                                     1000
            500                                                                      500
              0                                                                        0
                   Total Time        Query Time         Image Time                          Total Time        Query Time         Image Time


                  Without Personal Assistant   With Personal Assistant                     Without Personal Assistant   With Personal Assistant
Image Response Times


                   Average Image Time Worst Case                                               Average Image Time Best Case

           5000                                                                       5000
           4500                                                                       4500
           4000                                                                       4000
           3500                                                                       3500
time[ms]




                                                                           time[ms]
           3000                                                                       3000
           2500                                                                       2500
           2000                                                                       2000
           1500                                                                       1500
           1000                                                                       1000
            500                                                                        500
              0                                                                          0
                  Without Personal Assistant     With Personal Assistant                     Without Personal Assistant     With Personal Assistant

                             User 1    User 2   User 3   User 4                                         User 1    User 2   User 3   User 4
Cache Hit Rates

• Increased hit rate even in worst case scenario
  (due to larger caches)
• Front-end agent profits from locality of queries in
  best case scenario

                                Worst Case           Best Case

                             queries   images     queries   images
        Front-End Agent         13%          4%      33%         29%
        Personal Assistant      29%      28%         75%         68%
Conclusion

• Advantages
     increased cache hit rate
     reduced response times
     adaptation to individual users
     easy to use (transparent)
     prefetching statistic always up to date

• Costs
   database agent eventually has to handle an
    increased number of queries (prefetching) 
    increased server loads
   overhead to maintain cache consistency
Future Work

• Use similiar prefetching techniques to build an
  HTTP caching proxy
• First prototype running at gordon.inf.ethz.ch:9090

Contenu connexe

Plus de Beat Signer

Case Studies and Course Review - Lecture 12 - Information Visualisation (4019...
Case Studies and Course Review - Lecture 12 - Information Visualisation (4019...Case Studies and Course Review - Lecture 12 - Information Visualisation (4019...
Case Studies and Course Review - Lecture 12 - Information Visualisation (4019...Beat Signer
 
Dashboards - Lecture 11 - Information Visualisation (4019538FNR)
Dashboards - Lecture 11 - Information Visualisation (4019538FNR)Dashboards - Lecture 11 - Information Visualisation (4019538FNR)
Dashboards - Lecture 11 - Information Visualisation (4019538FNR)Beat Signer
 
Interaction - Lecture 10 - Information Visualisation (4019538FNR)
Interaction - Lecture 10 - Information Visualisation (4019538FNR)Interaction - Lecture 10 - Information Visualisation (4019538FNR)
Interaction - Lecture 10 - Information Visualisation (4019538FNR)Beat Signer
 
View Manipulation and Reduction - Lecture 9 - Information Visualisation (4019...
View Manipulation and Reduction - Lecture 9 - Information Visualisation (4019...View Manipulation and Reduction - Lecture 9 - Information Visualisation (4019...
View Manipulation and Reduction - Lecture 9 - Information Visualisation (4019...Beat Signer
 
Visualisation Techniques - Lecture 8 - Information Visualisation (4019538FNR)
Visualisation Techniques - Lecture 8 - Information Visualisation (4019538FNR)Visualisation Techniques - Lecture 8 - Information Visualisation (4019538FNR)
Visualisation Techniques - Lecture 8 - Information Visualisation (4019538FNR)Beat Signer
 
Design Guidelines and Principles - Lecture 7 - Information Visualisation (401...
Design Guidelines and Principles - Lecture 7 - Information Visualisation (401...Design Guidelines and Principles - Lecture 7 - Information Visualisation (401...
Design Guidelines and Principles - Lecture 7 - Information Visualisation (401...Beat Signer
 
Data Processing and Visualisation Frameworks - Lecture 6 - Information Visual...
Data Processing and Visualisation Frameworks - Lecture 6 - Information Visual...Data Processing and Visualisation Frameworks - Lecture 6 - Information Visual...
Data Processing and Visualisation Frameworks - Lecture 6 - Information Visual...Beat Signer
 
Data Presentation - Lecture 5 - Information Visualisation (4019538FNR)
Data Presentation - Lecture 5 - Information Visualisation (4019538FNR)Data Presentation - Lecture 5 - Information Visualisation (4019538FNR)
Data Presentation - Lecture 5 - Information Visualisation (4019538FNR)Beat Signer
 
Analysis and Validation - Lecture 4 - Information Visualisation (4019538FNR)
Analysis and Validation - Lecture 4 - Information Visualisation (4019538FNR)Analysis and Validation - Lecture 4 - Information Visualisation (4019538FNR)
Analysis and Validation - Lecture 4 - Information Visualisation (4019538FNR)Beat Signer
 
Data Representation - Lecture 3 - Information Visualisation (4019538FNR)
Data Representation - Lecture 3 - Information Visualisation (4019538FNR)Data Representation - Lecture 3 - Information Visualisation (4019538FNR)
Data Representation - Lecture 3 - Information Visualisation (4019538FNR)Beat Signer
 
Human Perception and Colour Theory - Lecture 2 - Information Visualisation (4...
Human Perception and Colour Theory - Lecture 2 - Information Visualisation (4...Human Perception and Colour Theory - Lecture 2 - Information Visualisation (4...
Human Perception and Colour Theory - Lecture 2 - Information Visualisation (4...Beat Signer
 
Introduction - Lecture 1 - Information Visualisation (4019538FNR)
Introduction - Lecture 1 - Information Visualisation (4019538FNR)Introduction - Lecture 1 - Information Visualisation (4019538FNR)
Introduction - Lecture 1 - Information Visualisation (4019538FNR)Beat Signer
 
Towards a Framework for Dynamic Data Physicalisation
Towards a Framework for Dynamic Data PhysicalisationTowards a Framework for Dynamic Data Physicalisation
Towards a Framework for Dynamic Data PhysicalisationBeat Signer
 
Cross-Media Information Spaces and Architectures (CISA)
Cross-Media Information Spaces and Architectures (CISA)Cross-Media Information Spaces and Architectures (CISA)
Cross-Media Information Spaces and Architectures (CISA)Beat Signer
 
Cross-Media Document Linking and Navigation
Cross-Media Document Linking and NavigationCross-Media Document Linking and Navigation
Cross-Media Document Linking and NavigationBeat Signer
 
An Analysis of Cross-Document Linking Mechanisms
An Analysis of Cross-Document Linking MechanismsAn Analysis of Cross-Document Linking Mechanisms
An Analysis of Cross-Document Linking MechanismsBeat Signer
 
Crossing Spaces: Towards Cross-Media Personal Information Management User Int...
Crossing Spaces: Towards Cross-Media Personal Information Management User Int...Crossing Spaces: Towards Cross-Media Personal Information Management User Int...
Crossing Spaces: Towards Cross-Media Personal Information Management User Int...Beat Signer
 
Designing Prosthetic Memory: Audio or Transcript, That is the Question
Designing Prosthetic Memory: Audio or Transcript, That is the QuestionDesigning Prosthetic Memory: Audio or Transcript, That is the Question
Designing Prosthetic Memory: Audio or Transcript, That is the QuestionBeat Signer
 
Introduction - Lecture 1 - Advanced Topics in Information Systems (4016792ENR)
Introduction - Lecture 1 - Advanced Topics in Information Systems (4016792ENR)Introduction - Lecture 1 - Advanced Topics in Information Systems (4016792ENR)
Introduction - Lecture 1 - Advanced Topics in Information Systems (4016792ENR)Beat Signer
 
Bespoke Map Customization Behavior and Its Implications for the Design of Mul...
Bespoke Map Customization Behavior and Its Implications for the Design of Mul...Bespoke Map Customization Behavior and Its Implications for the Design of Mul...
Bespoke Map Customization Behavior and Its Implications for the Design of Mul...Beat Signer
 

Plus de Beat Signer (20)

Case Studies and Course Review - Lecture 12 - Information Visualisation (4019...
Case Studies and Course Review - Lecture 12 - Information Visualisation (4019...Case Studies and Course Review - Lecture 12 - Information Visualisation (4019...
Case Studies and Course Review - Lecture 12 - Information Visualisation (4019...
 
Dashboards - Lecture 11 - Information Visualisation (4019538FNR)
Dashboards - Lecture 11 - Information Visualisation (4019538FNR)Dashboards - Lecture 11 - Information Visualisation (4019538FNR)
Dashboards - Lecture 11 - Information Visualisation (4019538FNR)
 
Interaction - Lecture 10 - Information Visualisation (4019538FNR)
Interaction - Lecture 10 - Information Visualisation (4019538FNR)Interaction - Lecture 10 - Information Visualisation (4019538FNR)
Interaction - Lecture 10 - Information Visualisation (4019538FNR)
 
View Manipulation and Reduction - Lecture 9 - Information Visualisation (4019...
View Manipulation and Reduction - Lecture 9 - Information Visualisation (4019...View Manipulation and Reduction - Lecture 9 - Information Visualisation (4019...
View Manipulation and Reduction - Lecture 9 - Information Visualisation (4019...
 
Visualisation Techniques - Lecture 8 - Information Visualisation (4019538FNR)
Visualisation Techniques - Lecture 8 - Information Visualisation (4019538FNR)Visualisation Techniques - Lecture 8 - Information Visualisation (4019538FNR)
Visualisation Techniques - Lecture 8 - Information Visualisation (4019538FNR)
 
Design Guidelines and Principles - Lecture 7 - Information Visualisation (401...
Design Guidelines and Principles - Lecture 7 - Information Visualisation (401...Design Guidelines and Principles - Lecture 7 - Information Visualisation (401...
Design Guidelines and Principles - Lecture 7 - Information Visualisation (401...
 
Data Processing and Visualisation Frameworks - Lecture 6 - Information Visual...
Data Processing and Visualisation Frameworks - Lecture 6 - Information Visual...Data Processing and Visualisation Frameworks - Lecture 6 - Information Visual...
Data Processing and Visualisation Frameworks - Lecture 6 - Information Visual...
 
Data Presentation - Lecture 5 - Information Visualisation (4019538FNR)
Data Presentation - Lecture 5 - Information Visualisation (4019538FNR)Data Presentation - Lecture 5 - Information Visualisation (4019538FNR)
Data Presentation - Lecture 5 - Information Visualisation (4019538FNR)
 
Analysis and Validation - Lecture 4 - Information Visualisation (4019538FNR)
Analysis and Validation - Lecture 4 - Information Visualisation (4019538FNR)Analysis and Validation - Lecture 4 - Information Visualisation (4019538FNR)
Analysis and Validation - Lecture 4 - Information Visualisation (4019538FNR)
 
Data Representation - Lecture 3 - Information Visualisation (4019538FNR)
Data Representation - Lecture 3 - Information Visualisation (4019538FNR)Data Representation - Lecture 3 - Information Visualisation (4019538FNR)
Data Representation - Lecture 3 - Information Visualisation (4019538FNR)
 
Human Perception and Colour Theory - Lecture 2 - Information Visualisation (4...
Human Perception and Colour Theory - Lecture 2 - Information Visualisation (4...Human Perception and Colour Theory - Lecture 2 - Information Visualisation (4...
Human Perception and Colour Theory - Lecture 2 - Information Visualisation (4...
 
Introduction - Lecture 1 - Information Visualisation (4019538FNR)
Introduction - Lecture 1 - Information Visualisation (4019538FNR)Introduction - Lecture 1 - Information Visualisation (4019538FNR)
Introduction - Lecture 1 - Information Visualisation (4019538FNR)
 
Towards a Framework for Dynamic Data Physicalisation
Towards a Framework for Dynamic Data PhysicalisationTowards a Framework for Dynamic Data Physicalisation
Towards a Framework for Dynamic Data Physicalisation
 
Cross-Media Information Spaces and Architectures (CISA)
Cross-Media Information Spaces and Architectures (CISA)Cross-Media Information Spaces and Architectures (CISA)
Cross-Media Information Spaces and Architectures (CISA)
 
Cross-Media Document Linking and Navigation
Cross-Media Document Linking and NavigationCross-Media Document Linking and Navigation
Cross-Media Document Linking and Navigation
 
An Analysis of Cross-Document Linking Mechanisms
An Analysis of Cross-Document Linking MechanismsAn Analysis of Cross-Document Linking Mechanisms
An Analysis of Cross-Document Linking Mechanisms
 
Crossing Spaces: Towards Cross-Media Personal Information Management User Int...
Crossing Spaces: Towards Cross-Media Personal Information Management User Int...Crossing Spaces: Towards Cross-Media Personal Information Management User Int...
Crossing Spaces: Towards Cross-Media Personal Information Management User Int...
 
Designing Prosthetic Memory: Audio or Transcript, That is the Question
Designing Prosthetic Memory: Audio or Transcript, That is the QuestionDesigning Prosthetic Memory: Audio or Transcript, That is the Question
Designing Prosthetic Memory: Audio or Transcript, That is the Question
 
Introduction - Lecture 1 - Advanced Topics in Information Systems (4016792ENR)
Introduction - Lecture 1 - Advanced Topics in Information Systems (4016792ENR)Introduction - Lecture 1 - Advanced Topics in Information Systems (4016792ENR)
Introduction - Lecture 1 - Advanced Topics in Information Systems (4016792ENR)
 
Bespoke Map Customization Behavior and Its Implications for the Design of Mul...
Bespoke Map Customization Behavior and Its Implications for the Design of Mul...Bespoke Map Customization Behavior and Its Implications for the Design of Mul...
Bespoke Map Customization Behavior and Its Implications for the Design of Mul...
 

Dernier

Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessPixlogix Infotech
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?Antenna Manufacturer Coco
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 

Dernier (20)

Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 

A Personal Assistant for Web Database Caching

  • 1. A Personal Assistant for Web Database Caching Beat Signer, signer@inf.ethz.ch Institute for Information Systems ETH Zurich
  • 2. Overview • Motivation • Internet OMS architecture • Personal Assistant • Cache architecture • Performance measurements • Conclusion
  • 3. Motivation • Lack of most browsers to cache dynamically generated web pages • Cooperative client, middle layer and server caches to improve performance • Reduction of query response times by better usage of the available resources
  • 4. Internet OMS Architecture Web Browser Front-End Agent Session Cache Personal Assistant Active Cache Internet    HTTP Server Database Agent Global Cache OMS Database
  • 5. Cache Requirements • Reduction of response times (latency) • Reduction of idle times (e.g. modem connection) • Cache consistency • Persistence • Flexibility (different user skills) • Active caching component (local prefetching) • Small overhead to maintain cache • Optimal usage of available cache resource
  • 6. Personal Assistant Cache Structure Personal Assistant Cache Persistent Client Cache Session Cache Short-Term Cache query results images  passive  priority 3 disjoint Personal Cache Explicit User Specified Objects query results images  permanent  passive  priority 1 Prefetching Cache Long-Term Cache query results images  user profile  active  priority 2
  • 7. Prefetching Cache Statistics LRUB-Cache (fixed size) query 1 query 2 query n statistic statistic statistic next query 1 next query 1 next query 1 next query 2 next query 2 next query 2 next query 3 next query 3 next query 3 LRUB-Cache (fixed size) .... .... .... next query n next query n next query n
  • 8. Cache Replacement Strategy • Least recently used (LRU) • Introduce bonus for entries often used in the past but not accessed recently  LRUB • Weight for cache entry i defined as follows:   (1   ) H i weight i  , 0  1 Ti H i : Number of hits for cache entry i Ti : Time since last access of cache entry i
  • 9. Advantages of Adaptive Prefetching • Assumption: global cache of size 4 for most frequently used queries  which of the q5 6 “hot queries” should be q2 cached? q6 q1 q3 q7 • Adaptive prefetching  sliding window mechanism, q4 q8 i.e. cache of size 2 is q9 sufficient!
  • 11. Average Response Times Average Time Worst Case Average Time Best Case 5000 5000 4500 4500 4000 4000 3500 3500 time[ms] 3000 time[ms] 3000 2500 2500 2000 2000 1500 1500 1000 1000 500 500 0 0 Total Time Query Time Image Time Total Time Query Time Image Time Without Personal Assistant With Personal Assistant Without Personal Assistant With Personal Assistant
  • 12. Image Response Times Average Image Time Worst Case Average Image Time Best Case 5000 5000 4500 4500 4000 4000 3500 3500 time[ms] time[ms] 3000 3000 2500 2500 2000 2000 1500 1500 1000 1000 500 500 0 0 Without Personal Assistant With Personal Assistant Without Personal Assistant With Personal Assistant User 1 User 2 User 3 User 4 User 1 User 2 User 3 User 4
  • 13. Cache Hit Rates • Increased hit rate even in worst case scenario (due to larger caches) • Front-end agent profits from locality of queries in best case scenario Worst Case Best Case queries images queries images Front-End Agent 13% 4% 33% 29% Personal Assistant 29% 28% 75% 68%
  • 14. Conclusion • Advantages  increased cache hit rate  reduced response times  adaptation to individual users  easy to use (transparent)  prefetching statistic always up to date • Costs  database agent eventually has to handle an increased number of queries (prefetching)  increased server loads  overhead to maintain cache consistency
  • 15. Future Work • Use similiar prefetching techniques to build an HTTP caching proxy • First prototype running at gordon.inf.ethz.ch:9090