SlideShare uma empresa Scribd logo
1 de 24
Baixar para ler offline
MySQL Scaling with Memcached

Presented by: Bill Takacs
              Director, Product Management


July 9th 2009
Agenda

  • M SQL overview
    MySQL      i


  • Memcached overview


  • What’s Memcached good for – and
    how does it help me scale MySQL?


  • Example architectures


  • Customer examples


2 : Copyright 2009 Gear6 Inc.
About MySQL

     • 12 years old

     • 400+ employees
        00 e p oyees

     • 750 partners
           p

     • 60K downloads/day

     • Customers across every major operating system,
       hardware vendor, geography, industry, and application
       h d         d           h i d t         d    li ti
       type


3 : Copyright 2009 Gear6 Inc.
Cache is King

                     Browser cache

                     Web
                     W b server cache
                                   h

                     Memcached cache

                     MySQL database cache – query cache

                     Disk




4 : Copyright 2009 Gear6 Inc.
Memcached

         “A high performance, distributed memory object caching
              g p            ,                    y    j         g
              system, generic in nature, but intended for use in
            speeding up dynamic web applications by alleviating
                               database load”
                                                 Ref: http://www.danga.com/memcached/

     • Big hash table

     • Created by Danga Interactive for Live Journal

     • Significantly reduced database load

     • Perfect for web sites with high database load

     • In use by Facebook, Twitter, MyYearBook, others

5 : Copyright 2009 Gear6 Inc.
More on Memcached

     • Takes advantage of available DRAM

     • Open source
       Ope sou ce

     • Distributed under BSD license

     • Server - Current version is 1.2.8
           » http://www.danga.com/memcached/download.bml

     • M
       Many Clients
            Cli t
           » http://code.google.com/p/memcached/wiki/Clients


6 : Copyright 2009 Gear6 Inc.
Why Memcached with MySQL?

     • Scale-out of dynamic web sites
                     y

     • Page loads

     • Efficient resource utilization

     • Support for dozens
       to hundreds of nodes

     • Open source




7 : Copyright 2009 Gear6 Inc.
How Does Memcached Work?

                                • Client - Server

                                • H h Function
                                  Hash F  ti

                                • Memcached
                                  » Two stage
                                  » Key / value p
                                      y         pair




8 : Copyright 2009 Gear6 Inc.
Memcached Server

     • Slab allocator

     • Libevent based

     • Simple Protocol (no xml)

     • Server has internal hash table

     • Servers are dumb – they don’t know about each other




9 : Copyright 2009 Gear6 Inc.
Memcached Server

     • Limits
           » Key size = (250 bytes)
           » 1MB Limit
           » 32bit/64bit (maximum size of process)


     • LRU
           » Least recently accessed items are cycled out
           » One LRU exists per “slab class”
                                 slab class
           » LRU “evictions” need not be common


     • Threads? Yes



10 : Copyright 2009 Gear6 Inc.
Memcached Clients

     • Client hashes key to server list

     • Serializes t e object
       Se a es the

     • Many client libraries
          y

     • Authentication




11 : Copyright 2009 Gear6 Inc.
What about…..

     • Redundancy

     • Failover




12 : Copyright 2009 Gear6 Inc.
Consistent Hashing
     • Why?

     • How does it work?
           » Libk t
             Libketama
           » http://www.last.fm/user/RJ/journal/2007/04/10/rz_libketama_-
             _a_consistent_hashing_algo_for_memcache_clients



     • Reference:
     http://www.lexemetech.com/2007/11/consistent-hashing.html
        p                                                g
     http://www8.org/w8-papers/2a-
        webserver/caching/paper2.htmlhttp://www.last.fm/user/RJ/jo
        urnal/2007/04/10/rz_libketama_-
        _a_consistent_hashing_algo_for_memcache_clients
         a consistent hashing algo for memcache clients




13 : Copyright 2009 Gear6 Inc.
Commands

     • Storage commands:
           » Set / Add / Replace /
             Append / Prepend / CAS


     • Retrieval commands:
           » Get / Gets


     • Delete / increment /
       decrement

     • Stats


14 : Copyright 2009 Gear6 Inc.
Memcached UDFs for MySQL

     • Suite of functions that work
       with Memcached and MySQL

     • Leverage power of SQL Engine

     • Combine tasks

     • O
       Open source




15 : Copyright 2009 Gear6 Inc.
Putting it all together

                         Client 1
                         Client-1     Client 2
                                      Client-2            Client 3
                                                          Client-3




                                                      C
                           Server X    Server Y           Server Z

                                      Key = value
                                        y
                                      Foo = seattle
16 : Copyright 2009 Gear6 Inc.
Some Architectures
Memcached and Single MySQL
                      Read          Write


                                                Web Servers


                                                Application Servers


                                                Memcached Clients



                                                Memcached Servers

                                 Cache Update
                                                 MySQL


18 : Copyright 2009 Gear6 Inc.
MySQL Replication Scale-Out

Web / Application Servers              MySQL
            +                            +
  Memached Clients               Memcached Servers

                                        Writes



                                                      MySQL
                                                     Replication
                                        Reads


                                        Reads




19 : Copyright 2009 Gear6 Inc.
Memcached and MySQL Replication
  Read from cache                Write   Read from slave
                                                            Application Severs
                                                                     +
                                                            Memcached Clients



                                                           Memcached Servers



      Cache Update
                                                              MySQL Master


                                                              MySQL Slaves




20 : Copyright 2009 Gear6 Inc.
Memcached and MySQL Replication
  Read from cache                          Write   Read from slave
                                                                       Application Severs
                                                                                +
                                                                       Memcached Clients


          Shard1 Cust_id 0-999                       Shard1 Cust_id 1000 -1999




 Cache Update                                       Cache Update

                                  MySQL                               MySQL
                                 Replication                         Replication



21 : Copyright 2009 Gear6 Inc.
About Gear6
  • First and leading provider
    of Memcached solutions

  • Memcached solution including

          • High density

          • High Availability

          • Advanced memory
            management

          • Enhanced reporting
            capabilities
                biliti

          • Support for multi-tenancy

          • Disruption free
            software upgrades

          • 100% c e t co pat b e
             00% client compatible


22 : Copyright 2009 Gear6 Inc.
Credits and References
     • Designing and Implementing Scalable Applications with Memcached and MySQL, Monty
        Taylor
     http://www.mysql.com/why-mysql/white-papers/mysql_wp_memcached.php

     • Memcached Study, Brian Acker
     http://download.tangent.org/talks/Memcached%20Study.pdf
     htt //d    l dt       t    /t lk /M     h d%20St d df

     • A Bunch of Great Strategies for Using Memcached and MySQL Better Together, Todd Hoff
     http://highscalability.com/bunch great strategies using memcached and mysql better together
     http://highscalability.com/bunch-great-strategies-using-memcached-and-mysql-better-together

     • Memcached Functions for MySQL: Seamless Caching for MySQL, Patrick Galbraith
     http://www.scribd.com/doc/15014678/memcached-Functions-for-MySQL-Seemless-Caching-in-
        MySQL

     • Memcached Protocol
     http://code.sixapart.com/svn/memcached/trunk/server/doc/protocol.txt
     http://code sixapart com/svn/memcached/trunk/server/doc/protocol txt




23 : Copyright 2009 Gear6 Inc.
Thank You!




                    For more information
                             information:

             www.gear6.com
             www gear6 com




24 : Copyright 2009 Gear6 Inc.

Mais conteúdo relacionado

Mais procurados

Memcached, presented to LCA2010
Memcached, presented to LCA2010Memcached, presented to LCA2010
Memcached, presented to LCA2010
Mark Atwood
 
Maria db the new mysql (Colin Charles)
Maria db the new mysql (Colin Charles)Maria db the new mysql (Colin Charles)
Maria db the new mysql (Colin Charles)
Ontico
 
Webseminar: MariaDB Enterprise und MariaDB Enterprise Cluster
Webseminar: MariaDB Enterprise und MariaDB Enterprise ClusterWebseminar: MariaDB Enterprise und MariaDB Enterprise Cluster
Webseminar: MariaDB Enterprise und MariaDB Enterprise Cluster
MariaDB Corporation
 

Mais procurados (20)

Maria db vs mysql
Maria db vs mysqlMaria db vs mysql
Maria db vs mysql
 
Memcached, presented to LCA2010
Memcached, presented to LCA2010Memcached, presented to LCA2010
Memcached, presented to LCA2010
 
The New MariaDB Offering: MariaDB 10, MaxScale and More
The New MariaDB Offering: MariaDB 10, MaxScale and MoreThe New MariaDB Offering: MariaDB 10, MaxScale and More
The New MariaDB Offering: MariaDB 10, MaxScale and More
 
MariaDB 10.0 - SkySQL Paris Meetup
MariaDB 10.0 - SkySQL Paris MeetupMariaDB 10.0 - SkySQL Paris Meetup
MariaDB 10.0 - SkySQL Paris Meetup
 
MariaDB 10: The Complete Tutorial
MariaDB 10: The Complete TutorialMariaDB 10: The Complete Tutorial
MariaDB 10: The Complete Tutorial
 
Choosing a MySQL High Availability solution - Percona Live UK 2011
Choosing a MySQL High Availability solution - Percona Live UK 2011Choosing a MySQL High Availability solution - Percona Live UK 2011
Choosing a MySQL High Availability solution - Percona Live UK 2011
 
Maria db the new mysql (Colin Charles)
Maria db the new mysql (Colin Charles)Maria db the new mysql (Colin Charles)
Maria db the new mysql (Colin Charles)
 
MySQL features missing in MariaDB Server
MySQL features missing in MariaDB ServerMySQL features missing in MariaDB Server
MySQL features missing in MariaDB Server
 
What is MariaDB Server 10.3?
What is MariaDB Server 10.3?What is MariaDB Server 10.3?
What is MariaDB Server 10.3?
 
Webseminar: MariaDB Enterprise und MariaDB Enterprise Cluster
Webseminar: MariaDB Enterprise und MariaDB Enterprise ClusterWebseminar: MariaDB Enterprise und MariaDB Enterprise Cluster
Webseminar: MariaDB Enterprise und MariaDB Enterprise Cluster
 
MaxScale for Effective MySQL Meetup NYC - 14.01.21
MaxScale for Effective MySQL Meetup NYC - 14.01.21MaxScale for Effective MySQL Meetup NYC - 14.01.21
MaxScale for Effective MySQL Meetup NYC - 14.01.21
 
High Performance Drupal Sites
High Performance Drupal SitesHigh Performance Drupal Sites
High Performance Drupal Sites
 
The MySQL ecosystem - understanding it, not running away from it!
The MySQL ecosystem - understanding it, not running away from it! The MySQL ecosystem - understanding it, not running away from it!
The MySQL ecosystem - understanding it, not running away from it!
 
Meet MariaDB 10.1 at the Bulgaria Web Summit
Meet MariaDB 10.1 at the Bulgaria Web SummitMeet MariaDB 10.1 at the Bulgaria Web Summit
Meet MariaDB 10.1 at the Bulgaria Web Summit
 
Memcached Code Camp 2009
Memcached Code Camp 2009Memcached Code Camp 2009
Memcached Code Camp 2009
 
Moxi - Memcached Proxy
Moxi - Memcached ProxyMoxi - Memcached Proxy
Moxi - Memcached Proxy
 
MariaDB und mehr - MariaDB Roadshow Summer 2014 Hamburg Berlin Frankfurt
MariaDB und mehr - MariaDB Roadshow Summer 2014 Hamburg Berlin FrankfurtMariaDB und mehr - MariaDB Roadshow Summer 2014 Hamburg Berlin Frankfurt
MariaDB und mehr - MariaDB Roadshow Summer 2014 Hamburg Berlin Frankfurt
 
MariaDB 10.1 what's new and what's coming in 10.2 - Tokyo MariaDB Meetup
MariaDB 10.1   what's new and what's coming in 10.2 - Tokyo MariaDB MeetupMariaDB 10.1   what's new and what's coming in 10.2 - Tokyo MariaDB Meetup
MariaDB 10.1 what's new and what's coming in 10.2 - Tokyo MariaDB Meetup
 
My first moments with MongoDB
My first moments with MongoDBMy first moments with MongoDB
My first moments with MongoDB
 
Best practices for MySQL High Availability Tutorial
Best practices for MySQL High Availability TutorialBest practices for MySQL High Availability Tutorial
Best practices for MySQL High Availability Tutorial
 

Semelhante a Gear6 Webinar - MySQL Scaling with Memcached

Membase Meetup Chicago - january 2011
Membase Meetup Chicago - january 2011Membase Meetup Chicago - january 2011
Membase Meetup Chicago - january 2011
Membase
 
My sql roadmap 2008 2009
My sql roadmap 2008 2009My sql roadmap 2008 2009
My sql roadmap 2008 2009
xKinAnx
 
UKOUG 2011: MySQL Architectures for Oracle DBA's
UKOUG 2011: MySQL Architectures for Oracle DBA'sUKOUG 2011: MySQL Architectures for Oracle DBA's
UKOUG 2011: MySQL Architectures for Oracle DBA's
FromDual GmbH
 
Mysql wp memcached
Mysql wp memcachedMysql wp memcached
Mysql wp memcached
kbour23
 
Membase Meetup - Silicon Valley
Membase Meetup - Silicon ValleyMembase Meetup - Silicon Valley
Membase Meetup - Silicon Valley
Membase
 

Semelhante a Gear6 Webinar - MySQL Scaling with Memcached (20)

Implementing High Availability Caching with Memcached
Implementing High Availability Caching with MemcachedImplementing High Availability Caching with Memcached
Implementing High Availability Caching with Memcached
 
Gear6 and Scaling Website Performance: Caching Session and Profile Data with...
Gear6 and Scaling Website Performance:  Caching Session and Profile Data with...Gear6 and Scaling Website Performance:  Caching Session and Profile Data with...
Gear6 and Scaling Website Performance: Caching Session and Profile Data with...
 
Introduction to First Commercial Memcached Service for Cloud
Introduction to First Commercial Memcached Service for CloudIntroduction to First Commercial Memcached Service for Cloud
Introduction to First Commercial Memcached Service for Cloud
 
MySQL高可用
MySQL高可用MySQL高可用
MySQL高可用
 
Membase Meetup Chicago - january 2011
Membase Meetup Chicago - january 2011Membase Meetup Chicago - january 2011
Membase Meetup Chicago - january 2011
 
MySQL Cluster NoSQL Memcached API
MySQL Cluster NoSQL Memcached APIMySQL Cluster NoSQL Memcached API
MySQL Cluster NoSQL Memcached API
 
5 scalability Cloudstack Developer Day
5  scalability Cloudstack Developer Day5  scalability Cloudstack Developer Day
5 scalability Cloudstack Developer Day
 
MySQL State of the Dolphin - Rich Mason
MySQL State of the Dolphin - Rich MasonMySQL State of the Dolphin - Rich Mason
MySQL State of the Dolphin - Rich Mason
 
My sql roadmap 2008 2009
My sql roadmap 2008 2009My sql roadmap 2008 2009
My sql roadmap 2008 2009
 
Running your Java EE 6 applications in the Cloud @ Silicon Valley Code Camp 2010
Running your Java EE 6 applications in the Cloud @ Silicon Valley Code Camp 2010Running your Java EE 6 applications in the Cloud @ Silicon Valley Code Camp 2010
Running your Java EE 6 applications in the Cloud @ Silicon Valley Code Camp 2010
 
Mysql ecosystem in 2019
Mysql ecosystem in 2019Mysql ecosystem in 2019
Mysql ecosystem in 2019
 
UKOUG 2011: MySQL Architectures for Oracle DBA's
UKOUG 2011: MySQL Architectures for Oracle DBA'sUKOUG 2011: MySQL Architectures for Oracle DBA's
UKOUG 2011: MySQL Architectures for Oracle DBA's
 
The New MariaDB Offering - MariaDB 10, MaxScale and more
The New MariaDB Offering - MariaDB 10, MaxScale and moreThe New MariaDB Offering - MariaDB 10, MaxScale and more
The New MariaDB Offering - MariaDB 10, MaxScale and more
 
Couchdb + Membase = Couchbase
Couchdb + Membase = CouchbaseCouchdb + Membase = Couchbase
Couchdb + Membase = Couchbase
 
Gear6 Web Cache Overview
Gear6 Web Cache OverviewGear6 Web Cache Overview
Gear6 Web Cache Overview
 
MySQL InnoDB Cluster: High Availability Made Easy!
MySQL InnoDB Cluster: High Availability Made Easy!MySQL InnoDB Cluster: High Availability Made Easy!
MySQL InnoDB Cluster: High Availability Made Easy!
 
Living with SQL and NoSQL at craigslist, a Pragmatic Approach
Living with SQL and NoSQL at craigslist, a Pragmatic ApproachLiving with SQL and NoSQL at craigslist, a Pragmatic Approach
Living with SQL and NoSQL at craigslist, a Pragmatic Approach
 
MySQL Aquarium Paris
MySQL Aquarium ParisMySQL Aquarium Paris
MySQL Aquarium Paris
 
Mysql wp memcached
Mysql wp memcachedMysql wp memcached
Mysql wp memcached
 
Membase Meetup - Silicon Valley
Membase Meetup - Silicon ValleyMembase Meetup - Silicon Valley
Membase Meetup - Silicon Valley
 

Último

IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
Enterprise Knowledge
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 

Último (20)

The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
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
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
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...
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
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
 
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
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
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?
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
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
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
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...
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
[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
 
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
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 

Gear6 Webinar - MySQL Scaling with Memcached

  • 1. MySQL Scaling with Memcached Presented by: Bill Takacs Director, Product Management July 9th 2009
  • 2. Agenda • M SQL overview MySQL i • Memcached overview • What’s Memcached good for – and how does it help me scale MySQL? • Example architectures • Customer examples 2 : Copyright 2009 Gear6 Inc.
  • 3. About MySQL • 12 years old • 400+ employees 00 e p oyees • 750 partners p • 60K downloads/day • Customers across every major operating system, hardware vendor, geography, industry, and application h d d h i d t d li ti type 3 : Copyright 2009 Gear6 Inc.
  • 4. Cache is King Browser cache Web W b server cache h Memcached cache MySQL database cache – query cache Disk 4 : Copyright 2009 Gear6 Inc.
  • 5. Memcached “A high performance, distributed memory object caching g p , y j g system, generic in nature, but intended for use in speeding up dynamic web applications by alleviating database load” Ref: http://www.danga.com/memcached/ • Big hash table • Created by Danga Interactive for Live Journal • Significantly reduced database load • Perfect for web sites with high database load • In use by Facebook, Twitter, MyYearBook, others 5 : Copyright 2009 Gear6 Inc.
  • 6. More on Memcached • Takes advantage of available DRAM • Open source Ope sou ce • Distributed under BSD license • Server - Current version is 1.2.8 » http://www.danga.com/memcached/download.bml • M Many Clients Cli t » http://code.google.com/p/memcached/wiki/Clients 6 : Copyright 2009 Gear6 Inc.
  • 7. Why Memcached with MySQL? • Scale-out of dynamic web sites y • Page loads • Efficient resource utilization • Support for dozens to hundreds of nodes • Open source 7 : Copyright 2009 Gear6 Inc.
  • 8. How Does Memcached Work? • Client - Server • H h Function Hash F ti • Memcached » Two stage » Key / value p y pair 8 : Copyright 2009 Gear6 Inc.
  • 9. Memcached Server • Slab allocator • Libevent based • Simple Protocol (no xml) • Server has internal hash table • Servers are dumb – they don’t know about each other 9 : Copyright 2009 Gear6 Inc.
  • 10. Memcached Server • Limits » Key size = (250 bytes) » 1MB Limit » 32bit/64bit (maximum size of process) • LRU » Least recently accessed items are cycled out » One LRU exists per “slab class” slab class » LRU “evictions” need not be common • Threads? Yes 10 : Copyright 2009 Gear6 Inc.
  • 11. Memcached Clients • Client hashes key to server list • Serializes t e object Se a es the • Many client libraries y • Authentication 11 : Copyright 2009 Gear6 Inc.
  • 12. What about….. • Redundancy • Failover 12 : Copyright 2009 Gear6 Inc.
  • 13. Consistent Hashing • Why? • How does it work? » Libk t Libketama » http://www.last.fm/user/RJ/journal/2007/04/10/rz_libketama_- _a_consistent_hashing_algo_for_memcache_clients • Reference: http://www.lexemetech.com/2007/11/consistent-hashing.html p g http://www8.org/w8-papers/2a- webserver/caching/paper2.htmlhttp://www.last.fm/user/RJ/jo urnal/2007/04/10/rz_libketama_- _a_consistent_hashing_algo_for_memcache_clients a consistent hashing algo for memcache clients 13 : Copyright 2009 Gear6 Inc.
  • 14. Commands • Storage commands: » Set / Add / Replace / Append / Prepend / CAS • Retrieval commands: » Get / Gets • Delete / increment / decrement • Stats 14 : Copyright 2009 Gear6 Inc.
  • 15. Memcached UDFs for MySQL • Suite of functions that work with Memcached and MySQL • Leverage power of SQL Engine • Combine tasks • O Open source 15 : Copyright 2009 Gear6 Inc.
  • 16. Putting it all together Client 1 Client-1 Client 2 Client-2 Client 3 Client-3 C Server X Server Y Server Z Key = value y Foo = seattle 16 : Copyright 2009 Gear6 Inc.
  • 18. Memcached and Single MySQL Read Write Web Servers Application Servers Memcached Clients Memcached Servers Cache Update MySQL 18 : Copyright 2009 Gear6 Inc.
  • 19. MySQL Replication Scale-Out Web / Application Servers MySQL + + Memached Clients Memcached Servers Writes MySQL Replication Reads Reads 19 : Copyright 2009 Gear6 Inc.
  • 20. Memcached and MySQL Replication Read from cache Write Read from slave Application Severs + Memcached Clients Memcached Servers Cache Update MySQL Master MySQL Slaves 20 : Copyright 2009 Gear6 Inc.
  • 21. Memcached and MySQL Replication Read from cache Write Read from slave Application Severs + Memcached Clients Shard1 Cust_id 0-999 Shard1 Cust_id 1000 -1999 Cache Update Cache Update MySQL MySQL Replication Replication 21 : Copyright 2009 Gear6 Inc.
  • 22. About Gear6 • First and leading provider of Memcached solutions • Memcached solution including • High density • High Availability • Advanced memory management • Enhanced reporting capabilities biliti • Support for multi-tenancy • Disruption free software upgrades • 100% c e t co pat b e 00% client compatible 22 : Copyright 2009 Gear6 Inc.
  • 23. Credits and References • Designing and Implementing Scalable Applications with Memcached and MySQL, Monty Taylor http://www.mysql.com/why-mysql/white-papers/mysql_wp_memcached.php • Memcached Study, Brian Acker http://download.tangent.org/talks/Memcached%20Study.pdf htt //d l dt t /t lk /M h d%20St d df • A Bunch of Great Strategies for Using Memcached and MySQL Better Together, Todd Hoff http://highscalability.com/bunch great strategies using memcached and mysql better together http://highscalability.com/bunch-great-strategies-using-memcached-and-mysql-better-together • Memcached Functions for MySQL: Seamless Caching for MySQL, Patrick Galbraith http://www.scribd.com/doc/15014678/memcached-Functions-for-MySQL-Seemless-Caching-in- MySQL • Memcached Protocol http://code.sixapart.com/svn/memcached/trunk/server/doc/protocol.txt http://code sixapart com/svn/memcached/trunk/server/doc/protocol txt 23 : Copyright 2009 Gear6 Inc.
  • 24. Thank You! For more information information: www.gear6.com www gear6 com 24 : Copyright 2009 Gear6 Inc.